# 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.

# This directory contains tests that are intended to show the
# current state of the language.

# These test entries will be valid for vm/dartium (with and without kernel).
[ $compiler == none || $compiler == app_jit || $compiler == dartk || $runtime == dart_precompiled ]
async_star_cancel_while_paused_test: RuntimeError
# This is OK for now, but we may want to change the semantics to match the test.
async_star_pause_test: Fail, OK

# These tests are skipped in the VM because it has "--supermixin"
# functionality enabled unconditionally.  The tests should be removed
# once the same is true for analyzer (#24478) and dart2js (#23773)
mixin_illegal_super_use_test: Skip # Issues 24478 and 23773
mixin_illegal_superclass_test: Skip # Issues 24478 and 23773

# These bugs refer currently ongoing language discussions.
constructor5_test: Fail # Issue 6422
constructor6_test: Fail # Issue 6422

generic_methods_type_expression_test: RuntimeError # Issue 25869 / 27460

# Failures related to super call in ctor initializer list
super_test: Fail, OK
final_field_initialization_order_test: Fail, OK
field_initialization_order_test: Fail, OK
example_constructor_test: Fail, OK
constructor3_test: Fail, OK
constructor2_test: Fail, OK

# Regular bugs which should be fixed.
duplicate_export_negative_test: Fail # Issue 6134

