# Copyright (c) 2017, 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.
# Sections in this file should contain "$compiler == dartk" or
# "$compiler == dartkp".
#
# Note: Sections in this file are normalized so we can update them with
# automated tools. Please add any new status lines affecting those two compilers
# in the existing sections, if possible keep the alphabetic ordering. If we are
# missing a section you need, please reach out to sigmund@ to see the best way
# to add them.

[ $compiler == app_jitk ]
io/file_error_test: RuntimeError
io/file_test: RuntimeError
io/http_auth_digest_test: RuntimeError
io/http_auth_test: RuntimeError
io/http_compression_test: RuntimeError
io/http_cookie_date_test: CompileTimeError
io/http_headers_test: CompileTimeError
io/http_parser_test: CompileTimeError
io/http_redirect_test: RuntimeError
io/http_reuse_server_port_test: RuntimeError
io/http_server_response_test: RuntimeError
io/platform_test: RuntimeError
io/regress_10026_test: RuntimeError
io/secure_socket_argument_test: CompileTimeError
io/socket_upgrade_to_secure_test: RuntimeError
io/test_extension_fail_test: RuntimeError
io/test_extension_test: RuntimeError
io/web_socket_pipe_test: RuntimeError
io/web_socket_protocol_processor_test: CompileTimeError
io/zlib_test: RuntimeError
oom_error_stacktrace_test: RuntimeError
out_of_memory_test: RuntimeError

[ $fasta ]
deferred_transitive_import_error_test: CompileTimeError
package/package1_test: CompileTimeError
package/package_test: CompileTimeError
package/scenarios/invalid/same_package_twice_test: CompileTimeError

[ $arch != simarm && $arch != simarm64 && $arch != simdbc64 && $compiler != dartkb && $fasta ]
package/scenarios/invalid/invalid_utf8_test: CompileTimeError # Issue 32085
package/scenarios/invalid/non_existent_packages_file_test: CompileTimeError # Issue 32085

[ $arch == simarm64 && $strong && ($compiler == dartk || $compiler == dartkb) ]
io/http_bind_test: Pass, Slow

[ $builder_tag == optimization_counter_threshold && ($compiler == dartk || $compiler == dartkb) ]
map_insert_remove_oom_test: Skip # Heap limit too low.

[ $compiler == app_jitk && ($mode == debug || $mode == release) ]
dart_developer_disabled_env_test: RuntimeError

# The failures below still need to be investigated and possibly fixed, or marked as skipped.
[ $compiler == dartkb && $strong ]
io/dart_std_io_pipe_test: Pass, Crash # Trap bytecode encountered.
io/file_lock_test: Pass, Crash # Trap bytecode encountered.
io/http_advanced_test: Pass, RuntimeError # Please triage.
io/http_client_connect_test: Pass, RuntimeError # Please triage.
io/http_outgoing_size_test: Pass, RuntimeError # Please triage.
io/platform_test: RuntimeError # Platform.script points to dill file.
io/process_sync_test: Pass, Crash # Bytecode compilation.
io/test_extension_fail_test: RuntimeError # Platform.script points to dill file.
io/test_extension_test: RuntimeError # Platform.script points to dill file.
io/web_socket_compression_test: Pass, RuntimeError # Please triage.
io/web_socket_ping_test: Pass, RuntimeError # Please triage.
io/web_socket_protocol_test: Pass, RuntimeError # Please triage.
io/web_socket_typed_data_test: Pass, RuntimeError # Please triage.
no_lazy_dispatchers_test: SkipByDesign # KBC interpreter doesn't support --no_lazy_dispatchers
package/scenarios/packages_file_strange_formatting/empty_lines_test: CompileTimeError # Please triage.
package/scenarios/packages_file_strange_formatting/mixed_line_ends_test: CompileTimeError # Please triage.
package/scenarios/packages_option_only/packages_option_only_test: CompileTimeError # Please triage.
typed_data_isolate_test: Pass, Crash, Timeout # Please triage.

