# 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 && $runtime == jsshell ]
mirror_printer_test: Pass, Slow # Issue 16473

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

[ $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/*: Skip # 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.

[ $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
