# 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 ]
16407_test: Fail # Issue 16407
class_test: Fail
statements_test: Fail
typed_locals_test: Fail
no_such_method_test: Fail # Wrong Invocation.memberName.
deferred/deferred_constant_test: Fail # http://dartbug.com/11138
constant_javascript_semantics4_test: Fail, OK

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

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

[ $compiler == dart2js && $host_checked && $checked == false ]
# Test that @IrRepresentation yields compile-time errors in host-checked mode.
# The condition "$checked == false" is to be removed once we build IR in
# target-checked mode.
ir_representation_test: CompileTimeError, OK

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

[ $compiler == dart2js && $runtime == ie9 ]
class_test: Fail
deferred/*: Skip # http://dartbug.com/12635

[ $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().

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

[ $jscl ]
timer_test: Fail # Issue 7728.

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

[ $csp ]
deferred/deferred_class_test: Fail # http://dartbug.com/3940
deferred/deferred_constant_test: Fail # http://dartbug.com/3940
deferred/deferred_constant2_test: Fail # http://dartbug.com/3940
deferred/deferred_constant3_test: Fail # http://dartbug.com/3940
deferred/deferred_constant4_test: Fail # http://dartbug.com/3940
deferred/deferred_constant5_test: Fail # http://dartbug.com/3940
