# 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.

# Don't run any test-like files that show up in packages directories. It
# shouldn't be necessary to run "pub install" in these packages, but if you do
# it shouldn't break the tests.
*/packages/*/*: Skip
*/*/packages/*/*: Skip
*/*/*/packages/*/*: Skip

# Skip non-test files ending with "_test".
scheduled_test/lib/*: Skip

scheduled_test/test/scheduled_server_test: Pass, Fail, Slow, Crash # Issue 9231, 9582
scheduled_test/test/scheduled_process_test: Pass, Slow # Issue 9231

# Skip test not runnable via test.dart
third_party/html5lib/test/dom_compat_test: Skip

[ $compiler == dart2js && $runtime == d8 ]
unmodifiable_collection/test/unmodifiable_collection_test: Pass, Fail # Issue 12429
csslib/test/declaration_test: Pass, Crash # V8 issue 2846

[ $compiler == dart2js ]
analyzer_experimental/test/generated/ast_test: Fail #Issue 12341

[ $compiler == dart2js && $checked && $runtime == ie9 ]
crypto/test/base64_test: Timeout # Issue 12486

[ $compiler == dart2js && ($runtime == d8 || $runtime == drt) ]
crypto/test/hmac_sha256_test: Pass, Fail # v8 bug: Issue 12293
crypto/test/sha1_test: Pass, Fail # v8 bug: Issue 12293
crypto/test/sha256_test: Pass, Fail # v8 bug: Issue 12293
path/test/relative_test: Pass, Fail # v8 bug: Issue 12293

[ $runtime == d8 || $runtime == jsshell ]
unittest/test/unittest_nested_groups_setup_teardown_test: Pass, Fail # http://dartbug.com/10109
stack_trace/test/vm_test: Fail, OK # VM-specific traces
sequence_zip/test/stream_test: Fail, OK # Timers are not supported.

[$compiler == dart2dart]
*: Skip

[ $compiler == dart2js || $compiler == dart2dart ]
source_maps/test/vlq_test: Fail # A VLQ test checks for large numbers that
                                # overflow in JS (numbers slightly larger than
                                # 32 bits where we do bitwise operations).

[ $runtime == opera && $compiler == dart2js ]
intl/test/find_default_locale_browser_test: Fail
intl/test/date_time_format_http_request_test: Skip # Timeout.

[ $runtime == ie9 ]
intl/test/date_time_format_http_request_test: Fail # Issue 8983
mime/test/mime_multipart_transformer_test: Skip # No typed_data on IE9.

[ $runtime == safari ]
fixnum/test/int_64_test: Pass, Fail # Bug in JSC.
crypto/test/hmac_sha1_test: Fail # Issue 11407.
crypto/test/sha1_test: Fail # Issue 11407.
stack_trace/test/trace_test: Fail # http://dartbug.com/12380
crypto/test/sha256_test: Pass, Fail # Issue 12502

# Skip browser-specific tests on VM
[ $runtime == vm ]
path/test/browser_test: Fail, OK # Uses dart:html
intl/test/find_default_locale_browser_test: Skip
intl/test/date_time_format_http_request_test: Skip

[ $runtime == vm && $system == windows ]
docgen/test/single_library_test: Fail # Issue 11985
intl/test/find_default_locale_standalone_test: Fail # Issue 8110
intl/test/message_extraction/message_extraction_test: Fail # Issue 9167

[ $compiler == dart2js ]
stack_trace/test/trace_test: Pass, Timeout # Issue 11645

[ $compiler == dartanalyzer || $compiler == dart2analyzer]
# These tests are runtime negative but statically positive, so we skip
# them in the analyzer.
unittest/test/mock_regexp_negative_test: Skip
unittest/test/mock_stepwise_negative_test: Skip

[ $compiler == dart2js && $csp ]
unittest/test/mirror_matchers_test: Skip # Issue 12151
observe/test/observe_test: Fail # Issue 11970
observe/test/path_observer_test: Fail  # Issue 11970
mdv/test/binding_syntax_test: Fail # Issue 11970
serialization/test/serialization_test: Fail # Issue 6490
serialization/test/no_library_test: Fail # Issue 6490

# This test cannot run under CSP because it is injecting a JavaScript polyfill
mutation_observer: Skip

[ $compiler == dart2js && $minified ]
# The unminified unittest tests test that the real names of Dart types are
# printed. Minified versions of these tests exist that test the behavior when
# minified.
unittest/test/*_unminified_test: Skip # DO NOT COPY THIS UNLESS YOU WORK ON DART2JS
csslib: Pass, Crash # crashing randomly, see issue 12468

[ $compiler == dart2js && $browser ]
stack_trace/test/vm_test: Fail, OK # VM-specific traces
crypto/test/sha256_test: Slow, Pass
crypto/test/sha1_test: Slow, Pass

[ $compiler == dart2js ]
csslib/test/var_test: Fail # looking for VM-specific stack traces, issue 12469

[ $compiler == dart2js && $runtime == drt ]
third_party/html5lib/test/parser_feature_test: Fail # issue 12466
csslib: Pass, Fail # issue 12466

[ $browser ]
analyzer_experimental/test/error_test: Fail, OK # Uses dart:io.
analyzer_experimental/test/generated/element_test: Fail, OK # Uses dart:io.
analyzer_experimental/test/generated/resolver_test: Fail, OK # Uses dart:io.
analyzer_experimental/test/options_test: Fail, OK # Uses dart:io.
analyzer_experimental/test/services/formatter_test: Fail, OK # Uses dart:io.
barback/test/*: Fail, OK # Uses dart:io.
http/test/client_test: Fail, OK # Uses dart:io.
http/test/http_test: Fail, OK # Uses dart:io.
http/test/mock_client_test: Fail, OK # Uses dart:io.
http/test/multipart_test: Fail, OK # Uses dart:io.
http/test/request_test: Fail, OK # Uses dart:io.
http/test/response_test: Fail, OK # Uses dart:io.
http/test/streamed_request_test: Fail, OK # Uses dart:io.
http_server/test/*: Fail, OK # Uses dart:io.
intl/test/date_time_format_file_even_test: Fail, OK # Uses dart:io.
intl/test/date_time_format_file_odd_test: Fail, OK # Uses dart:io.
intl/test/find_default_locale_standalone_test: Fail, OK # Uses dart:io.
intl/test/message_extraction/message_extraction_test: Fail, OK # Uses dart:io.
intl/test/message_extraction/failed_extraction_test: Fail, OK # Users dart:io
oauth2/test/authorization_code_grant_test: Fail, OK # Uses dart:io.
oauth2/test/client_test: Fail, OK # Uses dart:io.
oauth2/test/credentials_test: Fail, OK # Uses dart:io.
oauth2/test/handle_access_token_response_test: Fail, OK # Uses dart:io.
observe/test/transform_test: Fail, OK # Uses dart:io.
path/test/io_test: Fail, OK # Uses dart:io.
watcher/test/*: Fail, OK # Uses dart:io.

scheduled_test/test/descriptor/async_test: Fail # http://dartbug.com/8440
scheduled_test/test/descriptor/directory_test: Fail # http://dartbug.com/8440
scheduled_test/test/descriptor/file_test: Fail # http://dartbug.com/8440
scheduled_test/test/descriptor/nothing_test: Fail # http://dartbug.com/8440
scheduled_test/test/descriptor/pattern_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_future_matchers_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_process_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/abort_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/current_schedule_current_task_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/current_schedule_errors_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/current_schedule_state_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/nested_task_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/on_complete_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/on_exception_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/out_of_band_task_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/set_up_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/signal_error_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/simple_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/task_return_value_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/timeout_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/wrap_async_test: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_test/wrap_future_test: Fail # http://dartbug.com/8440

*/test/analyzer_test: Skip  # No need to run analysis tests on browser bots

