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

[ $runtime == vm ]
# These tests are timing dependent and should be non-flaky once the fix for
# https://github.com/dart-lang/co19/issues/86 is merged into master.
# (They are skipped on $runtime == pre_compiled below.)
LibTest/isolate/Isolate/spawnUri_A01_t06: Pass, Fail # Issue 28269
LibTest/isolate/Isolate/spawnUri_A01_t07: Pass, Fail  # Issue 28269
LibTest/isolate/Isolate/spawn_A04_t01: Pass, Fail  # Issue 28269

[$runtime == vm && $compiler == none && $system == fuchsia]
*: Skip  # Tests not included in the image.

[ $runtime == vm || $runtime == dart_precompiled ]
# Failures ok in tests below. VM moves super initializer to end of list.
Language/Classes/Constructors/Generative_Constructors/execution_t03: Fail, OK
Language/Expressions/Instance_Creation/New/execution_t04: Fail, OK
Language/Expressions/Instance_Creation/New/execution_t06: Fail, OK

LibTest/core/RegExp/Pattern_semantics/firstMatch_NonEmptyClassRanges_A01_t01: Fail # Issue 22200
LibTest/core/RegExp/Pattern_semantics/firstMatch_NonEmptyClassRanges_A01_t05: Fail # Issue 22200
LibTest/core/RegExp/Pattern_semantics/firstMatch_NonEmptyClassRanges_A01_t06: Fail # Issue 22200

LibTest/core/int/toRadixString_A01_t01: Fail # co19 issue 492

Language/Statements/Switch/syntax_t02: fail # Dart issue 12908
Language/Statements/Labels/syntax_t03: fail # Dart issue 2238
Language/Libraries_and_Scripts/Exports/reexport_t01: fail # Dart issue 12916
Language/Libraries_and_Scripts/Exports/reexport_t02: fail # Dart issue 12916

Language/Statements/Assert/execution_t02: skip # co19 issue 734
Language/Statements/Assert/execution_t03: skip # co19 issue 734
Language/Statements/Assert/type_t02: skip # co19 issue 734
Language/Statements/Assert/type_t05: skip # co19 issue 734

LibTest/isolate/Isolate/spawnUri_A02_t02: Skip # Issue 15974
LibTest/isolate/Isolate/spawnUri_A02_t03: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A03_t02: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A04_t01: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A04_t04: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A06_t03: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A06_t05: Skip # Issue 15974
LibTest/isolate/Isolate/spawn_A04_t03: Skip # Flaky, Issue 15974

LibTest/core/Symbol/Symbol_A01_t03: RuntimeError # Issue 13596
LibTest/core/Symbol/Symbol_A01_t05: RuntimeError # Issue 13596

[ $runtime == vm || $runtime == dart_precompiled ]
LibTest/typed_data/Float32x4/reciprocalSqrt_A01_t01: Pass, Fail # co19 issue 599
LibTest/typed_data/Float32x4/reciprocal_A01_t01: Pass, Fail # co19 issue 599
# With asynchronous loading, the load errors in these tests are no longer recognized as compile errors:
Language/Libraries_and_Scripts/Imports/invalid_uri_t02: Fail
Language/Libraries_and_Scripts/Exports/invalid_uri_t02: Fail
Language/Libraries_and_Scripts/Parts/syntax_t06: Fail

[ ($runtime == vm || $runtime == dart_precompiled ) && $mode == debug ]
LibTest/core/List/List_class_A01_t02: Pass, Slow

[ ($runtime == vm || $runtime == dart_precompiled) && ($arch != x64 && $arch != simarm64 && $arch != arm64 && $arch != simdbc64 && $arch != simdbc) ]
LibTest/core/int/operator_left_shift_A01_t02: Fail # co19 issue 129

[ ($compiler == none || $compiler == precompiler) && ($runtime == vm || $runtime == dart_precompiled) && ($arch == mips || $arch == arm64) ]
# These tests take too much memory (300 MB) for our 1 GB test machine.
# co19 issue 673. http://code.google.com/p/co19/issues/detail?id=673
LibTest/core/List/List_class_A01_t02: Skip # co19 issue 673
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Skip # co19 issue 673
LibTest/collection/ListBase/ListBase_class_A01_t02: Skip # co19 issue 673

[ ($runtime == vm || $runtime == dart_precompiled) && ($arch == simarm || $arch == simarmv6 || $arch == simarmv5te || $arch == simmips || $arch == simarm64 || $arch == simdbc || $arch == simdbc64) ]
LibTest/collection/DoubleLinkedQueue/DoubleLinkedQueue_class_A01_t01: Skip  # Timeout
LibTest/collection/IterableBase/IterableBase_class_A01_t02: Skip  # Timeout
LibTest/collection/IterableMixin/IterableMixin_class_A02_t01: Skip  # Timeout
LibTest/collection/ListBase/ListBase_class_A01_t01: Skip  # Timeout
LibTest/collection/ListBase/ListBase_class_A01_t02: Skip  # Timeout
LibTest/collection/ListMixin/ListMixin_class_A01_t01: Skip  # Timeout
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Skip  # Timeout
LibTest/core/Uri/Uri_A06_t03: Skip  # Timeout

