# 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 ]
dummy_compiler_test: Slow, Pass

[ $compiler == dart2js ]
recursive_import_test: Slow, Pass
source_mirrors_test: Slow, Pass

[ $compiler == dart2js && $browser ]
*: Skip

[ ($compiler == none || $compiler == precompiler) && $runtime != vm ]
dart2js_test: SkipByDesign # Uses dart:io.

[ $compiler == dart2js && $mode == debug ]
dummy_compiler_test: Slow, Pass

[ $noopt || $compiler == precompiler || $mode == product ]
source_mirrors_test: SkipByDesign # Imports dart:mirrors

[ $compiler == dart2analyzer ]
dart2js_test: StaticWarning # https://github.com/dart-lang/sdk/issues/25943
recursive_import_test: StaticWarning # https://github.com/dart-lang/sdk/issues/25943
dummy_compiler_test: StaticWarning # https://github.com/dart-lang/sdk/issues/25943
source_mirrors_test: StaticWarning # https://github.com/dart-lang/sdk/issues/25943

[ $compiler == dart2js && $cps_ir && $host_checked ]
dummy_compiler_test: Crash # Issue 24485
recursive_import_test: Crash # Issue 24485
source_mirrors_test: Crash # Issue 24485
