# 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 != dartanalyzer && $compiler != dart2analyzer ]
docgen/test/inherited_comments_test: Fail # issue 22233

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

[ $runtime == vm && $mode == debug]
analysis_server/test/analysis_server_test: SkipSlow  # Times out
analysis_server/test/completion_test: SkipSlow  # Times out
analysis_server/test/domain_context_test: SkipSlow  # Times out
analysis_server/test/domain_server_test: SkipSlow  # Times out
analysis_server/test/integration/*: SkipSlow # Times out
analysis_server/tool/spec/check_all_test: SkipSlow # Times out
analyzer/test/generated/element_test: SkipSlow  # Times out
analyzer/test/generated/parser_test: SkipSlow  # Times out
docgen/test/*: SkipSlow

[ $runtime == vm && $system == windows]
analysis_server/test/analysis/get_errors_test: Skip # runtime error, Issue 22180

[ $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/*: SkipSlow # Far too slow
typed_data/test/typed_buffers_test/01: Fail # Not supporting Int64List, Uint64List.
analyzer/test/generated/engine_test: SkipSlow
analyzer/test/generated/static_type_warning_code_test: Pass, Slow
analyzer/test/generated/compile_time_error_code_test: Pass, Slow

analyzer/test/enum_test: Slow, Pass, Fail # Issue 21323

analysis_server/test/*: Skip # Issue 22161
analysis_server/test/search/element_references_test: Pass, Slow
analysis_server/test/services/index/store/codec_test: Pass, Slow
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 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

[ $compiler == dart2js ]
analysis_server/test/edit/refactoring_test: Pass, Slow # Issue 16473, 19756
analysis_server/test/analysis_notification_occurrences_test: Pass, Slow # Issue 16473, 19756
analysis_server/test/analysis_notification_outline_test: Pass, Slow # Issue 16473, 19756
analysis_server/test/analysis_notification_navigation_test: Pass, Slow # Issue 16473, 19756
analysis_server/test/domain_analysis_test: Pass, Slow # Issue 16473, 19756
analysis_server/test/analysis_notification_highlights_test: Pass, Slow # 16473, 19756
analysis_server/test/search/top_level_declarations_test: Pass, Slow # 16473, 19756
analysis_server/test/socket_server_test: Pass, Slow # Issue 16473, 19756
analyzer/test/generated/element_test: Pass, Slow # Issue 16473
analyzer/test/generated/incremental_resolver_test: Pass, Slow # Issue 16473

[ $runtime == jsshell ]
async/test/stream_zip_test: RuntimeError, OK # 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

[ $runtime == vm && $system == windows ]
analyzer/test/generated/all_the_rest_test: Fail # Issue 21772

[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
compiler/samples/compile_loop/compile_loop: CompileTimeError  # Issue 16524

[ $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.
analyzer2dart/*: SkipByDesign # Uses dart:io.
docgen/test/*: 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.

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

[ $runtime == vm ]
# 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 ]
analyzer_cli/test/error_test: Crash # (try {return fn(tempDir);}finally {new Directory(tempDir).deleteSync(recursive:true);}): try/finally
analyzer_cli/test/options_test: Crash #  try/finally
analysis_server/tool/spec/check_all_test: Crash #  Unhandled node
analyzer/test/cancelable_future_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/enum_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/file_system/memory_file_system_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/file_system/physical_resource_provider_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/file_system/resource_uri_resolver_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/all_the_rest_test: Crash #  try/finally
analyzer/test/generated/ast_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/compile_time_error_code_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/element_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/incremental_resolver_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/incremental_scanner_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/java_core_test: Crash #  try/finally
analyzer/test/generated/java_io_test: Crash #  try/finally
analyzer/test/generated/non_error_resolver_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/parser_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/resolver_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/scanner_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/static_type_warning_code_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/static_warning_code_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/generated/utilities_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/instrumentation/instrumentation_test: Crash #  try/finally
analyzer/test/parse_compilation_unit_test: Crash # Instance of 'TypeOperator': type casts not implemented.
analyzer/test/source/package_map_provider_test: Crash #  try/finally
analyzer/test/source/package_map_resolver_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/context/cache_test: Crash #  try/finally
analyzer/test/src/context/context_test: Crash #  try/finally
analyzer/test/src/task/dart_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/task/dart_work_manager_test: Crash #  try/finally
analyzer/test/src/task/driver_test: Crash #  try/finally
analyzer/test/src/task/general_test: Crash #  try/finally
analyzer/test/src/task/incremental_element_builder_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/task/inputs_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/task/manager_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/task/model_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/util/asserts_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
analyzer/test/src/util/lru_map_test: Crash # (try {test(spec,body);}finally {environment.soloNestingLevel-- ;}): try/finally
fixnum/test/int_32_test: Crash #  try/finally
fixnum/test/int_64_test: Crash #  try/finally
js_ast/test/printer_callback_test: Crash #  Unhandled node
typed_data/test/typed_buffers_test/01: Crash # Instance of 'TypeOperator': type casts not implemented.
typed_data/test/typed_buffers_test/none: Crash # Instance of 'TypeOperator': type casts not implemented.
typed_mock/test/typed_mock_test: Crash #  try/finally
