# 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
*/*/*/*/packages/*/*: Skip

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

scheduled_test/test/scheduled_server_test: Pass, Fail # 13524
scheduled_test/test/scheduled_process_test: Pass, Slow # Issue 9231
scheduled_test/test/scheduled_stream/stream_matcher_test: Pass, Slow
polymer/test/build/script_compactor_test: Pass, Slow

[ $compiler == none && ($runtime == drt || $runtime == dartium) ]
third_party/angular_tests/browser_test/core_dom/shadow_root_options: Fail # Issue 18931 (Disabled for Chrome 35 roll)
polymer/example/component/news/test/news_index_test: Pass, RuntimeError # Issue 18931
polymer/test/attr_deserialize_test: Pass, RuntimeError # Issue 18931
polymer/test/attr_mustache_test: Pass, RuntimeError # Issue 18931
polymer/test/bind_test: Pass, RuntimeError # Issue 18931
polymer/test/custom_event_test: Pass, RuntimeError # Issue 18931
polymer/test/entered_view_test: Pass, RuntimeError # Issue 18931
polymer/test/event_handlers_test: Pass, RuntimeError # Issue 18931
polymer/test/event_path_test: Pass, RuntimeError # Issue 18931
polymer/test/event_path_declarative_test: Pass, RuntimeError # Issue 18931
polymer/test/events_test: Pass, RuntimeError # Issue 18931
polymer/test/instance_attrs_test: Pass, RuntimeError # Issue 18931
polymer/test/js_interop_test: Pass, RuntimeError # Issue 18931
polymer/test/nested_binding_test: Pass, RuntimeError # Issue 18931
polymer/test/noscript_test: Pass, RuntimeError # Issue 18931
polymer/test/prop_attr_bind_reflection_test: Pass, RuntimeError # Issue 18931
polymer/test/prop_attr_reflection_test: Pass, RuntimeError # Issue 18931
polymer/test/publish_attributes_test: Pass, RuntimeError # Issue 18931
polymer/test/publish_inherited_properties_test: Pass, RuntimeError # Issue 18931
polymer/test/register_test: Pass, RuntimeError # Issue 18931
polymer/test/take_attributes_test: Pass, RuntimeError # Issue 18931
polymer/test/template_distribute_dynamic_test: Pass, RuntimeError # Issue 18931

[ $runtime == vm && $mode == debug]
analysis_server/test/analysis_server_test: Pass, Timeout
analysis_server/test/domain_context_test: Pass, Timeout
analysis_server/test/domain_server_test: Pass, Timeout
analyzer/test/generated/element_test: Pass, Timeout
analyzer/test/generated/parser_test: Pass, Timeout
code_transformers/test/resolver_test: Pass, Timeout
docgen/test/*: Skip # Slow
polymer/test/build/all_phases_test: Skip # Slow
polymer_expressions/test/globals_test: Pass, Timeout
smoke/test/codegen/end_to_end_test: Pass, Timeout
smoke/test/codegen/recorder_test: Pass, Timeout
template_binding/test/template_binding_test: Pass, Timeout
third_party/html5lib/test/tokenizer_test: Pass, Timeout

[ $runtime == vm && ( $arch == simarm || $arch == simmips ) ]
analysis_server/test/*: Skip # Too slow
barback/test/too_many_open_files_test: Skip # 14220
code_transformers/test/resolver_test: Skip # Issue 17908
docgen/test/*: Skip # Too slow
polymer/test/build/all_phases_test: Skip # Slow
polymer/test/build/script_compactor_test: Skip # Slow
third_party/html5lib/test/tokenizer_test: Pass, Slow

[ $compiler == dart2js ]
collection/test/equality_test/01: Fail # Issue 1533
collection/test/equality_test/02: Fail # Issue 1533
collection/test/equality_test/03: Fail # Issue 1533
collection/test/equality_test/04: Fail # Issue 1533
collection/test/equality_test/05: Fail # Issue 1533
collection/test/equality_test/none: Pass, Fail # Issue 14348
docgen/test/*: Skip # Far too slow
third_party/angular_tests/browser_test: Pass, Slow # Large dart2js compile time
typed_data/test/typed_buffers_test/01: Fail # Not supporting Int64List, Uint64List.

[ $compiler == dart2js && $checked ]
crypto/test/base64_test: Slow, Pass

[ $compiler == dart2js && $checked && $runtime == ie9 ]
crypto/test/base64_test: Timeout # Issue 12486
collection/test/priority_queue_test: Pass, Slow # Issue 16426
serialization/test/serialization_test: Skip

[ $runtime == jsshell ]
analyzer/test/generated/element_test: Pass, Slow # Issue 16473

[ $runtime == d8 || $runtime == jsshell ]
stack_trace/test/chain_test: Fail # Issues 15171 and 15105
stack_trace/test/vm_test: RuntimeError, OK # VM-specific traces
unittest/test/missing_tick_test: Fail # Timer interface not supported: dartbug.com/7728.

[ $runtime == jsshell ]
async/test/stream_zip_test: RuntimeError, OK # Timers are not supported.
scheduled_test/test/unittest_compatibility_test: RuntimeError # Issue 7728
unittest/test/unittest_nested_groups_setup_teardown_test: RuntimeError # http://dartbug.com/10109

[ $compiler == dart2js && $runtime == drt ]
async/test/stream_zip_test: RuntimeError, Pass # Issue 18548

[ $runtime == vm || $runtime == d8 || $runtime == jsshell ]
polymer/example: Skip # Uses dart:html
polymer/e2e_test: Skip # Uses dart:html
polymer/test/attr_deserialize_test: Skip # uses dart:html
polymer/test/attr_mustache_test: Skip #uses dart:html
polymer/test/bind_test: Skip # uses dart:html
polymer/test/bind_mdv_test: Skip # uses dart:html
polymer/test/custom_event_test: Skip # uses dart:html
polymer/test/entered_view_test: Skip # uses dart:html
polymer/test/event_handlers_test: Skip #uses dart:html
polymer/test/event_path_declarative_test: Skip #uses dart:html
polymer/test/event_path_test: Skip #uses dart:html
polymer/test/events_test: Skip #uses dart:html
polymer/test/instance_attrs_test: Skip #uses dart:html
polymer/test/js_interop_test: Skip #uses dart:html
polymer/test/mirror_loader_test: Skip # uses dart:html
polymer/test/nested_binding_test: Skip # uses dart:html
polymer/test/noscript_test: Skip #uses dart:html
polymer/test/prop_attr_bind_reflection_test: Skip #uses dart:html
polymer/test/prop_attr_reflection_test: Skip #uses dart:html
polymer/test/property_change_test: Skip # uses dart:html
polymer/test/property_observe_test: Skip #uses dart:html
polymer/test/publish_attributes_test: Skip #uses dart:html
polymer/test/publish_inherited_properties_test: Skip #uses dart:html
polymer/test/register_test: Skip #uses dart:html
polymer/test/take_attributes_test: Skip #uses dart:html
polymer/test/template_distribute_dynamic_test: Skip #uses dart:html
polymer/test/unbind_test: Skip # uses dart:html
third_party/angular_tests/browser_test: Skip # uses dart:html
web_components/test/location_wrapper_test: Skip # uses dart:html

[$compiler == dart2dart]
*: Skip

[ $compiler == dart2js || $compiler == dart2dart ]
source_maps/test/vlq_test: RuntimeError # 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 ]
mime/test/mime_multipart_transformer_test: Skip # No typed_data on IE9.
typed_data/test/typed_buffers_test: Fail, Crash # No typed_data on IE9.
polymer/test/instance_attrs_test: Pass, Fail # Issue 14167
polymer/test/bind_mdv_test: Slow, Pass
template_binding/test/custom_element_bindings_test: Fail, Timeout # Issue 16717
polymer/test/bind_mdv_test: RuntimeError # Issue 14412, 13260
matcher/test/matchers_test: RuntimeError # Issue 17762

[ $ie ]
polymer/test/noscript_test: RuntimeError, Pass # Issue 13260
intl/test/date_time_format_http_request_test: Fail # Issue 8983

[ $runtime == ie10 ]
typed_data/test/typed_buffers_test/none: Fail # Issue   17607 (I put this here explicitly, since this is not the same as on ie9)
polymer/test/register_test: Fail # Issue 18870

[ $runtime == safari || $runtime == safarimobilesim ]
# Unexplained errors only occuring on Safari.
typed_data/test/typed_buffers_test: RuntimeError

# 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
third_party/angular_tests/vm_test: Fail # Uses removed APIs. See issue 18733.

[ $runtime == vm && $system == windows ]
intl/test/find_default_locale_standalone_test: Fail # Issue 8110

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

third_party/angular_tests/browser_test: StaticWarning # Issue 15890

[ $compiler == dart2js && $runtime == none]
polymer/e2e_test/canonicalization: Skip
polymer/e2e_test/experimental_boot: Skip

[ $compiler == dart2js && $csp ]
polymer/test/noscript_test: Fail # Issue 17326
polymer/test/js_interop_test: Fail # Issue 17326

# 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.
matcher/test/*_unminified_test: Skip # DO NOT COPY THIS UNLESS YOU WORK ON DART2JS

[ $compiler == dart2js && $browser ]
stack_trace/test/vm_test: Fail, OK # VM-specific traces
stack_trace/test/chain_test: Fail # Issues 15171 and 15105
crypto/test/sha256_test: Slow, Pass
crypto/test/sha1_test: Slow, Pass
polymer/example/component: Fail # Issue 13198
polymer/e2e_test/canonicalization/test/dev1_test: Fail, OK # tests development only behavior
polymer/e2e_test/canonicalization/test/dev2_test: Fail, OK # tests development only behavior
polymer/e2e_test/canonicalization/test/dev3_test: Fail, OK # tests development only behavior
polymer/e2e_test/canonicalization/test/dir/dev1_test: Fail, OK # tests development only behavior
polymer/e2e_test/canonicalization/test/dir/dev2_test: Fail, OK # tests development only behavior
polymer/e2e_test/bad_import1: RuntimeError # Issue 17596
polymer/e2e_test/bad_import2: RuntimeError # Issue 17596
polymer/e2e_test/bad_import3: Fail, OK # tests broken import
polymer/test/mirror_loader_test: Skip # tests development only behavior

[ $compiler == dart2js && $runtime == chromeOnAndroid ]
intl/test/date_time_format_http_request_test: Fail # TODO(kasperl): Please triage.

[ $browser ]
analysis_server/test/*: Skip # Uses dart:io.
analyzer/test/error_test: Fail, OK # Uses dart:io.
analyzer/test/generated/ast_test: Fail, OK # Uses dart:io.
analyzer/test/generated/element_test: Fail, OK # Uses dart:io.
analyzer/test/generated/element_test: Fail, OK # Uses dart:io.
analyzer/test/generated/parser_test: Fail, OK # Uses dart:io.
analyzer/test/generated/resolver_test: Fail, OK # Uses dart:io.
analyzer/test/generated/resolver_test: Fail, OK # Uses dart:io.
analyzer/test/options_test: Fail, OK # Uses dart:io.
analyzer/test/parse_compilation_unit_test: Fail, OK # Uses dart:io.
analyzer/test/services/formatter_test: Fail, OK # Uses dart:io.
barback/test/*: Fail, OK # Uses dart:io.
code_transformers/test/*: Skip # Uses dart:io.
http/test/io/*: Fail, OK # Uses dart:io.
http_parser/test/web_socket_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/examples_parsing_test: Fail, OK # Users dart:io
intl/test/message_extraction/failed_extraction_test: Fail, OK # Users dart:io
intl/test/message_extraction/message_extraction_test: Fail, OK # Uses dart:io.
intl/test/message_extraction/really_fail_extraction_test: Fail, OK # Users dart:io
observe/test/transformer_test: Fail, OK # Uses dart:io.
path/test/io_test: Fail, OK # Uses dart:io.
polymer/test/build/*: Fail, OK # Uses dart:io.
shelf/test/shelf_io_test: Fail, OK # Uses dart:io
shelf_web_socket/test/*: Fail, OK # Uses dart:io.
smoke/test/codegen/end_to_end_test: Skip # Uses dart:io.
smoke/test/codegen/recorder_test: Skip # Uses dart:io.
third_party/angular_tests/browser_test/core_dom/cookies: Fail # Issue 16337
third_party/angular_tests/vm_test: Skip # Uses dart:io
watcher/test/*: Fail, OK # Uses dart:io.

scheduled_test/test/descriptor/*: 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/*: Fail # http://dartbug.com/8440
scheduled_test/test/scheduled_stream/stream_matcher_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
third_party/html5lib/test/selectors/*: Skip

polymer/test/unbind_test: Pass, Fail # Issue 15259

[ $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.
matcher/test/*_minified_test: Skip # DO NOT COPY THIS UNLESS YOU WORK ON DART2JS

[ $arch == mips ]
*: Skip  # Issue 13650

[ $arch == arm ]
*: Skip  # Issue 13624

[ $arch == simarm && $checked ]
watcher/test/directory_watcher/linux_test: Skip # Issue 16118

[ $arch == simarm64 ]
# Timeout. These are not unit tests. They do not run efficiently on our
# simulator.
*: Skip

# Skip serialization test that explicitly has no library declaration in the
# test on Dartium, which requires all tests to have a library.
[ $compiler == none && ( $runtime == dartium || $runtime == drt ) ]
serialization/test/no_library_test: Skip # Expected Failure
serialization/test/serialization_test: Fail # 13921
unittest/test/unittest_async_exception_test: Fail # 13921
unittest/test/unittest_async_setup_teardown_test: Fail # 13921
unittest/test/unittest_completion_test: Fail # 13921
unittest/test/unittest_correct_callback_test: Fail # 13921
unittest/test/unittest_exception_test: Fail # 13921
unittest/test/unittest_excess_callback_test: Fail # 13921
unittest/test/unittest_expect_async_args_test: Fail # 13921
unittest/test/unittest_expect_async_test: Fail # 13921
unittest/test/unittest_group_name_test: Fail # 13921
unittest/test/unittest_invalid_ops_test: Fail # 13921
unittest/test/unittest_late_exception_test: Fail # 13921
unittest/test/unittest_middle_exception_test: Fail # 13921
unittest/test/unittest_nested_groups_setup_teardown_test: Fail # 13921
unittest/test/unittest_protect_async_test: Fail # 13921
unittest/test/unittest_runtests_without_tests_test: Fail # 13921
unittest/test/unittest_setup_and_teardown_test: Fail # 13921
unittest/test/unittest_setup_test: Fail # 13921
unittest/test/unittest_single_correct_test: Fail # 13921
unittest/test/unittest_single_failing_test: Fail # 13921
unittest/test/unittest_skipped_soloed_nested_test: Fail # 13921
unittest/test/unittest_teardown_test: Fail # 13921
unittest/test/unittest_test_returning_future_test: Fail # 13921
unittest/test/unittest_test_returning_future_using_runasync_test: Fail # 13921
unittest/test/unittest_testcases_immutable_test: Fail # 13921
polymer/e2e_test/canonicalization/test/deploy1_test: Fail, OK # tests deploy only behavior
polymer/e2e_test/canonicalization/test/deploy2_test: Fail, OK # tests deploy only behavior
polymer/e2e_test/canonicalization/test/deploy3_test: Fail, OK # tests deploy only behavior
polymer/e2e_test/canonicalization/test/dir/dev2_test: RuntimeError # Issue 17596
polymer/e2e_test/canonicalization/test/dir/deploy1_test: Fail, OK # tests deploy only behavior
polymer/e2e_test/canonicalization/test/dir/deploy2_test: Fail, OK # tests deploy only behavior
polymer/test/custom_event_test: Pass, Crash # 14360

[ $compiler == none && ( $runtime == dartium || $runtime == drt ) && $checked ]
polymer/test/custom_event_test: Skip # http://dartbug.com/15517

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

[ $runtime == safari || $runtime == safarimobilesim || $ie ]
polymer_expressions/test/globals_test: Fail # Issue 16568
polymer_expressions/test/bindings_test: Fail # Issue 16568

[ $browser ]
docgen/test/*: Skip  # Uses dart:io
scheduled_test/test/scheduled_server_test: Skip # Uses dart:io

[ $browser || $runtime == vm ]
unittest/test/missing_tick_test: Fail, OK # Expected to fail, due to timeout.


[ $compiler == none && ($runtime == dartium || $runtime == drt) ]
source_maps/test/parser_test: Pass, Timeout # Issue 13719: Please triage this failure.

[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
matcher/test/matchers_test: StaticWarning, OK # testing error creating abstract class
third_party/angular_tests/vm_test: StaticWarning # Uses removed APIs. See issue 18733.

[ $runtime == vm && ($system == windows || $system == macos) ]
watcher/test/*/linux_test: Skip

