# Copyright (c) 2013, 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.

# WARNING:
# Tests using the multitest feature where failure is expected should *also* be
# listed in tests/lib/analyzer/analyze_tests.status without the "standalone"
# prefix.

packages_file_test: Skip # Issue 26715
packages_file_test/none: Skip   # contains no tests.

package/invalid_uri_test: Fail, OK # CompileTimeErrors intentionally
package/scenarios/packages_file_strange_formatting/empty_package_dir_test: Fail, OK # CompileTimeErrors intentionally
package/scenarios/empty_packages_file/empty_packages_file_discovery_test: Fail, OK # CompileTimeErrors intentionally
package/scenarios/empty_packages_file/empty_packages_file_option_test: Fail, OK # CompileTimeErrors intentionally
package/scenarios/invalid/invalid_package_name_test: RuntimeError, CompileTimeError # Errors intentionally
package/scenarios/invalid/same_package_twice_test.dart: RuntimeError, CompileTimeError # Errors intentionally
full_coverage_test: Pass, Slow, Timeout

issue14236_test: Pass # Do not remove this line. It serves as a marker for Issue 14516 comment #4.

[ ($runtime != vm || $compiler != none) && $compiler != dartanalyzer && $compiler != dart2analyzer ]
packages_file_test: Skip # Uses Platform.executable

[ ($runtime != vm && $runtime != dart_precompiled && $runtime != dart_app) && ($runtime != drt || $compiler != none)) ]
no_assert_test: Fail, OK # This is testing a vm flag.

[ ($runtime == vm || $runtime == dart_precompiled || $runtime == dart_app) ]
package/package_isolate_test: Fail # Issue 12474
io/observatory_test: Fail
package/scenarios/invalid/same_package_twice_test: Pass # Issue 24119

[ ($runtime == vm || $runtime == dart_precompiled || $runtime == dart_app) && $checked ]
# These tests have type errors on purpose.
io/process_invalid_arguments_test: Fail, OK
io/directory_invalid_arguments_test: Fail, OK
io/file_invalid_arguments_test: Fail, OK
io/internet_address_invalid_arguments_test: Fail, OK
io/socket_invalid_arguments_test: Fail, OK
io/stdout_bad_argument_test: Fail, OK
# These test have type errors on purpose and take very long to run in
# checked mode with no benefit. Skip.
io/file_fuzz_test: Skip
io/directory_fuzz_test: Skip

[ ($runtime == vm || $runtime == dart_precompiled || $runtime == dart_app) && $system == macos ]
# This test fails with "Too many open files" on the Mac OS buildbot.
# This is expected as MacOS by default runs with a very low number
# of allowed open files ('ulimit -n' says something like 256).
io/socket_many_connections_test: Skip
# Re-enable once the bots have been updated. Issue #26057
io/secure_server_client_certificate_test: Skip

[ $runtime == vm && $system == linux ]
# These tests have started timing out and issue 25649 has been filed to
# investigate, skipping these tests temporarily to get the bots to be
# green again.
io/http_proxy_test: Skip
io/secure_builtin_roots_test: Skip


