# 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

# 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

# tests that need to run, but we use the bootstrap output instead
# (build/test/foo.initialize.dart) which is renamed by the .test_config scripts.
build/test/deferred_library_test.dart: Skip
build/test/initializer_custom_filter_test.dart: Skip
build/test/initializer_cycle_error_test.dart: Skip
build/test/initializer_test.dart: Skip
build/test/initializer_type_filter_test.dart: Skip
build/test/init_method_test.dart: Skip

# failing tests
[ $compiler == none ]
test/deferred_library_test: RuntimeError # Issue 22592
build/test/deferred_library_test: RuntimeError # Issue 22592

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