[ $compiler == dartkp && $mode == debug && $runtime == dart_precompiled && $strong ]
io/compile_all_test: Crash # Issue 32373
io/raw_socket_test: Crash
io/skipping_dart2js_compilations_test: Crash
io/socket_exception_test: Pass, Crash
io/socket_finalizer_test: Pass, Crash
io/socket_info_ipv4_test: Pass, Crash
io/socket_info_ipv6_test: Pass, Crash
io/socket_port_test: Pass, Crash

[ $compiler == dartkp && $mode == product && $runtime == dart_precompiled && $strong ]
io/compile_all_test: Pass

# ===== dartkp + dart_precompiled status lines =====
[ $compiler == dartkp && $runtime == dart_precompiled && $system != windows && $strong ]
io/namespace_test: RuntimeError

[ $compiler == dartkp && $runtime == dart_precompiled && $strong ]
dwarf_stack_trace_test: RuntimeError
io/compile_all_test: RuntimeError # Issue 32338
io/file_fuzz_test: RuntimeError, Pass
io/http_client_connect_test: Skip # Flaky.
io/http_close_test: Crash
io/http_compression_test: RuntimeError
io/http_content_length_test: Skip # Flaky.
io/http_cookie_test: Skip # Flaky
io/http_proxy_advanced_test: Skip # Flaky
io/http_proxy_test: Skip # Flaky.
io/http_response_deadline_test: Skip # Flaky.
io/http_reuse_server_port_test: Skip # Flaky.
io/http_server_close_response_after_error_test: Skip # Flaky.
io/http_shutdown_test: Skip # Flaky.
io/https_client_certificate_test: Crash
io/platform_test: Crash
io/raw_datagram_socket_test: Skip # Flaky.
io/raw_secure_server_closing_test: Skip # Flaky
io/raw_socket_test: Crash
io/secure_builtin_roots_test: Timeout, Pass # Times out on bots.
io/secure_multiple_client_server_test: Skip # Flaky.
io/secure_server_closing_test: Skip # Flaky.
io/secure_server_socket_test: Skip # Flaky.
io/secure_socket_renegotiate_test: Crash
io/socket_many_connections_test: Skip # Flaky
io/web_socket_error_test: Skip # Flaky
io/web_socket_ping_test: Skip # Flaky.
io/web_socket_test: Skip # Flaky.
map_insert_remove_oom_test: Skip # Heap limit too low.
no_support_debugger_test: Skip # kernel-service snapshot not compatible with flag disabled
regress_29350_test: MissingCompileTimeError
regress_29350_test/none: Pass # Issue 31537

[ $compiler == dartkp && !$strong ]
*: SkipByDesign

[ $compiler == fasta && $strong ]
io/http_cookie_date_test: CompileTimeError
io/http_headers_test: CompileTimeError
io/http_parser_test: CompileTimeError
io/secure_socket_argument_test: CompileTimeError
io/web_socket_protocol_processor_test: CompileTimeError

[ $mode == debug && $runtime == vm && $strong && ($compiler == dartk || $compiler == dartkb) ]
io/file_lock_test: Slow, Pass
io/raw_socket_test: Crash
io/socket_exception_test: Pass, Crash
io/socket_finalizer_test: Pass, Crash
io/socket_info_ipv4_test: Pass, Crash
io/socket_info_ipv6_test: Pass, Crash
io/socket_port_test: Pass, Crash

[ $mode == debug && $hot_reload && ($compiler == dartk || $compiler == dartkb) ]
io/web_socket_ping_test: Crash, Pass

[ $runtime == vm && $strong && ($compiler == dartk || $compiler == dartkb) ]
io/http_client_request_test: Pass, Timeout
io/http_compression_test: RuntimeError
io/platform_resolved_executable_test/03: Pass, RuntimeError
io/platform_resolved_executable_test/04: Pass, RuntimeError
io/secure_builtin_roots_test: Pass, Timeout
io/socket_finalizer_test: Pass, Timeout
no_support_debugger_test: Skip # kernel-service snapshot not compatible with flag disabled
regress_29350_test: MissingCompileTimeError
regress_29350_test/none: Pass # Issue 31537

