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

[ $compiler == dart2js ]
class_test: Fail
statements_test: Fail
typed_locals_test: Fail
no_such_method_test: Fail # Wrong Invocation.memberName.
constant_javascript_semantics4_test: Fail, OK
mirrors_used_closure_test: Fail # Issue 17939

[ $compiler == dart2js && $checked ]
variable_type_test/03: Fail, OK
variable_type_test/01: Fail, OK

[ $compiler == dart2js && $fast_startup ]
21666_test: Fail # mirrors not supported
23056_test: Fail # mirrors not supported
closure_type_reflection2_test: Fail # mirrors not supported
closure_type_reflection_test: Fail # mirrors not supported
deferred/deferred_mirrors1_lib: Fail # mirrors not supported
deferred/deferred_mirrors1_test: Fail # mirrors not supported
deferred/deferred_mirrors2_lazy: Fail # mirrors not supported
deferred/deferred_mirrors2_lib3: Fail # mirrors not supported
deferred/deferred_mirrors2_test: Fail # mirrors not supported
inference_nsm_mirrors_test: Fail # mirrors not supported
invalid_annotation2_test/none: Fail # mirrors not supported
invalid_annotation2_test/01: Pass # mirrors not supported, passes for the wrong reason
lookup_map/dead_entry_through_mirrors_test: Fail # mirrors not supported
lookup_map/live_entry_through_mirrors_test: Fail # mirrors not supported
lookup_map/live_entry_through_mirrors_used_test: Fail # mirrors not supported
mirror_enqueuer_regression_test: Fail # mirrors not supported
mirror_invalid_field_access2_test: Fail # mirrors not supported
mirror_invalid_field_access3_test: Fail # mirrors not supported
mirror_invalid_field_access4_test: Fail # mirrors not supported
mirror_invalid_field_access_test: Fail # mirrors not supported
mirror_invalid_invoke2_test: Fail # mirrors not supported
mirror_invalid_invoke3_test: Fail # mirrors not supported
mirror_invalid_invoke_test: Fail # mirrors not supported
mirror_printer_test: Fail # mirrors not supported
mirror_test: Fail # mirrors not supported
mirror_type_inference_field2_test: Fail # mirrors not supported
mirror_type_inference_field_test: Fail # mirrors not supported
mirror_type_inference_function_test: Fail # mirrors not supported
mirrors_declarations_filtering_test: Fail # mirrors not supported
mirrors_used_closure_test: Fail # mirrors not supported
mirrors_used_metatargets_test: Fail # mirrors not supported
mirrors_used_native_test: Fail # mirrors not supported
mirrors_used_warning2_test: Fail # mirrors not supported
mirrors_used_warning_test: Fail # mirrors not supported
no_such_method_mirrors_test: Fail # mirrors not supported
reflect_native_types_test: Fail # mirrors not supported

[ $compiler == dart2js && ($runtime == d8 || $runtime == chrome || $runtime == drt) ]
bound_closure_interceptor_type_test: Fail, Pass # v8 issue 3084. https://code.google.com/p/v8/issues/detail?id=3084

[ $compiler == dart2js && $mode == debug ]
operator_test: Skip
string_interpolation_test: Skip

[ $compiler == dart2js && $runtime == chromeOnAndroid ]
no_such_method_mirrors_test: Pass, Slow # TODO(kasperl): Please triage.

[ $compiler == dart2js && $runtime == none ]
*: Fail, Pass # TODO(ahe): Triage these tests.

[ $compiler == dart2js && $minified ]
to_string_test: Fail # Issue 7179.
runtime_type_test: Fail, OK # Tests extected output of Type.toString().
code_motion_exception_test: Skip  # Requires unminified operator names.
mirrors_used_warning_test/minif: Fail, OK # Tests warning that minified code will be broken.

[ $compiler == dart2js && $runtime == safari ]
deferred_fail_and_retry_worker_test: Timeout  # Issue 22106

[ $compiler == dart2js && ($runtime == drt || $runtime == ff || $runtime == safari || $runtime == jsshell) ]
code_motion_exception_test: Skip  # Required V8 specific format of JavaScript errors.

[ $compiler == dart2js && ($runtime == drt || $runtime == ff || $runtime == safari || $runtime == safarimobilesim || $runtime == chrome || $runtime == chromeOnAndroid) ]
isolate2_test/01: Fail # Issue 14458.

[ $runtime == jsshell ]
timer_test: Fail # Issue 7728.

[ $runtime == none ]
timer_negative_test: Fail, OK # A negative runtime test.
bailout8_test: Fail, OK # Mismatch in thrown exception.

[ $compiler == dart2js && $runtime == d8 && $system == windows ]
deferred/*: Pass,RuntimeError # Issue 17458

[ $compiler == dart2js && $csp ]
deferred_fail_and_retry_test: SkipByDesign # Uses eval to simulate failed loading.
deferred_fail_and_retry_worker_test: SkipByDesign # Uses eval to simulate failed loading.
deferred_custom_loader_test: SkipByDesign # Issue 25683

[ $compiler == none && $runtime == vm ]
invalid_annotation_test/01: MissingCompileTimeError, OK # vm is lazy
lookup_map/dead_entry_through_mirrors_test: SkipByDesign # Test for tree-shaking, vm never tree-shakes

[ $compiler == dart2js && $cps_ir == false ]
big_allocation_expression_test: Crash # Issue 24635

[ $compiler == dart2js && $cps_ir ]
async_stacktrace_test/asyncStar: Crash # (foo()async*{try {tr...  cannot handle sync*/async* functions

[ $compiler == dart2js && $cps_ir && $checked ]
*: Skip # `assert` not implemented, 75% of the tests fail.

[ $compiler == dart2js && $runtime == chrome && $system == windows ]
class_test: Pass, Slow # Issue 25940
consistent_codeUnitAt_error_test: Pass, Slow # Issue 25940
closure_capture3_test: Pass, Slow # Issue 25940
deferred_split_test: Pass, Slow # Issue 25940
closure_capture5_test: Pass, Slow # Issue 25940
conditional_test: Pass, Slow # Issue 25940
constant_javascript_semantics2_test: Pass, Slow # Issue 25940

[ $compiler == dart2js && $runtime == ff && $system == windows ]
consistent_index_error_string_test: Pass, Slow # Issue 25940

[ $compiler == dart2js ]
mirror_printer_test: Pass, Slow # Issue 25940, 16473
