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

# This file contains the tests that have been identified as broken and
# have been filed on the co19 issue tracker at
#    https://code.google.com/p/co19/issues/list (read-only).
#    https://github.com/dart-lang/co19/issues .
#
# In order to qualify here these tests need to fail both on the VM and dart2js.

### GENERAL FAILURES ###

[ $runtime == vm || $runtime != vm ]
# Tests that fail everywhere, including the analyzer.

LibTest/typed_data/ByteData/buffer_A01_t01: Fail # co19 r736 bug - sent comment.
LibTest/core/RegExp/firstMatch_A01_t01: Fail # co19 issue 742

[ $compiler != dart2analyzer ]
# Tests that fail on every runtime, but not on the analyzer.
Language/Classes/same_name_type_variable_t04: Pass, MissingCompileTimeError, Fail # Issue 14513,25525
Language/Classes/same_name_type_variable_t07: Pass, MissingCompileTimeError, Fail # Issue 14513,25525
Language/Expressions/Instance_Creation/Const/abstract_class_t01: Pass, Fail # co19 issue 66
Language/Expressions/Instance_Creation/Const/abstract_class_t03: Pass, Fail # co19 issue 66
LibTest/async/Stream/asBroadcastStream_A02_t01: Fail # co19 issue 687
LibTest/collection/DoubleLinkedQueue/DoubleLinkedQueue_class_A01_t01: RuntimeError # Issue 27183
LibTest/core/Expando/Expando_A03_t01: RuntimeError # Issue 17735
LibTest/core/Expando/Expando_A03_t03: RuntimeError # Issue 17735
LibTest/core/Expando/Expando_A03_t04: RuntimeError # Issue 17735
LibTest/core/Expando/Expando_A03_t05: RuntimeError # Issue 17735
LibTest/core/RegExp/Pattern_semantics/firstMatch_CharacterEscape_A06_t02: RuntimeError # co19 issue 741
LibTest/core/RegExp/Pattern_semantics/firstMatch_DecimalEscape_A01_t02: Fail # co19 issue 740
LibTest/core/Symbol/Symbol_A01_t04: RuntimeError # Issue 25804
LibTest/isolate/IsolateStream/any_A01_t01: Fail # Co19 issue 639 (Fixed in r674)
LibTest/isolate/IsolateStream/asBroadcastStream_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/contains_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/first_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/first_A02_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/first_A02_t02: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/isBroadcast_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/isBroadcast_A01_t02: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/isEmpty_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/last_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/last_A02_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/length_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/single_A01_t01: Fail # Co19 issue 639
LibTest/isolate/IsolateStream/single_A02_t01: Fail # Co19 issue 639
LibTest/isolate/ReceivePort/asBroadcastStream_A02_t01: Fail # co19 issue 687
LibTest/isolate/ReceivePort/receive_A01_t01: Fail # Co19 issue 639
LibTest/isolate/ReceivePort/receive_A01_t03: Fail # Co19 issue 639
LibTest/isolate/ReceivePort/sendPort_A01_t01: Fail # Co19 issue 639
LibTest/isolate/SendPort/call_A01_t01: Fail # Co19 issue 639
LibTest/isolate/SendPort/send_A02_t02: SKIP # co19 issue 493 (not fixed in r672)
LibTest/isolate/SendPort/send_A02_t03: SKIP # co19 issue 495 (not fixed in r672)
LibTest/isolate/SendPort/send_A02_t04: Fail # Co19 issue 639
LibTest/isolate/SendPort/send_A02_t05: Fail # Co19 issue 639
LibTest/isolate/SendPort/send_A02_t06: Fail # Co19 issue 639
LibTest/isolate/SendPort/send_A03_t01: Fail # Co19 issue 639
LibTest/isolate/SendPort/send_A03_t02: Fail # Co19 issue 639
LibTest/math/acos_A01_t01: PASS, FAIL, OK  # Issue 26261
LibTest/math/asin_A01_t01: PASS, FAIL, OK  # Issue 26261
LibTest/math/atan_A01_t01: PASS, FAIL, OK  # Issue 26261
LibTest/math/cos_A01_t01: PASS, FAIL, OK  # Issue 26261
LibTest/math/tan_A01_t01: PASS, FAIL, OK  # Issue 26261
LibTest/math/log_A01_t01: PASS, FAIL, OK  # Issue 26261

[ $runtime == dartium || $compiler == dart2js ]
LibTest/async/Future/Future.delayed_A01_t02: Pass, Fail # Issue 15524

[ ($compiler == none || $compiler == precompiler || $compiler == dart2app || $compiler == dart2appjit) && ($runtime == vm || $runtime == drt || $runtime == dart_precompiled || $runtime == dart_app) ]
# Optional trailing commas for argument and parameter lists added to language.
# https://github.com/dart-lang/co19/issues/68
Language/Functions/Formal_Parameters/syntax_t05: Fail, OK