# Non-contractive types are not supported in the vm.
cyclic_type_test/02: Fail, OK
cyclic_type_test/04: Fail, OK
cyclic_type2_test: Fail, OK
least_upper_bound_expansive_test/*: Fail, OK

[ $compiler == none || $compiler == precompiler || $compiler == app_jit ]
dynamic_prefix_core_test/01: RuntimeError # Issue 12478
multiline_strings_test: Fail # Issue 23020

deferred_redirecting_factory_test: Fail # Issue 23408
redirecting_constructor_initializer_test: RuntimeError # Issue 23488

async_star_regression_2238_test: CompileTimeError, RuntimeError # drt only runtime-errs.

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && $checked ]
# These generic functions tests pass for the wrong reason in checked mode,
# because the parsed type parameters are mapped to dynamic type.
generic_methods_function_type_test: Pass # Issue 25869
generic_methods_test: Pass # Issue 25869
generic_methods_new_test: Pass # Issue 25869
generic_local_functions_test: Pass # Issue 25869
generic_functions_test: Pass # Issue 25869
generic_methods_generic_function_parameter_test: Pass # Issue 25869

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && ($runtime == vm || $runtime == dart_precompiled) ]
class_keyword_test/02: MissingCompileTimeError # Issue 13627
unicode_bom_test: Fail # Issue 16067
vm/debug_break_enabled_vm_test/01: Crash, OK # Expected to hit breakpoint.

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && $checked ]
type_variable_bounds4_test/01: Fail # Issue 14006

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && (($runtime == vm || $runtime == dart_precompiled) || $runtime == drt || $runtime == dartium) ]
dynamic_prefix_core_test/none: Fail # Issue 12478
export_ambiguous_main_negative_test: Fail # Issue 14763

[ $compiler == none && $runtime == dartium && $unchecked ]
assertion_test: Fail # Issue 14651.
generic_test: Fail # Issue 14651.
list_literal4_test: Fail # Issue 14651.
map_literal4_test: Fail # Issue 14651.
named_parameters_type_test/01: Fail # Issue 14651.
named_parameters_type_test/02: Fail # Issue 14651.
named_parameters_type_test/03: Fail # Issue 14651.
positional_parameters_type_test/01: Fail # Issue 14651.
positional_parameters_type_test/02: Fail # Issue 14651.
type_checks_in_factory_method_test: Fail # Issue 14651.
vm/type_vm_test: Fail # Issue 14651.

[ $compiler == none && ($runtime == dartium || $runtime == drt) ]
# Other issues.
issue13474_test: Pass, Fail # Issue 14651.
config_import_test: Fail # Issue 14651.
vm/optimized_guarded_field_isolates_test: RuntimeError, OK  # Uses Isolate.spawn.
main_test/01: Fail # Issue 20028
main_test/02: Fail # Issue 20028
main_test/04: Fail # Issue 20028
main_test/05: Fail # Issue 20028
main_test/21: Fail # Issue 20028
main_test/42: Fail # Issue 20028
mirror_in_static_init_test: Fail # Issue 22071
vm/debug_break_enabled_vm_test/*: Skip # Issue 14651.
vm/regress_28325_test: SkipByDesign  # Requires dart:io

# These tests need the flag --initializing-formal-access to pass:
initializing_formal_access_test: Skip
initializing_formal_capture_test: Skip
initializing_formal_final_test: Skip
initializing_formal_promotion_test: Skip
initializing_formal_type_test: Skip
parameter_initializer5_test: Skip

# Experimental feature: Syntactic support for generic methods.
# Skip these in dartium, because the test framework can't pass VM flags to
generic_methods_test: Skip # Issue 25869
generic_functions_test: Skip # Issue 25869
generic_local_functions_test: Skip # Issue 25869
generic_sends_test: Skip # Issue 25869
generic_methods_new_test: Skip # Issue 25869
generic_methods_function_type_test: Skip # Issue 25869
generic_methods_type_expression_test: Skip # Issue 25869

config_import_test: Skip  # Issue 26250

[ $compiler == none && $runtime == dartium && $system == linux && $arch != x64 ]
issue_22780_test/01: Pass, Timeout # Issue 24473

[ $compiler == none && $runtime == dartium && $system == linux && $arch == x64 ]
async_await_test: Skip # Issue 26198

[ $compiler == none && $runtime == drt ]
disassemble_test: Pass, Fail # Issue 18122

[ ($runtime == vm || $runtime == dart_precompiled) && $arch == mips && $mode == debug ]
large_class_declaration_test: SkipSlow # Times out. Issue 20352

[ ($runtime == vm || $runtime == dart_precompiled) && $arch == arm64 ]
large_class_declaration_test: SkipSlow # Uses too much memory.

[ $compiler == none && ($runtime == dartium || $runtime == drt) && $mode == debug ]
large_class_declaration_test: SkipSlow # Times out. Issue 20352

[ ($runtime == vm || $runtime == dart_precompiled) && ( $arch == simarm || $arch == arm || $arch == simarmv6 || $arch == armv6 || $arch == simarmv5te || $arch == armv5te || $arch == simarm64 || $arch == arm64 || $arch == simmips || $arch == mips) ]
vm/load_to_load_unaligned_forwarding_vm_test: Pass, Crash # Unaligned offset. Issue 22151
vm/unaligned_float_access_literal_index_test: Pass, Crash # Unaligned offset. Issue 22151
vm/unaligned_float_access_literal_index_test: Pass, Crash # Unaligned offset. Issue 22151


[ $compiler == none && ($runtime == dartium || $runtime == drt) ]
issue23244_test: Fail # Issue 23244

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && (($runtime == vm || $runtime == dart_precompiled) || $runtime == drt || $runtime == dartium) && $arch == ia32 ]
vm/regress_24517_test: Pass, Fail # Issue 24517.

[ $compiler == precompiler && $runtime == dart_precompiled ]
vm/regress_27671_test: Skip # Unsupported

[ $runtime == dart_precompiled ]
# Stacktraces in precompilation omit inlined frames.
full_stacktrace1_test: Pass, RuntimeError
full_stacktrace2_test: Pass, RuntimeError
full_stacktrace3_test: Pass, RuntimeError
stack_trace_test: Pass, RuntimeError
stacktrace_rethrow_error_test: Pass, RuntimeError
stacktrace_rethrow_nonerror_test: Pass, RuntimeError
stacktrace_test: Pass, RuntimeError
vm/regress_28325_test: RuntimeError  # Missing source position in AOT.


[ $runtime == dart_precompiled || $mode == product ]
# Imports dart:mirrors
const_evaluation_test: SkipByDesign
deferred_constraints_constants_test: SkipByDesign
enum_mirror_test: SkipByDesign
field_increment_bailout_test: SkipByDesign
instance_creation_in_function_annotation_test: SkipByDesign
invocation_mirror2_test: SkipByDesign
invocation_mirror_invoke_on2_test: SkipByDesign
invocation_mirror_invoke_on_test: SkipByDesign
issue21079_test: SkipByDesign
many_overridden_no_such_method_test: SkipByDesign
no_such_method_test: SkipByDesign
null_test/none: SkipByDesign
overridden_no_such_method_test: SkipByDesign
redirecting_factory_reflection_test: SkipByDesign
regress_13462_0_test: SkipByDesign
regress_13462_1_test: SkipByDesign
regress_18535_test: SkipByDesign
super_call4_test: SkipByDesign
super_getter_setter_test: SkipByDesign
vm/reflect_core_vm_test: SkipByDesign
regress_28255_test: SkipByDesign

[ $mode == product || $compiler == app_jit || $compiler == precompiler ]
# Deferred loading happens eagerly. Issue #27587
regress_23408_test: Fail
deferred_inheritance_constraints_test/redirecting_constructor: Fail
deferred_load_constants_test/02: Fail
deferred_load_constants_test/03: Fail
deferred_load_constants_test/05: Fail
deferred_not_loaded_check_test: Fail
vm/regress_27201_test: Fail

[ $compiler == precompiler ]
# Deferred loading happens eagerly. Issue #27587
deferred_global_test: Fail
vm/regress_27201_test: Fail

[ $compiler == precompiler ]
implicit_closure_test: Skip # Incompatible flag: --use_slow_path
deopt_inlined_function_lazy_test: Skip # Incompatible flag: --deoptimize-alot

[ $runtime == dart_precompiled || $compiler == app_jit ]
ct_const2_test: Skip # Incompatible flag: --compile_all
hello_dart_test: Skip # Incompatible flag: --compile_all
vm/type_vm_test: RuntimeError # Expects line and column numbers
vm/type_cast_vm_test: RuntimeError # Expects line and column numbers

[ $mode == product ]
issue13474_test: SkipByDesign # Requires checked mode.
assertion_test: SkipByDesign # Requires checked mode.
named_parameters_type_test/01: SkipByDesign # Requires checked mode.
named_parameters_type_test/02: SkipByDesign # Requires checked mode.
named_parameters_type_test/03: SkipByDesign # Requires checked mode.
type_checks_in_factory_method_test: SkipByDesign # Requires checked mode.
positional_parameters_type_test/01: SkipByDesign # Requires checked mode.
positional_parameters_type_test/02: SkipByDesign # Requires checked mode.
list_literal4_test: SkipByDesign # Requires checked mode.
generic_test: SkipByDesign # Requires checked mode.
map_literal4_test: SkipByDesign # Requires checked mode.

vm/type_vm_test: Fail,OK  # Expects exact type name.


[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && $browser ]
# The following tests are supposed to fail.
library_env_test/has_io_support: RuntimeError, OK
library_env_test/has_no_html_support: RuntimeError, OK

[ ($compiler == none || $compiler == precompiler || $compiler == app_jit) && $browser != true ]
# The following tests are supposed to fail.
library_env_test/has_html_support: RuntimeError, OK
library_env_test/has_no_io_support: RuntimeError, OK

[ ($compiler == none || $compiler == app_jit) && $mode != product ]
# The following tests are supposed to fail.
library_env_test/has_no_mirror_support: RuntimeError, OK

[ $runtime == dart_precompiled || $mode == product ]
# The following tests are supposed to fail.
library_env_test/has_mirror_support: RuntimeError, OK

[ $hot_reload || $hot_reload_rollback ]
static_closure_identical_test: Pass, Fail # Closure identity
cha_deopt1_test: Crash # Requires deferred libraries
cha_deopt2_test: Crash # Requires deferred libraries
cha_deopt3_test: Crash # Requires deferred libraries
deferred_call_empty_before_load_test: Crash # Requires deferred libraries
deferred_closurize_load_library_test: Crash # Requires deferred libraries
deferred_constant_list_test: Crash # Requires deferred libraries
deferred_constraints_constants_test: Crash # Requires deferred libraries
deferred_constraints_type_annotation_test: Crash # Requires deferred libraries
deferred_function_type_test: Crash # Requires deferred libraries
deferred_global_test: Crash # Requires deferred libraries
deferred_import_core_test: Crash # Requires deferred libraries
deferred_inlined_test: Crash # Requires deferred libraries
deferred_inheritance_constraints_test: Crash # Requires deferred libraries
deferred_load_constants_test: Crash # Requires deferred libraries
deferred_load_inval_code_test: Crash # Requires deferred libraries
deferred_load_library_wrong_args_test: Crash # Requires deferred libraries
deferred_mixin_test: Crash # Requires deferred libraries
deferred_no_such_method_test: Crash # Requires deferred libraries
deferred_not_loaded_check_test: Crash # Requires deferred libraries
deferred_only_constant_test: Crash # Requires deferred libraries
deferred_optimized_test: Crash # Requires deferred libraries
deferred_redirecting_factory_test: Crash # Requires deferred libraries
deferred_regression_22995_test: Crash # Requires deferred libraries
deferred_shadow_load_library_test: Crash # Requires deferred libraries
deferred_shared_and_unshared_classes_test: Crash # Requires deferred libraries
deferred_static_seperate_test: Crash # Requires deferred libraries
deferred_super_dependency_test: Pass, Crash # Requires deferred libraries
deferred_type_dependency_test: Crash # Requires deferred libraries
issue_1751477_test: Crash # Requires deferred libraries
regress_23408_test: Crash # Requires deferred libraries
regress_22443_test: Crash # Requires deferred libraries
regress_28278_test: Crash # Requires deferred libraries
conditional_import_test: Crash # Requires deferred libraries
conditional_import_string_test: Crash # Requires deferred libraries
override_field_method1_negative_test: Pass, Crash # Issue 27835
override_field_method2_negative_test: Pass, Crash # Issue 27835
override_field_method4_negative_test: Pass, Crash # Issue 27835
override_field_method5_negative_test: Pass, Crash # Issue 27835
vm/regress_27201_test: Pass, Crash # Requires deferred libraries

[$runtime != vm || $compiler != none]
assert_initializer_test: SKIP  # not implemented yet, experiment is VM only.

[$runtime == vm && $compiler == none && $unchecked]
assert_initializer_test/*: MissingCompileTimeError, OK  # asserts shouldn't fail in unchecked mode.
assert_initializer_test/none: pass

[$runtime == vm && $compiler == none && $checked]
# The VM doesn't enforce that potentially const expressions are actually
# const expressions when the constructor is called with `const`.
assert_initializer_test/4*: MissingCompileTimeError # Issue 392.

[$runtime == vm && $compiler == none]
duplicate_part_test/01: MissingCompileTimeError # Issue 27516

[$runtime == vm && $compiler == none && $system == windows && $arch == ia32]
vm/optimized_stacktrace_test: Pass, Crash # Issue 28276

[$runtime == vm && $compiler == none && $system == fuchsia]
# Use package:unittest
async_await_test: RuntimeError
async_star_test: RuntimeError
# TODO(zra): Investigate
vm/regress_28325_test: RuntimeError
closure_cycles_test: Crash

[$compiler == dart2analyzer]
vm/regress_27201_test: SkipByDesign # Loads bad library, so will always crash.
config_import_corelib_test: StaticWarning, OK
