# 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 directory contains tests that are intended to show the
# current state of the language.

# In order to maintain maximum test coverage for all builds,
# please use the following procedure to mark a test
# failed on architectures other than the one you are working on.
#
# 1) Copy the old version of the test to
#    tests/language/src/test_name_[dartc|vm]_test.dart.
#    to maintain coverage.
# 2) File a bug on each architecture for the failure due to the language change.
# 3) Update the language/src directory with the updated test.

[ $compiler == dart2js && ($runtime == ie9 || $runtime == ie10) ]
licm2_test: Skip # Issue: 12298

[ $compiler == dart2dart ]
mixin_super_constructor_named_test: Fail
mixin_super_constructor_positionals_test: Fail
function_type_alias6_test/00: Fail # Issue 11986
function_type_alias9_test/00: Crash # Issue 11986

[ $compiler == none ]
mixin_super_constructor_named_test: Fail
mixin_super_constructor_positionals_test: Fail
built_in_identifier_prefix_test: Fail # http://dartbug.com/6970
library_juxtaposition_test: Fail # Issue 6877
pseudo_kw_illegal_test/14: Fail  # Issue 356
bound_closure_equality_test: Fail # Issue 10849
switch_int_double_test/01: Fail # Issue 7307
switch_int_double_test/02: Fail # Issue 7307

# These bugs refer currently ongoing language discussions.
constructor5_test: Fail           # (Discussion ongoing)

constructor_initializer_test: Fail # Side effects in constructor parameters

constructor6_test: Fail           # Issue 6422
closure_in_initializer_test: Fail # Issue 6422

# Regular bugs which should be fixed.
const_init6_negative_test: Fail       # Issue 811
super_first_constructor_test: Fail # Issue 1372.

parameter_initializer6_negative_test: Fail # Issue 3502

named_parameters_aggregated_test/05: Fail # Compile-time error reported instead of static type warning.

lazy_static3_test: Fail # Issue 3558

# DartC specific tests that should not be run by the VM
*dartc_test: Skip
*dartc_negative_test: Skip

compile_time_constant10_test/none: Fail # issue 5214

export_cyclic_test: Fail, Crash # issue 6060
duplicate_export_negative_test: Fail # issue 6134
type_annotation_test/04: Fail # Issue 6970
type_annotation_test/06: Fail # Issue 6973
type_annotation_test/09: Fail # Issue 6973

on_catch_malformed_type_test: Fail # Issue 8601

mixin_mixin_test: Fail
mixin_issue10216_2_test: Fail
mixin_illegal_object_test/01: Crash # Issue 10952
mixin_illegal_object_test/02: Crash # Issue 10952

mixin_forwarding_constructor2_test: Fail # Issue 11888
mixin_typedef_constructor_test: Fail # Issue 11888
mixin_type_parameter2_test: Fail # Issue 11888

[ $compiler == none && $unchecked ]

# Only checked mode reports an error on type assignment
# problems in compile time constants.
compile_time_constant_checked_test/02: Fail, OK
compile_time_constant_checked2_test/01: Fail, OK
compile_time_constant_checked2_test/02: Fail, OK
compile_time_constant_checked2_test/03: Fail, OK
compile_time_constant_checked2_test/04: Fail, OK
compile_time_constant_checked2_test/05: Fail, OK
compile_time_constant_checked2_test/06: Fail, OK
compile_time_constant_checked3_test/01: Fail, OK
compile_time_constant_checked3_test/02: Fail, OK
compile_time_constant_checked3_test/03: Fail, OK
compile_time_constant_checked3_test/04: Fail, OK
compile_time_constant_checked3_test/05: Fail, OK
compile_time_constant_checked3_test/06: Fail, OK


[ $compiler == none && $runtime == drt ]
final_variable_assignment_test/01: Fail
final_variable_assignment_test/02: Fail
final_variable_assignment_test/03: Fail
final_variable_assignment_test/04: Fail


[ $runtime == dartium ]
import_combinators_test: Fail


[ $runtime == vm || ($runtime == drt && $compiler == none) ]
first_class_types_literals_test: Fail # issue 11761
call_test: Fail # Issue 1604