[ $compiler == none && ($runtime == drt || $runtime == dartium) ]
typed_array_test: RuntimeError, OK  # Uses Isolate.spawn
typed_array_int64_uint64_test: RuntimeError, OK  # Uses Isolate.spawn
typed_data_isolate_test: SkipByDesign # This test uses dart:io
io/*: SkipByDesign # Don't run tests using dart:io in the browser
package/*: Skip # Do not run those in Dartium.
full_coverage_test: Skip
http_launch_test: Skip
vmservice/*: SkipByDesign # Do not run standalone vm service tests in browser.
issue14236_test: Skip # Issue 14236 Script snapshots do not work in the browser.
oom_error_stacktrace_test: Skip
out_of_memory_test: Skip
map_insert_remove_oom_test: Skip  # Issue 24571
verbose_gc_to_bmu_test: Skip
regress_26031_test: SkipByDesign # Standalone only test

[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
issue14236_test: Skip # Analyzer can't handle Script snapshots.
fixed_precision_double_test: Skip # double p getter only implemented in VM.

# test issue https://code.google.com/p/dart/issues/detail?id=11518
io/file_constructor_test: fail

# This is runtime test.
io/process_exit_negative_test: Skip

[ $compiler == dart2js ]
number_identity_test: Skip # Bigints and int/double diff. not supported.
typed_data_test: Skip # dart:typed_data support needed.
bytedata_test: Skip # dart:typed_data support needed.
typed_data_view_test: Skip # dart:typed_data support needed.
typed_data_isolate_test: Skip # dart:typed_data support needed.
typed_array_int64_uint64_test: Skip # dart:typed_data on dart2js does not support 64-bit ints.
float_array_test: Skip # dart:typed_data support needed.
int_array_test: Skip  # dart:typed_data support needed.
io/web_socket_protocol_processor_test: Skip  # Importing code with external keyword
int_array_load_elimination_test: Skip  # This is a VM test
medium_integer_test: RuntimeError, OK # Test fails with JS number semantics: issue 1533.
io/process_exit_negative_test: Fail, OK # relies on a static error that is a warning now.
package/package_isolate_test: Skip # spawnUri does not work in dart2js. See issue 3051
package/package_test: Fail, OK # dart2js does not support 'package:foo.dart' imports
package/package1_test: Fail, OK # dart2js does not support 'package:foo.dart' imports
package/scenarios/invalid/*: CompileTimeError  # Negative tests expecting CompileTimeErrors.
full_coverage_test: Skip
left_shift_bit_and_op_test: Skip # Integers exceed dart2js precision.
pow_test: Skip # Precision > 53 bits.
double_smi_comparison_test: Skip # Precision > 53 bits.
http_launch_test: Skip
oom_error_stacktrace_test: RuntimeError, OK # (OOM on JS may produce a stacktrace).
vmservice/*: Skip # Do not run standalone vm service tests with dart2js.
issue14236_test: Skip # dart2js does not deal with Script snapshots.
unboxed_int_converter_test: Skip
pair_location_remapping_test: Skip
regress_25335_test: Skip # Int64List not supported.
deferred_transitive_import_error_test: Skip # Contains intentional errors.
fixed_precision_double_test: Skip # double p getter only implemented in VM.

[ $compiler == dart2js && $cps_ir && $checked ]
*: Skip # `assert` not implemented

[ ($runtime == vm || $runtime == dart_app) && ($arch == arm || $arch == arm64) ]
io/file_stream_test: Skip # Issue 26109
io/file_typed_data_test: Skip # Issue 26109
io/file_input_stream_test: Skip # Issue 26109

[ $compiler == dart2js && $jscl ]
assert_test: RuntimeError, OK # Assumes unspecified fields on the AssertionError.
deoptimization_test: RuntimeError, OK # Requires bigint.
out_of_memory_test: RuntimeError, OK # d8 handles much larger arrays than Dart VM.
io/arguments_test: CompileTimeError, OK # Cannot pass arguments to d8.

[ $compiler == dart2js && $runtime == none ]
io/arguments_test: Fail # DartOptions not supported by dart2js, and issue 14200.
medium_integer_test: Pass # The test only fails at runtime, not at compilation.
oom_error_stacktrace_test: Pass # The test only fails at runtime.

[ $compiler == dart2js && $fast_startup ]
io/observatory_test: Fail # mirrors not supported.
io/skipping_dart2js_compilations_test: CompileTimeError # Imports dart:mirrors
io/test_harness_analyzer_test: CompileTimeError # Imports dart:mirrors
io/test_runner_test: CompileTimeError # Imports dart:mirrors

[ $compiler == dart2js && $browser ]
*: Skip

[ $arch == simarm || $arch == simarmv6 || $arch == simarmv5te || $arch == simmips ]
out_of_memory_test: Skip # passes on Mac, crashes on Linux
oom_error_stacktrace_test: Skip # Fails on Linux

[ $arch == simarm && $mode == debug && $checked ]
io/web_socket_test: Pass, Fail # Issue 26814

[ $arch == mips ]
io/file_stat_test: Fail # Issue 17440
io/process_sync_test: Skip # Starts 10 dart subprocesses, uses too much memory.
io/signals_test: Skip # Starts 10 dart subprocesses, uses too much memory
io/socket_source_address_test: Fail # Issue 22597

[ $arch == mips && $mode == debug ]
io/web_socket_test: SkipSlow # Times out. Issue 20352
io/test_runner_test: Skip # Flakily times out in a subtest. Issue 201351
full_coverage_test: SkipSlow # Times out. Issue 20352
io/http_client_stays_alive_test: Skip # Timing dependent test, MIPS machine too slow.

[ $compiler == none && $runtime == dartium && $unchecked ]
assert_test: Fail # Issue 14651.

[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
io/directory_invalid_arguments_test: StaticWarning
io/process_invalid_arguments_test: StaticWarning
io/raw_secure_server_socket_argument_test: StaticWarning
io/secure_socket_argument_test: StaticWarning
io/stdout_bad_argument_test: StaticWarning
package/package1_test: StaticWarning
package/package_test: StaticWarning
package/scenarios/packages_dir_only/packages_dir_only_test: StaticWarning
package/scenarios/packages_file_only/packages_file_only_test: StaticWarning
package/scenarios/both_dir_and_file/prefers_packages_file_test: StaticWarning
package/scenarios/packages_file_in_parent/sub/packages_file_in_parent_test: StaticWarning
typed_data_test: StaticWarning
typed_data_view_test: StaticWarning
deferred_transitive_import_error_test: Skip # Contains intentional errors.

[ $compiler == dart2analyzer ]
package/package1_test: CompileTimeError
package/package_test: CompileTimeError
package/package_isolate_test: CompileTimeError
package/scenarios/packages_dir_only/packages_dir_only_test: CompileTimeError
package/scenarios/packages_file_only/packages_file_only_test: CompileTimeError
package/scenarios/both_dir_and_file/prefers_packages_file_test: CompileTimeError
package/scenarios/packages_file_in_parent/sub/packages_file_in_parent_test: CompileTimeError
package/scenarios/invalid/non_existent_packages_file_test: Crash, OK # Analyzer exits on invalid package config
package/scenarios/invalid/invalid_utf8_test: Crash, OK # Analyzer exits on invalid package config
package/scenarios/invalid/invalid_package_name_test: Crash, OK # Analyzer exits on invalid package config
package/scenarios/invalid/same_package_twice_test: Crash, OK # Analyzer exits on invalid package config

[ $system == windows ]
io/skipping_dart2js_compilations_test: Fail # Issue 19551.
verbose_gc_to_bmu_test: Skip
io/platform_resolved_executable_test/06: RuntimeError  # Issue 23641
io/process_sync_test: Pass, Timeout # Issue 24596
io/sleep_test: Pass, Fail # Issue 25757

[ ($runtime == vm || $runtime == dart_precompiled || $runtime == dart_app) && $mode == debug && $builder_tag == asan ]
full_coverage_test: Skip  # Timeout.
io/file_lock_test: Skip  # Timeout.
io/test_runner_test: Skip  # Timeout.
io/http_client_stays_alive_test: Skip  # Timeout.

[ ($runtime == vm || $runtime == dart_precompiled || $runtime == dart_app) ]
# Failures in secure networking while NSS is replaced with BoringSSL
io/https_client_certificate_test: RuntimeError # Issue 24070
io/secure_socket_renegotiate_test: RuntimeError
io/secure_socket_bad_data_test: RuntimeError  # An error in a secure connection just puts a READ_CLOSED on the stream, rather than signaling an error on the stream.

[ $arch == ia32 ]
no_allow_absolute_addresses_test: SkipByDesign # Not supported.
link_natives_lazily_test: SkipByDesign # Not supported.

[ $noopt || $compiler == precompiler ]
# Stacktraces in precompilation omit inlined frames.
assert_test: Pass, RuntimeError

[ $noopt || $compiler == precompiler ]
map_insert_remove_oom_test: Skip # Heap limit too low. Increasing iteration count to make a higher limit a meaningful test makes it too slow for simarm[64] bots.
io/web_socket_test: Pass, RuntimeError # Issue 24674

[ $noopt || $compiler == precompiler || $compiler == dart2appjit ]
io/test_extension_test: Skip # Platform.executable
io/test_extension_fail_test: Skip # Platform.executable
io/platform_test: Skip # Platform.executable
io/code_collection_test: Skip # Platform.executable
full_coverage_test: Skip # Platform.executable
regress_26031_test: Skip # Platform.resolvedExecutable

[ $compiler == precompiler || $compiler == dart2app || $compiler == dart2appjit ]
io/compile_all_test: Skip # Incompatible flag --compile_all

[ $runtime == dart_app ]
io/stdout_bad_argument_test: Skip # Test exits and so can't generate snapshot.

[ $runtime == dart_precompiled || $runtime == dart_app ]
full_coverage_test: Skip # Platform.executable
http_launch_test: Skip # Platform.executable
io/addlatexhash_test: Skip # Platform.executable
io/file_read_special_device_test: Skip # Platform.executable
io/file_stream_test: Skip # Platform.executable
io/file_test: Skip # Platform.executable
io/http_cross_process_test: Skip # Platform.executable
io/https_unauthorized_test: Skip # Platform.executable
io/platform_resolved_executable_test: Skip # Platform.resolvedExecutable
io/skipping_dart2js_compilations_test: Skip # Platform.executable
io/snapshot_fail_test: Skip # Platform.executable
io/stdin_sync_test: Skip # Platform.executable
io/test_extension_fail_test: Skip # Platform.executable
io/file_read_special_device_test: Skip # Platform.executable
verbose_gc_to_bmu_test: Skip # Platform.executable
io/http_server_close_response_after_error_test: Skip # Platform.executable
io/http_client_stays_alive_test: Skip # Platform.executable
io/print_sync_test: Skip # Platform.executable
io/signals_test: Skip # Platform.executable
io/stdio_implicit_close_test: Skip # Platform.executable
io/stdio_nonblocking_test: Skip # Platform.executable
io/regress_7191_test: Skip # Platform.executable
io/secure_unauthorized_test: Skip # Platform.executable
io/dart_std_io_pipe_test: Skip # Platform.executable
io/platform_test: Skip # Platform.executable
io/socket_cross_process_test: Skip # Platform.executable
io/test_runner_test: Skip # Platform.executable
io/file_lock_test: Skip # Platform.executable
io/code_collection_test: Skip # Platform.executable
io/file_blocking_lock_test: Skip # Platform.executable
io/raw_socket_cross_process_test: Skip # Platform.executable
io/test_extension_test: Skip # Platform.executable
io/named_pipe_script_test: Skip # Platform.executable
io/regress_7679_test: Skip # Platform.executable
io/process_*: Skip # Most use Platform.executable

[ $runtime == dart_precompiled || $mode == product ]
io/skipping_dart2js_compilations_test: CompileTimeError # Imports dart:mirrors
io/test_harness_analyzer_test: CompileTimeError # Imports dart:mirrors
io/test_runner_test: CompileTimeError # Imports dart:mirrors

[ $runtime == dart_precompiled || $runtime == dart_app || $mode == product ]
assert_test: SkipByDesign # Requires checked mode.
no_assert_test: SkipByDesign # Requires checked mode.
io/code_collection_test: Skip # Incompatible flags

# Code coverage is not supported in product mode.
[ $mode == product ]
full_coverage_test: SkipByDesign

# Overriding these flags are not supported in product mode.
[ $mode == product ]
no_profiler_test: SkipByDesign
no_support_coverage_test: SkipByDesign
no_support_debugger_test: SkipByDesign
no_support_disassembler_test: SkipByDesign
no_support_il_printer_test: SkipByDesign
no_support_service_test: SkipByDesign
no_support_timeline_test: SkipByDesign
io/stdio_implicit_close_test: Skip # SkipByDesign

# Following tests are skipped on dart_app as package mapping is not supported.
[ $runtime == dart_precompiled || $runtime == dart_app ]
package/scenarios/packages_file_strange_formatting/mixed_line_ends_test: Skip
package/scenarios/packages_file_strange_formatting/empty_lines_test: Skip
package/scenarios/invalid/invalid_utf8_test: Skip
package/scenarios/invalid/same_package_twice_test: Skip
package/scenarios/invalid/non_existent_packages_file_test: Skip
package/scenarios/empty_packages_file/empty_packages_file_noimports_test: Skip
package/scenarios/packages_option_only/packages_option_only_noimports_test: Skip
package/scenarios/packages_option_only/packages_option_only_test: Skip

[ $arch == simdbc || $arch == simdbc64 ]
# TODO(vegorov) SIMDBC interpreter doesn't support coverage yet.
full_coverage_test: Skip

# SIMDBC interpreter doesn't support lazy linking of natives.
link_natives_lazily_test: SkipByDesign

# SIMDBC interpreter doesn't support --no_lazy_dispatchers
no_lazy_dispatchers_test: SkipByDesign

[ $compiler == precompiler && $runtime == dart_precompiled && $system == android ]
io/*: Skip # Issue #26376

typed_data_isolate_test: Skip # Issue #26376
typed_array_test: Skip # Issue #26376
typed_array_int64_uint64_test: Skip # Issue #26376

oom_error_stacktrace_test: Skip # Issue #26377
out_of_memory_test: Skip # Issue #26377

[ $runtime == vm || $runtime == dart_app || $runtime == dart_precompiled ]
deferred_transitive_import_error_test: Skip # Contains intentional errors.

[ $hot_reload || $hot_reload_rollback ]
deferred_transitive_import_error_test: Crash # Uses deferred imports.
package/*: SkipByDesign # Launches VMs in interesting ways.

[ $builder_tag == no_ipv6 ]
io/http_bind_test: Skip
io/raw_datagram_socket_test: Skip
io/socket_source_address_test: Skip
io/socket_bind_test: Skip
io/http_proxy_advanced_test: Skip
io/http_ipv6_test: Skip
io/socket_ipv6_test: Skip