[ $runtime == vm && ($system == windows || $system == linux) ]
watcher/test/*/mac_os_test: Skip

[ $runtime == safari || $runtime == safarimobilesim || $runtime == chrome || $runtime == ff || $ie ]
# Various issues due to limited browser testing in Angular.
third_party/angular_tests/*: Skip

[ $unchecked ]
third_party/angular_tests/browser_test/angular: Skip # Requires checked mode.
third_party/angular_tests/browser_test/core/scope: Skip # Requires checked mode.
third_party/angular_tests/browser_test/core/zone: Skip # Requires checked mode.
third_party/angular_tests/browser_test/directive/ng_repeat: Skip # Issue 17152
third_party/angular_tests/browser_test/change_detection/dirty_checking_change_detector: Skip # Issue 17152

[ $use_repository_packages ]
analyzer/test/*: PubGetError

[ $runtime == ie9 ]
polymer: Pass, Fail, Timeout # Issue 16717

# No typed_data on IE9.
http/test/html/client_test: Fail
http/test/html/streamed_request_test: Skip
http/test/mock_client_test: Fail
http/test/multipart_test: Fail
http/test/request_test: Fail
http/test/response_test: Fail
oauth2/test/authorization_code_grant_test: Fail
oauth2/test/client_test: Fail
oauth2/test/credentials_test: Fail
oauth2/test/handle_access_token_response_test: Fail

[ $runtime == drt ]
http/test/html/client_test: Skip # Issue 18566