# Skip tests on the browser if the test depends on dart:io
third_party/html5lib/test/parser_test: Skip
third_party/html5lib/test/tokenizer_test: Skip

[ $runtime == safari]
 # Bug in JSC: the test only passes when being debugged.
crypto/test/hmac_md5_test: Fail, Pass

[ $minified == false ]
# The minified unittest tests test that the minified names of Dart types are
# printed. Unminified versions of these tests exist that test the behavior when
# not minified.
unittest/test/*_minified_test: Skip # DO NOT COPY THIS UNLESS YOU WORK ON DART2JS

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

[ $arch == arm ]
*: Skip

[ $arch == simarm ]
*: Skip

[ $arch == mips ]
*: Skip

[ $arch == simmips ]
*: Skip

# Skip serialization test that explicitly has no library declaration in the
# test on Dartium, which requires all tests to have a library.
[ $runtime == dartium || $runtime == drt ]
serialization/test/no_library_test: Skip # Expected Failure

# Skip tests on the VM if the package depends on dart:html
[ $runtime == vm ]
custom_element: Skip
mdv: Skip
mutation_observer: Skip
polymer_expressions/test/syntax_test: Skip
third_party/html5lib/test/browser/browser_test: Skip

[ $runtime == safari || $runtime == chrome || $runtime == ie9 || $runtime == ff || $runtime == dartium || $runtime == drt ]
docgen/test/single_library_test: Skip # Uses dart:io
