# 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
*/*/*/*/*/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

[ $compiler == none && ($runtime == dartium) ]
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
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

[ $checked && $runtime == drt ]
polymer/test/event_handlers_test: Pass, RuntimeError # Issue 19190

[ $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/auto_binding_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/core_matchers_test: RuntimeError # Issue 17762
polymer_expressions/test/bindings_test: RuntimeError # Issue 19265
polymer_expressions/test/globals_test: RuntimeError # Issue 19265
template_binding/test/template_binding_test: RuntimeError # Issue 19265

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

[ $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
polymer/test/auto_binding_test: Pass, RuntimeError # Issue 19265
polymer/test/attr_deserialize_test: Pass, RuntimeError # Issue 19265
polymer/test/attr_mustache_test: Pass, RuntimeError # Issue 19265
polymer/test/bind_test: Pass, RuntimeError # Issue 19265
polymer/test/bind_mdv_test: Pass, RuntimeError # Issue 19265
polymer/test/custom_event_test: Pass, RuntimeError # Issue 19265
polymer/test/entered_view_test: Pass, RuntimeError # Issue 19265
polymer/test/event_handlers_test: Pass, RuntimeError # Issue 19265
polymer/test/event_path_declarative_test: Pass, RuntimeError # Issue 19265
polymer/test/event_path_test: Pass, RuntimeError # Issue 19265
polymer/test/events_test: Pass, RuntimeError # Issue 19265
polymer/test/instance_attrs_test: Pass, RuntimeError # Issue 19265
polymer/test/js_interop_test: Pass, RuntimeError # Issue 19265
polymer/test/mirror_loader_test: Pass, RuntimeError # Issue 19265
polymer/test/nested_binding_test: Pass, RuntimeError # Issue 19265
polymer/test/noscript_test: Pass, RuntimeError # Issue 19265
polymer/test/prop_attr_bind_reflection_test: Pass, RuntimeError # Issue 19265
polymer/test/prop_attr_reflection_test: Pass, RuntimeError # Issue 19265
polymer/test/property_change_test: Pass, RuntimeError # Issue 19265
polymer/test/property_observe_test: Pass, RuntimeError # Issue 19265
polymer/test/publish_attributes_test: Pass, RuntimeError # Issue 19265
polymer/test/publish_inherited_properties_test: Pass, RuntimeError # Issue 19265
polymer/test/take_attributes_test: Pass, RuntimeError # Issue 19265
polymer/test/template_distribute_dynamic_test: Pass, RuntimeError # Issue 19265
polymer/test/unbind_test: Pass, RuntimeError # Issue 19265
polymer/e2e_test/*: Pass, RuntimeError # Issue 19265
polymer_expressions/*: Pass, RuntimeError # Issue 19265
template_binding/test/template_binding_test: Pass, RuntimeError # Issue 19265

[ $runtime == ie11 ]
polymer/test/event_handlers_test: RuntimeError, Timeout # Issue 19265

[ $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_multi_server/test/http_multi_server_test: Skip # 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

[ $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

[ $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/deprecated_matchers_test: StaticWarning # 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 == vm && ($system == macos || $system == linux) ]
watcher/test/*/windows_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