[ $system == windows && $strong && ($compiler == dartk || $compiler == dartkb) ]
io/compile_all_test: Pass, Fail # Possibly related to issue 32373
map_insert_remove_oom_test: Skip # Heap limit too low.

[ $system == windows && ($compiler == dartk || $compiler == dartkb) ]
io/secure_builtin_roots_test: Skip # Issues 32137 and 32138.
io/test_extension_fail_test: RuntimeError, Pass # Issue 32137.
io/test_extension_test: RuntimeError, Pass # Issue 32137.
io/wait_for_event_isolate_test: Skip # Issues 32137 and 32138.

[ $fasta && $strong ]
package/package_isolate_test: CompileTimeError

[ $fasta && !$strong ]
regress_29350_test/none: MissingCompileTimeError

[ $hot_reload && ($compiler == dartk || $compiler == dartkb) ]
io/http_no_reason_phrase_test: Pass, Crash
io/http_outgoing_size_test: Pass, Crash

[ $hot_reload_rollback && ($compiler == dartk || $compiler == dartkb) ]
io/directory_chdir_test: Skip # Timeout
io/echo_server_stream_test: Pass, Slow

# Enabling of dartk for sim{arm,arm64,dbc64} revealed these test failures, which
# are to be triaged.  Isolate tests are skipped on purpose due to the usage of
# batch mode.
[ $strong && ($arch == simarm || $arch == simarm64 || $arch == simdbc64) && ($compiler == dartk || $compiler == dartkb) ]
fragmentation_test: Timeout, Pass
io/dart_std_io_pipe_test: Timeout, Pass
io/directory_list_sync_test: Timeout, Pass # Please triage.
io/file_blocking_lock_test: Pass, Crash # Please triage.
io/file_lock_test: Slow, Pass
io/platform_test: RuntimeError # Platform.script points to dill file.
io/process_sync_test: Timeout, Pass
io/test_extension_fail_test: RuntimeError # Platform.script points to dill file.
io/test_extension_test: RuntimeError # Platform.script points to dill file.
map_insert_remove_oom_test: Skip # Heap limit too low.
package/scenarios/packages_file_strange_formatting/empty_lines_test: CompileTimeError # Please triage.
package/scenarios/packages_file_strange_formatting/mixed_line_ends_test: CompileTimeError # Please triage.
package/scenarios/packages_option_only/packages_option_only_test: CompileTimeError # Please triage.

# ===== Skip dartk and darkp in !$strong mode ====
[ !$strong && ($compiler == dartk || $compiler == dartkb) ]
*: SkipByDesign

[ !$strong && ($compiler == dartk || $compiler == dartkb || $compiler == dartkp || $runtime == dart_precompiled || $runtime == vm) ]
*: SkipByDesign # standalone_2 is only supported in strong mode.

[ ($compiler == dartk || $compiler == dartkb) && ($hot_reload || $hot_reload_rollback) ]
io/addlatexhash_test: Skip # Timeout
io/http_advanced_test: Skip # Timeout
io/http_auth_digest_test: Crash
io/http_auth_test: Skip # Timeout
io/http_basic_test: Pass, Crash # Sporadic crash, issue 33824
io/http_proxy_advanced_test: Skip # Timeout
io/http_read_test: Skip # Timeout
io/non_utf8_directory_test: Pass, Timeout
io/non_utf8_file_test: Pass, Timeout
io/non_utf8_link_test: Pass, Timeout
io/pipe_server_test: Skip # Timeout
io/socket_close_test: Skip # Timeout
io/socket_many_connections_test: Skip # Timeout
io/test_extension_fail_test: RuntimeError
io/test_extension_test: RuntimeError
io/web_socket_compression_test: Skip # Timeout
io/web_socket_test: Skip # Timeout
