# Copyright (c) 2014, 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.

# Don't run any test-like files that show up in packages directories. It
# shouldn't be necessary to run "pub install" in these packages, but if you do
# it shouldn't break the tests.
*/packages/*/*: Skip
*/*/packages/*/*: Skip
*/*/*/packages/*/*: Skip
*/*/*/*/packages/*/*: Skip
*/*/*/*/*/packages/*/*: Skip

[ $compiler == none && ($runtime == dartium || $runtime == ContentShellOnAndroid) ]
test/interop_test: Pass, RuntimeError # Issue 18931

[ $compiler == dart2js && $csp && $runtime == drt ]
build/test/interop_test: Fail # Issue 19329

[ $runtime == vm || $runtime == d8 || $runtime == jsshell ]
test/*: Skip # uses dart:html
build/test/*: Skip # uses dart:html

[ $compiler == dart2js ]
test/*: Skip # use pub-build to run tests (they need the companion .html file)