[ $system == windows ]
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Pass, Slow
LibTest/collection/ListBase/ListBase_class_A01_t02: Pass, Slow

[ $runtime == vm || $runtime == dart_precompiled ]
LibTest/isolate/Isolate/spawn_A02_t01: Skip # co19 issue 667
LibTest/html/*: SkipByDesign # dart:html not supported on VM.
LayoutTests/fast/*: SkipByDesign # DOM not supported on VM.
WebPlatformTest/*: SkipByDesign # dart:html not supported on VM.

[ ($runtime == vm || $runtime == dart_precompiled) && $mode == debug && $builder_tag == asan ]
Language/Types/Interface_Types/subtype_t27: Skip  # Issue 21174.

[ $runtime == vm || $runtime == dart_precompiled ]
# co19 update Sep 29, 2015 (3ed795ea02e022ef19c77cf1b6095b7c8f5584d0)
Language/Classes/Getters/type_object_t01: RuntimeError # Issue 23721
Language/Classes/Getters/type_object_t02: RuntimeError # Issue 23721
Language/Classes/Setters/type_object_t01: RuntimeError # Issue 23721
Language/Classes/Setters/type_object_t02: RuntimeError # Issue 23721
Language/Classes/Static_Methods/type_object_t01: RuntimeError # Issue 23721
Language/Classes/Static_Methods/type_object_t02: RuntimeError # Issue 23721
Language/Expressions/Identifier_Reference/built_in_identifier_t35: MissingCompileTimeError # Issue 25732
Language/Expressions/Identifier_Reference/built_in_identifier_t36: MissingCompileTimeError # Issue 25732
Language/Expressions/Identifier_Reference/built_in_identifier_t37: MissingCompileTimeError # Issue 25732
Language/Expressions/Identifier_Reference/built_in_identifier_t53: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t54: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t55: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t56: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t57: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t58: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t59: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t60: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t61: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t62: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t63: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t64: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t65: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t66: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t67: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_identifier_t68: MissingCompileTimeError # Issue 25733
Language/Expressions/Identifier_Reference/built_in_not_dynamic_t14: MissingCompileTimeError # Issue 25732
Language/Expressions/Identifier_Reference/built_in_not_dynamic_t19: MissingCompileTimeError # Issue 25772
Language/Expressions/Method_Invocation/Ordinary_Invocation/object_method_invocation_t01: MissingCompileTimeError # Issue 25496
Language/Expressions/Method_Invocation/Ordinary_Invocation/object_method_invocation_t02: MissingCompileTimeError # Issue 25496
Language/Expressions/Assignment/super_assignment_failed_t05: RuntimeError # Issue 25671
Language/Expressions/Function_Invocation/async_generator_invokation_t08: Fail # Issue 25967
Language/Expressions/Function_Invocation/async_generator_invokation_t10: Fail # Issue 25967
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t01: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t02: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t03: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t04: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t05: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t06: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t07: MissingCompileTimeError # Issue 24332
Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/class_object_member_t08: MissingCompileTimeError # Issue 24332
Language/Mixins/Mixin_Application/syntax_t16: CompileTimeError # Issue 25765
Language/Mixins/declaring_constructor_t05: MissingCompileTimeError # Issue 24767
Language/Mixins/declaring_constructor_t06: MissingCompileTimeError # Issue 24767
Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_t08: RuntimeError # Issue 25748
Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_t09: RuntimeError # Issue 25748
Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_t10: RuntimeError # Issue 25748
Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_sync_t05: RuntimeError # Issue 25662,25634
Language/Statements/Yield_and_Yield_Each/Yield_Each/location_t01: MissingCompileTimeError # Issue 25495
Language/Statements/Yield_and_Yield_Each/Yield_Each/location_t03: MissingCompileTimeError # Issue 25495
Language/Statements/Yield_and_Yield_Each/Yield_Each/location_t05: MissingCompileTimeError # Issue 25495

[ $runtime == dart_precompiled || $mode == product ]
Language/Metadata/*: SkipByDesign # Uses dart:mirrors
Language/Expressions/Null/instance_of_class_null_t01: Skip # Uses dart:mirrors

[ $compiler == precompiler || $compiler == app_jit || $mode == product ]
Language/Libraries_and_Scripts/Imports/deferred_import_t01: Skip # Eager loading
Language/Libraries_and_Scripts/Imports/deferred_import_t02: Skip # Eager loading
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t01: Skip # Eager loading
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t02: Skip # Eager loading

[ $runtime == dart_precompiled ]
LibTest/isolate/Isolate/spawnUri*: SkipByDesign # Isolate.spawnUri

[ $compiler == precompiler ]
LibTest/collection/ListBase/ListBase_class_A01_t02: Pass, Timeout
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Pass, Timeout
LibTest/core/Map/Map_class_A01_t04: Pass, Timeout
LibTest/core/Uri/encodeQueryComponent_A01_t02: Pass, Timeout

[ $compiler == precompiler || $compiler == app_jit ]
Language/Mixins/Mixin_Application/error_t01: Pass
Language/Mixins/Mixin_Application/error_t02: Pass
Language/Mixins/declaring_constructor_t01: Pass

[ ($arch == simdbc || $arch == simdbc64) && $mode == debug ]
# TODO(vegorov) These tests are very slow on unoptimized SIMDBC
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Timeout
LibTest/collection/ListBase/ListBase_class_A01_t02: Timeout

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

LibTest/math/log_A01_t01: RuntimeError # Precision of Math.log (Issue #18998)
Language/Expressions/Object_Identity/double_t02: RuntimeError # Issue #26374

[ $compiler == precompiler && $runtime == dart_precompiled && $arch == simarm ]
LibTest/typed_data/Float32x4/operator_division_A01_t02: RuntimeError # Issue #26675

[ $hot_reload || $hot_reload_rollback ]
Language/Expressions/Assignment/prefix_object_t02: Skip # Requires deferred libraries
Language/Expressions/Constants/constant_constructor_t03: Skip # Requires deferred libraries
Language/Expressions/Constants/identifier_denotes_a_constant_t06: Skip # Requires deferred libraries
Language/Expressions/Constants/identifier_denotes_a_constant_t07: Skip # Requires deferred libraries
Language/Expressions/Constants/static_constant_t06: Skip # Requires deferred libraries
Language/Expressions/Constants/static_constant_t07: Skip # Requires deferred libraries
Language/Expressions/Constants/top_level_function_t04: Skip # Requires deferred libraries
Language/Expressions/Constants/top_level_function_t05: Skip # Requires deferred libraries
Language/Expressions/Instance_Creation/Const/deferred_type_t01: Skip # Requires deferred libraries
Language/Expressions/Instance_Creation/Const/deferred_type_t02: Skip # Requires deferred libraries
Language/Expressions/Instance_Creation/New/evaluation_t19: Skip # Requires deferred libraries
Language/Expressions/Instance_Creation/New/evaluation_t20: Skip # Requires deferred libraries
Language/Expressions/Type_Cast/evaluation_t10: Skip # Requires deferred libraries
Language/Expressions/Type_Test/evaluation_t10: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/deferred_import_t01: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/deferred_import_t02: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t01: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t02: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t03: Skip # Requires deferred libraries
Language/Libraries_and_Scripts/Imports/static_type_t01: Skip # Requires deferred libraries
Language/Types/Dynamic_Type_System/deferred_type_error_t01: Skip # Requires deferred libraries
Language/Types/Static_Types/deferred_type_t01: Skip # Requires deferred libraries
LibTest/async/DeferredLibrary/DeferredLibrary_A01_t01: Skip # Requires deferred libraries
LibTest/collection/DoubleLinkedQueue/DoubleLinkedQueue_class_A01_t01: Pass, Timeout
LibTest/collection/IterableBase/IterableBase_class_A01_t02: Pass, Timeout
LibTest/collection/IterableMixin/IterableMixin_class_A02_t01: Pass, Timeout
LibTest/collection/ListBase/ListBase_class_A01_t01: Pass, Timeout
LibTest/collection/ListBase/ListBase_class_A01_t02: Pass, Timeout
LibTest/collection/ListMixin/ListMixin_class_A01_t01: Pass, Timeout
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Pass, Timeout
LibTest/core/List/List_class_A01_t01: Pass, Timeout
LibTest/core/List/List_class_A01_t02: Pass, Timeout
LibTest/core/Map/Map_class_A01_t04: Pass, Timeout
LibTest/core/Uri/Uri_A06_t03: Pass, Timeout
LibTest/core/Uri/encodeQueryComponent_A01_t02: Pass, Timeout
LibTest/isolate/Isolate/spawn_A01_t04: Pass, Timeout
LibTest/isolate/ReceivePort/take_A01_t02: Skip # Issue 27773

[ $runtime == vm && $mode == release && $system == linux && ($arch == x64 || $arch == ia32)]
LibTest/isolate/Isolate/spawn_A04_t05: Pass, Slow

[ $runtime == vm && $mode == release && $system == linux && $arch == ia32]
service/dev_fs_spawn_test: Pass, Fail # Issue 28411
