# 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

# Analyzer2dart is not maintained anymore.
analyzer2dart/test/*: Skip

[ $compiler == none && ($runtime == drt || $runtime == dartium) ]
mutation_observer: Skip # Issue 21149
unittest/*: Skip # Issue 21949
lookup_map/*: SkipByDesign

[ $runtime == vm && $mode == debug ]
analysis_server/test/completion_test: Pass, Slow

[ $runtime == vm && $system == windows]
analysis_server/test/analysis/get_errors_test: Skip # runtime error, Issue 22180
analysis_server/test/integration/analysis/analysis_options_test: RuntimeError # Issue 24796
analyzer/test/generated/all_the_rest_test: Fail # Issue 21772
analyzer_cli/test/driver_test: Fail # Issue 25471

[ $compiler == dart2js ]
analyzer_cli/test/*: SkipByDesign # Only meant to run on vm
analysis_server/test/*: Skip # Issue 22161
analysis_server/test/analysis_notification_highlights_test: Pass, Slow # 19756, 21628
analysis_server/test/analysis_notification_navigation_test: Pass, Slow # Issue 19756, 21628
analysis_server/test/analysis_notification_occurrences_test: Pass, Slow # Issue 19756, 21628
analysis_server/test/analysis_notification_outline_test: Pass, Slow # Issue 19756, 21628
analysis_server/test/domain_analysis_test: Pass, Slow # Issue 19756, 21628
analysis_server/test/domain_completion_test: Pass, Slow
analysis_server/test/edit/assists_test: Pass, Slow
analysis_server/test/edit/format_test: Pass, Slow
analysis_server/test/edit/refactoring_test: Pass, Slow # Issue 19756, 21628
analysis_server/test/search/element_references_test: Pass, Slow
analysis_server/test/search/top_level_declarations_test: Pass, Slow # 19756, 21628
analysis_server/test/services/index/store/codec_test: Pass, Slow
analysis_server/test/socket_server_test: Pass, Slow # Issue 19756, 21628
analyzer/test/context/declared_variables_test: Pass, Slow # Issue 21628
analyzer/test/dart/element/element_test: Pass, Slow # Issue 24914
analyzer/test/dart/ast/ast_test: Pass, Slow # Issue 19756, 21628
analyzer/test/dart/ast/utilities_test: Pass, Slow # Issue 19756, 21628
analyzer/test/dart/ast/visitor_test: Pass, Slow # Issue 19756, 21628
analyzer/test/enum_test: Slow, Pass, Fail # Issue 21323
analyzer/test/non_hint_code_test: Pass, Slow # Issue 21628
analyzer/test/strong_mode_test: Pass, Slow # Issue 21628
analyzer/test/generated/all_the_rest_test: Pass, Slow # Issue 21628
analyzer/test/generated/checked_mode_compile_time_error_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/ast_test: Pass, Slow # Issue 21628
analyzer/test/generated/checked_mode_compile_time_error_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/compile_time_error_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/constant_test: Pass, Slow # Issue 24914
analyzer/test/generated/declaration_resolver_test: Pass, Slow # Issue 24914
analyzer/test/generated/element_test: Pass, Slow # Issue 21628
analyzer/test/generated/element_resolver_test: Pass, Slow # Issue 21628
analyzer/test/generated/error_suppression_test: Pass, Slow # Issue 21628
analyzer/test/generated/engine_test: SkipSlow
analyzer/test/generated/hint_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/non_hint_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/incremental_resolver_test: Pass, Slow # Issue 21628
analyzer/test/generated/incremental_scanner_test: Pass, Slow # Issue 21628
analyzer/test/generated/inheritance_manager_test: Pass, Slow # Issue 21628
analyzer/test/generated/non_error_resolver_test: Pass, Slow # Issue 21628
analyzer/test/generated/parser_test: Pass, Slow # Issue 21628
analyzer/test/generated/resolver_test: Pass, Slow # Issue 21628
analyzer/test/generated/scanner_test: Pass, Slow # Issue 21628
analyzer/test/generated/simple_resolver_test: Pass, Slow # Issue 21628
analyzer/test/generated/source_factory_test: Pass, Slow # Issue 21628
analyzer/test/generated/static_type_analyzer_test: Pass, Slow # Issue 21628
analyzer/test/generated/static_type_warning_code_test: Pass, Slow
analyzer/test/generated/static_type_warning_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/static_warning_code_test: Pass, Slow # Issue 21628
analyzer/test/generated/strong_mode_test: Pass, Slow # Issue 21628
analyzer/test/generated/type_system_test: Pass, Slow # Issue 21628
analyzer/test/generated/utilities_test: Pass, Slow # Issue 21628
analyzer/test/src/context/cache_test: Pass, Slow # Issue 21628
analyzer/test/src/context/context_test: Pass, Timeout # dartbug.com/23658
analyzer/test/src/dart/ast/utilities_test: Pass, Slow # Issue 24914
analyzer/test/src/dart/constant/evaluation_test: Pass, Slow # Issue 24914
analyzer/test/src/dart/element/element_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/incremental_cache_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/index_unit_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/prelinker_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/resynthesize_ast_test: Pass, Slow
analyzer/test/src/summary/resynthesize_strong_test: Pass, Slow
analyzer/test/src/summary/resynthesize_test: Pass, Slow
analyzer/test/src/summary/summary_sdk_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/summarize_ast_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/summarize_ast_strong_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/summarize_elements_strong_test: Pass, Slow # Issue 24914
analyzer/test/src/summary/summarize_elements_test: Pass, Slow # Issue 24914
analyzer/test/src/task/dart_test: Pass, Slow # Issue 21628
analyzer/test/src/task/dart_work_manager_test: Pass, Slow # Issue 21628
analyzer/test/src/task/driver_test: Pass, Slow # Issue 21628
analyzer/test/src/task/general_test: Pass, Slow # Issue 21628
analyzer/test/src/task/html_test: Pass, Slow # Issue 21628
analyzer/test/src/task/html_work_manager_test: Pass, Slow # Issue 21628
analyzer/test/src/task/incremental_element_builder_test: Pass, Slow # Issue 21628
analyzer/test/src/task/inputs_test: Pass, Slow # Issue 21628
analyzer/test/src/task/manager_test: Pass, Slow # Issue 21628
analyzer/test/src/task/model_test: Pass, Slow # Issue 21628
analyzer/test/src/task/options_test: Pass, Slow # Issue 21628
analyzer/test/src/task/options_work_manager_test: Pass, Slow # Issue 21628
analyzer/test/src/task/strong/checker_test: Pass, Slow # Issue 21628
analyzer/test/src/task/strong/inferred_type_test: Pass, Slow # Issue 21628
analyzer/test/src/task/yaml_test: Pass, Slow # Issue 21628
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
lookup_map/test/version_check_test: SkipByDesign # Only meant to run in vm.
typed_data/test/typed_buffers_test/01: Fail # Not supporting Int64List, Uint64List.

# Analysis server integration tests don't make sense to run under
# dart2js, since the code under test always runs in the Dart vm as a
# subprocess.
analysis_server/test/integration: Skip

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

[ $runtime == d8 ]
analysis_server/test/analysis_notification_overrides_test: Pass, Slow # Issue 19756
analysis_server/test/analysis_notification_occurrences_test: Pass, Slow # Issue 19756
analysis_server/test/analysis_notification_outline_test: Pass, Slow # Issue 19756
analysis_server/test/domain_search_test: Pass, Slow # Issue 19756
analysis_server/test/search/element_reference_test: Pass, Slow # Issue 19756
analysis_server/index/store/codec_test: Pass, Slow # Issue 19756

[ $runtime == jsshell ]
async/test/stream_zip_test: RuntimeError, OK # Issue 26103. Timers are not supported.
lookup_map/test/lookup_map_test: RuntimeError, OK # Issue 26103. Timers are not supported.

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

[ $compiler == dart2js && ($runtime == chrome || $runtime == ff) ]
collection/test/unmodifiable_collection_test: SkipSlow # Times out. Issue 22050
async/test/stream_zip_test: SkipSlow # Times out. Issue 22050

[ $runtime == ie10 ]
analyzer/test/generated/java_core_test: Pass, Timeout # Issue 19747
typed_data/test/typed_buffers_test/none: Fail # Issue   17607 (I put this here explicitly, since this is not the same as on ie9)

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

[ $compiler == dart2analyzer ]
compiler/samples/compile_loop/compile_loop: CompileTimeError  # Issue 16524
lookup_map/test/version_check_test: StaticWarning # https://github.com/dart-lang/http_parser/issues/6
lookup_map/test/lookup_map_test: StaticWarning # https://github.com/dart-lang/http_parser/issues/6

[ $compiler == dart2js && $csp ]
# This test cannot run under CSP because it is injecting a JavaScript polyfill
mutation_observer: Skip

[ $compiler == dart2js && $browser ]
crypto/test/sha256_test: Slow, Pass
crypto/test/sha1_test: Slow, Pass

[ $browser ]
analyzer_cli/*: SkipByDesign # Uses dart:io.
*/test/analyzer_test: SkipByDesign # No need to run analysis tests on browser bots
analysis_server/test/*: SkipByDesign # Uses dart:io.
analysis_server/tool/spec/check_all_test: SkipByDesign # Uses dart:io.
analyzer/test/*: SkipByDesign # Uses dart:io.
analyzer/tool/task_dependency_graph/check_test: SkipByDesign # Uses dart:io.
analyzer/tool/summary/check_test: SkipByDesign # Uses dart:io.
analyzer2dart/*: SkipByDesign # Uses dart:io.
http_server/test/*: Fail, OK # Uses dart:io.
observe/test/transformer_test: Fail, OK # Uses dart:io.
observe/test/unique_message_test: SkipByDesign  # Uses dart:io.
dart_messages/test/dart_messages_test: Skip  # Uses dart:io.

[ $runtime == vm && ($arch == simarm64 || $arch == simarm || $arch == simarmv6 || $arch == simarmv5te || $arch == simmips || $arch == armv6 || $arch == armv5te) ]
# Timeout. These are not unit tests. They do not run efficiently on our
# simulator or low-end devices.
*: Skip

[ $runtime == vm ]
analyzer/test/file_system/physical_resource_provider_test: Pass, Fail # Issue 25472
# Skip tests on the VM if the package depends on dart:html
mutation_observer: Skip

[ $compiler == dart2js && $runtime == chrome && $system == macos ]
third_party/di_tests/di_test: Pass, Slow # Issue 22896

[ $use_repository_packages ]
analyzer/test/*: PubGetError

[ $compiler == dart2js && $cps_ir && $host_checked == false ]
analyzer/test/dart/element/element_test: Pass, Slow # Times out due to inlining, but see issue 24485
analyzer/test/src/summary/resynthesize_test: Pass, Slow # Times out due to inlining, but see issue 24485
analyzer/test/src/task/strong_mode_test: Pass, Slow # Times out due to inlining, but see issue 24485

[ $compiler == dart2js && $cps_ir && $host_checked ]
analyzer/test/dart/ast/ast_test: Crash # Issue 24485
analyzer/test/dart/ast/visitor_test: Crash # Issue 24485
analyzer/test/dart/element/element_test: Crash # Issue 24485
analyzer/test/enum_test: Crash # Issue 24485
analyzer/test/generated/all_the_rest_test: Crash # Issue 24485
analyzer/test/generated/ast_test: Crash # Issue 24485
analyzer/test/generated/checked_mode_compile_time_error_code_test: Crash # Issue 24485
analyzer/test/generated/compile_time_error_code_test: Crash # Issue 24485
analyzer/test/generated/constant_test: Crash # Issue 24485
analyzer/test/generated/declaration_resolver_test: Crash # Issue 24485
analyzer/test/generated/element_resolver_test: Crash # Issue 24485
analyzer/test/generated/element_test: Crash # Issue 24485
analyzer/test/generated/error_suppression_test: Crash # Issue 24485
analyzer/test/generated/hint_code_test: Crash # Issue 24485
analyzer/test/generated/incremental_resolver_test: Crash # Issue 24485
analyzer/test/generated/incremental_scanner_test: Crash # Issue 24485
analyzer/test/generated/inheritance_manager_test: Crash # Issue 24485
analyzer/test/generated/non_error_resolver_test: Crash # Issue 24485
analyzer/test/generated/non_hint_code_test: Crash # Issue 24485
analyzer/test/generated/parser_test: Crash # Issue 24485
analyzer/test/generated/resolver_test: Crash # Issue 24485
analyzer/test/generated/scanner_test: Crash # Issue 24485
analyzer/test/generated/simple_resolver_test: Crash # Issue 24485
analyzer/test/generated/source_factory_test: Crash # Issue 24485
analyzer/test/generated/static_type_analyzer_test: Crash # Issue 24485
analyzer/test/generated/static_type_warning_code_test: Crash # Issue 24485
analyzer/test/generated/static_warning_code_test: Crash # Issue 24485
analyzer/test/generated/strong_mode_test: Crash # Issue 24485
analyzer/test/generated/utilities_test: Crash # Issue 24485
analyzer/test/src/context/cache_test: Crash # Issue 24485
analyzer/test/src/context/context_test: Crash # Issue 24485
analyzer/test/src/dart/ast/utilities_test: Crash # Issue 24485
analyzer/test/src/dart/element/element_test: Crash # Issue 24485
analyzer/test/src/summary/index_unit_test: Crash # Issue 24485
analyzer/test/src/summary/prelinker_test: Crash # Issue 24485
analyzer/test/src/summary/resynthesize_test: Crash # Issue 24485
analyzer/test/src/summary/resynthesize_strong_test: Crash # Issue 24485
analyzer/test/src/summary/summarize_ast_test: Crash # Issue 24485
analyzer/test/src/summary/summarize_elements_test: Crash # Issue 24485
analyzer/test/src/summary/summarize_elements_strong_test: Crash # Issue 24485
analyzer/test/src/task/dart_test: Crash # Issue 24485
analyzer/test/src/task/dart_work_manager_test: Crash # Issue 24485
analyzer/test/src/task/driver_test: Crash # Issue 24485
analyzer/test/src/task/general_test: Crash # Issue 24485
analyzer/test/src/task/html_test: Crash # Issue 24485
analyzer/test/src/task/html_work_manager_test: Crash # Issue 24485
analyzer/test/src/task/incremental_element_builder_test: Crash # Issue 24485
analyzer/test/src/task/inputs_test: Crash # Issue 24485
analyzer/test/src/task/manager_test: Crash # Issue 24485
analyzer/test/src/task/model_test: Crash # Issue 24485
analyzer/test/src/task/options_test: Crash # Issue 24485
analyzer/test/src/task/options_work_manager_test: Crash # Issue 24485
analyzer/test/src/task/strong/checker_test: Crash # Issue 24485
analyzer/test/src/task/strong/inferred_type_test: Crash # Issue 24485
analyzer/test/src/task/strong_mode_test: Crash # Issue 24485
analyzer/test/src/task/yaml_test: Crash # Issue 24485

[ $noopt || $runtime == dart_precompiled || $runtime == dart_product ]
*: SkipByDesign # The pkg test framework imports dart:mirrors.

[ $compiler == dart2js && $cps_ir && $checked ]
*: Skip # `assert` not implemented, about 75% tests crash
