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

samples/third_party/dromaeo: Pass, Slow
samples/third_party/todomvc_performance: Pass, Slow
samples/pop_pop_win: Pass, Slow
samples/searchable_list: Pass, Slow
pkg/docgen: Pass, Slow

pkg/observatory: Skip # Issue 20306

[ $use_repository_packages ]
pkg/analyzer: PubGetError
pkg/browser: PubGetError
pkg/intl: PubGetError # Issue 19782
pkg/third_party/html5lib: PubGetError # angular needs to be updated
samples/third_party/angular_todo: Fail # angular needs to be updated

[ $use_public_packages ]
samples/third_party/angular_todo: Pass, Slow

[ $use_public_packages && $builder_tag == russian ]
samples/third_party/todomvc: Fail # Issue 18104

[ $builder_tag == russian ]
samples/pop_pop_win: Fail # Issue 16356
samples/third_party/angular_todo: Fail # Issue 16356

[ $system == windows ]
samples/third_party/todomvc_performance: Fail # Issue 18086
