# Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

# Run this test manually to verify that the fixnum library produces
# the same results as native ints on a set of directed and random inputs.
# Skip it when runnimng automated tests because it times out.  This
# test only makes sense on runtimes that support 64-bit integer
# arithmetic natively, i.e., the VM.
fixnum/test/int_64_vm_test: Skip

[$compiler == dart2dart]
*: Skip

[ $runtime == opera ]
*: Skip

# Skip tests that use local file access if we're running in any browser
[ $runtime == opera || $runtime == ff || $runtime == ie || $runtime == dartium || $runtime == chrome || $runtime == safari || $runtime == drt ]
intl/test/date_time_format_file_even_test: Skip
intl/test/date_time_format_file_odd_test: Skip
intl/test/find_default_locale_standalone_test: Skip

# Skip browser-specific Intl tests on VM
[ $runtime == vm ]
intl/test/find_default_locale_browser_test: Skip
intl/test/date_time_format_http_request_test: Skip

# Skip http request tests on Dartium while resolving an odd
# error there that causes the tests to timeout.
[ $runtime == dartium || $runtime == drt ]
intl/test/date_time_format_http_request_test: Skip

[ $compiler == dart2js && $runtime == ff ]
intl/test/date_time_format_http_request_test: Skip # Issue 5649

# Skip intl_message tests that use mirrors on dart2js until it's been
# implemented there.
[ $compiler == dart2js ]
intl/test/intl_message_test: Skip
intl/test/intl_message_basic_example_test: Skip

[ $compiler == dartc ]
unittest/test/mock_regexp_negative_test: Fail
unittest/test/mock_stepwise_negative_test: Fail

[ $compiler == dart2js || $compiler == dartc ]
unittest/test/instance_test: Skip

[ $compiler == none && $runtime == drt ]
dartdoc/test/dartdoc_test: Skip # See dartbug.com/4541.

