# 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

# failing tests
test/deferred_library_test: RuntimeError # Issue 22592
build/test/deferred_library_test: RuntimeError # Issue 22592

# tests that don't need to be ran after pub-build
build/test/transformer_test.dart: Skip
build/test/static_init_cycle_error_test.dart: Skip # Build time warning

[ $browser ]
# All tests are for the standalone vm only
build/test/*: Skip
test/*: Skip
