# 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.

# TODO(rnystrom): These tests are still flaky. # Issue 8511
oauth2_test: Pass,Fail
pub_uploader_test: Pass,Fail

# Pub only runs on the VM, so just rule out all compilers.
[ $compiler == dart2js || $compiler == dart2dart || $compiler == dartc ]
*: Skip

# Pub only runs on the standalone VM, not the browser.
[ $runtime == drt || $runtime == dartium || $runtime == opera ]
*: Skip

[ $system == windows ]
io_test: Fail # Issue 7505