[ $runtime == chrome ]


[ $runtime == ie9 && ($system == linux || $system == macos) ]
*: Skip

[ $runtime == safari && ($system == linux || $system == windows) ]
*: Skip

[ $browser ]


[ $compiler == dart2dart ]
built_in_identifier_prefix_test: Fail # Inherited from dart2js.
constructor_initializer_test: Fail # VM issue
factory3_test: Fail
type_checks_in_factory_method_test: Fail

many_overridden_no_such_method_test: Fail, Pass, OK # Fails in minified mode, test depends on method names.
overridden_no_such_method_test: Fail, Pass, OK # Fails in minified mode, test depends on method names.

on_catch_malformed_type_test: Fail # Issue 8601

# False positive compile-time error is masking expected compile-time error
mixin_type_parameters_errors_test/*: Skip

# Mixins fail on the VM.
mixin_mixin_test: Fail                      # VM issue
mixin_issue10216_2_test: Fail               # VM issue
mixin_forwarding_constructor2_test: Fail # Issue 11888
mixin_typedef_constructor_test: Fail # Issue 11888
mixin_type_parameter2_test: Fail # Issue 11888

mixin_with_two_implicit_constructors_test: Fail # Issue 11889

# Malformed types not handled as unresolved:
import_core_prefix_test: Fail
prefix16_test: Fail
prefix22_test: Fail
type_annotation_test/04: Fail
type_annotation_test/06: Fail

# Calling unresolved class constructor:
call_nonexistent_constructor_test: Fail

bad_override_test/01: Fail
bad_override_test/02: Fail

# Missing compile-time error when modifying final local variables
final_variable_assignment_test/01: Fail
final_variable_assignment_test/02: Fail
final_variable_assignment_test/03: Fail
final_variable_assignment_test/04: Fail

compile_time_constant10_test/01: Fail # http://dartbug.com/5519
compile_time_constant10_test/02: Fail # http://dartbug.com/5519
compile_time_constant_arguments_test/01: Fail # http://dartbug.com/5519
compile_time_constant_arguments_test/02: Fail # http://dartbug.com/5519
compile_time_constant_arguments_test/03: Fail # http://dartbug.com/5519
compile_time_constant_arguments_test/05: Fail # http://dartbug.com/5519
compile_time_constant_arguments_test/06: Fail # http://dartbug.com/5519
const_constructor_syntax_test/04: Fail # http://dartbug.com/5519
const_syntax_test/01: Fail # http://dartbug.com/5519
const_syntax_test/02: Fail # http://dartbug.com/5519
const_syntax_test/03: Fail # http://dartbug.com/5519
const_syntax_test/04: Fail # http://dartbug.com/5519
const_syntax_test/05: Fail # http://dartbug.com/5519
const_syntax_test/06: Fail # http://dartbug.com/5519
const_syntax_test/07: Fail # http://dartbug.com/5519
const_syntax_test/08: Fail # http://dartbug.com/5519
const_syntax_test/10: Fail # http://dartbug.com/5519
constructor_named_arguments_test/01: Fail # http://dartbug.com/5519
final_for_in_variable_test/01: Fail # http://dartbug.com/5519
final_is_not_const_test/01: Fail # http://dartbug.com/5519
final_syntax_test/01: Fail # http://dartbug.com/5519
final_syntax_test/02: Fail # http://dartbug.com/5519
final_syntax_test/03: Fail # http://dartbug.com/5519
final_syntax_test/04: Fail # http://dartbug.com/5519
getter_no_setter_test/01: Fail # http://dartbug.com/5519
named_parameters_aggregated_test/01: Fail # http://dartbug.com/5519
named_parameters_aggregated_test/03: Fail # http://dartbug.com/5519
not_enough_positional_arguments_test/01: Fail # http://dartbug.com/5519

metadata_test: Fail
# Fails in conservative mode, issue 4935, passes in minifinying mode.
argument_definition_test/*: Skip # Not implemented.
const_var_test: Pass, Fail # Map literals take 2 type arguments.
map_literal3_test: Fail # Map literals take 2 type arguments.
class_cycle_negative_test: Fail, OK # Bad test: assumes eager loading.
interface_cycle_negative_test: Fail, OK # Bad test: assumes eager loading.
# Common problems with dart2js.  In illegal family, invalid
# declarations are simply not parsed.  In pseudo kw dart2js
# chokes on things like typedef(x) => "typedef $x" and alike.
abstract_syntax_test/01: Fail
abstract_syntax_test/02: Fail
pseudo_kw_illegal_test/14: Fail
pseudo_kw_test: Fail
# external keyword is not yet supported by dart2js/dart2dart.
external_test/*: Skip
lazy_static3_test: Fail, OK # Issue 3558
# dart2js frontend doesn't even analyse problematic classes.
duplicate_implements_test/01: Fail
duplicate_implements_test/02: Fail
duplicate_implements_test/03: Fail
duplicate_implements_test/04: Fail
interface_factory_constructor_negative_test: Fail
method_override4_test: Fail
method_override5_test: Fail
operator1_negative_test: Fail
static_final_field_negative_test: Fail
static_top_level_test/00: Fail
static_top_level_test/01: Fail
static_top_level_test/02: Fail
static_top_level_test/03: Fail
static_top_level_test/04: Fail
static_top_level_test/05: Fail
static_top_level_test/06: Fail
static_top_level_test/07: Fail
# Bug in dart2js parser: it happily parses 1is int; variable declaration.
number_identifier_negative_test: Fail
# Common with language_dart2js.
factory_redirection_test/0*: Skip # Flaky negative tests, crash, fail, or pass. Not implemented.
factory_redirection_test/1*: Skip # Flaky negative tests, crash, fail, or pass. Not implemented.
function_type_alias5_test/00: Fail
function_type_alias5_test/01: Fail
function_type_alias5_test/02: Fail
function_type_alias7_test/00: Fail
parameter_initializer6_negative_test: Fail # Issue 3502
syntax_test/47: Fail
# DartVM problem.
constructor5_test: Fail
constructor6_test: Fail
closure_in_initializer_test: Fail
super_first_constructor_test: Fail
# VM specific tests.
# This test hard codes name of file being run and precise position.
generic_test: Fail, Ok
# Minified mode failures.
# TODO(antonm): proper support in test framework.
no_such_method_test: Pass, Fail, OK # Hard codes the name of invoked method ("foo").

named_parameters_aggregated_test/05: Fail # Compile-time error reported instead of static type warning.

new_expression_type_args_test/00: Fail # Wrongly reports compile-time error.
new_expression_type_args_test/01: Fail # Wrongly reports compile-time error.

get_set_syntax_test/00: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/01: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/02: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/03: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/04: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/05: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/06: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/07: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/08: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/13: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/14: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111
get_set_syntax_test/15: Fail # Fixed by https://chromiumcodereview.appspot.com/10915111

compile_time_constant10_test/none: Fail # Triage this.

# Only checked mode reports an error on type assignment
# problems in compile time constants.
compile_time_constant_checked_test/02: Fail, OK
compile_time_constant_checked2_test/01: Fail, OK
compile_time_constant_checked2_test/02: Fail, OK
compile_time_constant_checked2_test/03: Fail, OK
compile_time_constant_checked2_test/04: Fail, OK
compile_time_constant_checked2_test/05: Fail, OK
compile_time_constant_checked2_test/06: Fail, OK
compile_time_constant_checked3_test/01: Fail, OK
compile_time_constant_checked3_test/02: Fail, OK
compile_time_constant_checked3_test/03: Fail, OK
compile_time_constant_checked3_test/04: Fail, OK
compile_time_constant_checked3_test/05: Fail, OK
compile_time_constant_checked3_test/06: Fail, OK

positional_parameters_type_test: Fail # Triage this.

bound_closure_equality_test: Fail # Issue 10849

[ $compiler == dart2dart && $minified ]
super_getter_setter_test: Fail # Issue 11065.

# TODO(tball): Assign proper bug numbers.
class_literal_test: Fail

import_core_prefix_test: Pass
prefix22_test: Pass
invocation_mirror_test: Fail, OK # hardcoded names.
super_call4_test: Fail, OK # hardcoded names.

[ $arch == mips ]
*: Skip
