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

[ $compiler == dart2js || $compiler == dart2dart ]
compile_time_constant_c_test/none: Fail # Map literal with int key.
constructor_initializer_test: Fail, OK # Depends on ?parameter check.

black_listed_test/none: Fail # Issue 12446.

# Issues related to undeclared prefix resolution.
malformed_test/none: Fail
malformed_test/05: Fail
malformed_test/06: Fail

# Fails due to inlining. Not all expected frames are in the trace.
full_stacktrace1_test: Pass, Fail
full_stacktrace2_test: Pass, Fail
full_stacktrace3_test: Pass, Fail
# Stack traces may or may not end in a newline depending on the JS enging.
stacktrace_test: Pass, Fail # Assumes stack trace string ends in newline.

# VM specific tests that should not be run by dart2js.
*vm_test: Skip

[ $compiler == dart2js && $checked ]
checked_setter2_test: Fail # dartbug.com/11273
default_factory2_test/01: Fail
type_variable_bounds_test/01: Fail
type_variable_bounds_test/02: Fail
type_variable_bounds_test/04: Fail
type_variable_bounds_test/05: Fail
type_variable_bounds2_test/00: Fail
type_variable_bounds2_test/03: Fail
type_variable_bounds2_test/05: Fail
type_variable_bounds2_test/06: Pass # For the wrong reasons.
type_variable_bounds3_test/00: Fail
f_bounded_quantification_test/01: Fail
f_bounded_quantification_test/02: Fail
closure_type_test: Fail # does not detect type error in checked mode.
function_subtype_setter0_test: Fail # dartbug.com/11273

[ $compiler == dart2js && $unchecked ]
factory_redirection_test/14: Fail # redirecting to redirecting factory
type_checks_in_factory_method_test: Fail # Expect.equals(expected: <true>, actual: <false>) fails. -- checked mode test.

assertion_test: Fail

double_to_string_as_exponential2_test: Fail # toStringAsExponential doesn't check if argument is an integer.
double_to_string_as_fixed2_test: Fail # toStringAsFixed doesn't check if argument is an integer.
double_to_string_as_precision2_test: Fail # toStringAsPrecision doesn't check if argument is an integer.

# 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 == dart2js && $minified ]
f_bounded_quantification4_test: Fail # Issue 12605.

[ $compiler == dart2js ]
function_type_alias6_test/00: Crash # dartbug.com/9792
function_type_alias9_test/00: Crash # dartbug.com/9792
branch_canonicalization_test: Fail # Issue 638.
div_with_power_of_two_test: Fail # Issue 8301.
class_literal_test: Fail # Issue 7626.
identical_closure2_test: Fail # Issue 1533, Issue 12596
invocation_mirror_test: Fail
built_in_identifier_prefix_test: Fail # http://dartbug.com/6972
number_identity2_test: Fail # Issue 12596: identity of NaN
new_expression_type_args_test/00: Fail # Wrongly reports compile-time error.
new_expression_type_args_test/01: Fail # Wrongly reports compile-time error.
double_int_to_string_test: Fail # Issue 1533 (double/integer distinction)
mint_arithmetic_test: Fail # Issue 1533 (big integer arithmetic).
left_shift_test: Fail # Issue 1533
factory_redirection_test/01: Fail
factory_redirection_test/07: Fail
bad_override_test/01: Fail # Issue 11496
bad_override_test/02: Fail # Issue 11496
bad_override_test/06: Fail # Issue 11496
class_override_test/00: Fail # Issue 11496
field_override3_test/00: Fail # Issue 11496
field_override3_test/01: Fail # Issue 11496
field_override3_test/02: Fail # Issue 11496
field_override3_test/03: Fail # Issue 11496
getter_override_test/00: Fail # Issue 11496
getter_override_test/01: Fail # Issue 11496
getter_override_test/02: Fail # Issue 11496
method_override7_test/00: Fail # Issue 11496
method_override7_test/01: Fail # Issue 11496
method_override7_test/02: Fail # Issue 11496
method_override8_test/03: Fail # Issue 11496
setter_override_test/00: Fail # Issue 11496
setter_override_test/03: Fail # Issue 11496
setter_override2_test/02: Fail # Issue 11496
call_nonexistent_constructor_test: Fail
constructor_named_arguments_test/01: Fail # http://dartbug.com/5519
getter_no_setter_test/01: Fail # http://dartbug.com/5519
not_enough_positional_arguments_test/01: Fail # http://dartbug.com/5519
dynamic_test: Fail # http://dartbug.com/12398
dynamic_prefix_core_test: Fail # http://dartbug.com/12398

constructor_negative_test: Pass # Wrong reason: the expression 'C()' is valid with class literals.

metadata_test: Fail # Metadata on type parameters not supported.
infinity_test: Fail # Issue 4984
positive_bit_operations_test: Fail # (floitsch): This will be fixed when dart2js uses unsigned input for >>.


# Support for optional parameters not conform to latest spec.
named_parameters_type_test: Fail
positional_parameters_type_test: Fail

# Compilation errors.
const_var_test: Fail # Map literals take 2 type arguments.
map_literal3_test: Fail # Map literals take 2 type arguments.
function_type_alias5_test/00: Fail # visitIs for typedefs not implemented
function_type_alias5_test/01: Fail # visitIs for typedefs not implemented
function_type_alias5_test/02: Fail # visitIs for typedefs not implemented
function_type_alias7_test/00: Fail # wrongly accepts default values in typedef
generic_test: Fail # cannot resolve type T
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/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
method_binding_test: Fail # internal error: super property read not implemented.
method_override_test: Fail # cannot resolve type GetKeysFunctionType
method_override5_test: Pass, Fail # Issue 11496 (passes if it's inlined)
parameter_initializer6_negative_test: Fail # Issue 3502
named_parameters_aggregated_test/01: Fail # Presence of default values for optional params is not properly validated in type definitions.
named_parameters_aggregated_test/03: Fail # Presence of default values for optional params is not properly validated in closure types.
pseudo_kw_test: Fail # Unexpected token '('
super_implicit_closure_test: Fail # internal error: super property read not implemented

# Missing compilation error for wrong number of type arguments.
mixin_type_parameters_errors_test/01: Fail
mixin_type_parameters_errors_test/02: Fail
mixin_type_parameters_errors_test/05: Fail

# External tests.
external_test/01: Fail
external_test/02: Fail
external_test/11: Fail
external_test/12: Fail
external_test/13: Skip  # Runtime error (missing patch).
external_test/14: Fail
external_test/20: Skip  # Runtime error (missing patch).
external_test/21: Fail
external_test/22: Fail
external_test/23: Fail
external_test/30: Fail
external_test/31: Fail


# Implementation errors (library or generated code).
instanceof4_test: Fail # Expect.isTrue(false) fails.
list_literal4_test: Fail # Illegal argument(s): 0 -- checked mode test.
map_literal4_test: Fail # Attempt to modify an immutable object -- checked mode test.
named_parameters_type_test: Fail # Expect.equals(expected: <111>, actual: <0>) fails. -- checked mode test.

class_cycle_negative_test: Fail, OK # Bad test: assumes eager loading.
external_test/16: Fail, OK # Bad test: assumes eager loading.
interface_cycle_negative_test: Fail, OK # Bad test: assumes eager loading.
syntax_test/47: Fail, OK # Bad test: assumes eager loading.


#
# The following tests are all negative tests that should be fixed.
#
abstract_syntax_test/01: Fail # Negative language test.
const_constructor_syntax_test/04: Fail # Negative language test.
const_syntax_test/04: Fail # Negative language test.
constructor2_negative_test: Fail # Negative language test.
constructor_return_negative_test: Fail # Negative language test.
constructor_return_with_arrow_negative_test: Fail # Negative language test.
constructor_return_with_init_and_arrow_negative_test: Fail # Negative language test.
constructor_return_with_init_negative_test: Fail # Negative language test.
duplicate_implements_test/01: Fail # Negative language test.
duplicate_implements_test/02: Fail # Negative language test.
duplicate_implements_test/03: Fail # Negative language test.
duplicate_implements_test/04: Fail # Negative language test.
field3_negative_test: Fail # Negative language test.
final_for_in_variable_test/01: Fail # Negative language test
instantiate_type_variable_negative_test: Pass  # For the wrong reason.
list_literal1_negative_test: Fail # Negative language test.
map_literal1_negative_test: Fail # Negative language test.
number_identifier_negative_test: Fail # Negative language test.
operator1_negative_test: Fail # Negative language test.
scope_negative_test: Fail # Negative language test.
static_final_field_negative_test: Fail # Negative language test.
static_top_level_test/00: Fail # Negative language test.
static_top_level_test/01: Fail # Negative language test.
static_top_level_test/02: Fail # Negative language test.
static_top_level_test/03: Fail # Negative language test.
static_top_level_test/04: Fail # Negative language test.
static_top_level_test/05: Fail # Negative language test.
static_top_level_test/06: Fail # Negative language test.
static_top_level_test/07: Fail # Negative language test.
throw7_negative_test: Fail # Negative language test.

numbers_test: Fail, OK # (unintended?) VM specific test.

final_syntax_test/01: Fail # Missing error for uninitialized final field.
final_syntax_test/02: Fail # Missing error for uninitialized final field.
final_syntax_test/03: Fail # Missing error for uninitialized final field.
final_syntax_test/04: Fail # Missing error for uninitialized final field.
const_syntax_test/01: Fail # Missing error for uninitialized final field.
const_syntax_test/02: Fail # Missing error for uninitialized final field.
const_syntax_test/03: Fail # Missing error for uninitialized final field.

canonical_const2_test: Fail, OK # Dart2js only has doubles.

bit_operations_test: Fail, OK # Tests bit operations outside the 32 bit range.
# The following test will start to fail again once dart2js implements the
# runtime semantics for numbers.
# Should be: Fail, OK # Expects negative results of bit-operations.
optimization_test: Fail, OK # Expects negative results of bit-operations.

expect_test: Fail, OK # JavaScript canonicalizes all strings. This test assumes that string-concatenation returns a new string.

# Partially implemented redirecting constructors makes this throw instead
# of failing.
const_factory_negative_test: Crash, Fail

assign_top_method_test: Fail


[ $compiler == dart2js && $runtime == none ]
*: Fail, Pass # TODO(ahe): Triage these tests.


[ $compiler == dart2js && ($runtime == ff || $runtime == jsshell || $runtime == ie9)]
arithmetic_test: Fail # Issue 7881


[ $compiler == dart2js && $runtime == ie9 ]
double_to_string_as_exponential3_test: Fail
double_to_string_as_fixed_test: Fail
double_to_string_as_precision3_test: Fail
expect_test: Fail
stack_overflow_test: Fail
stack_overflow_stacktrace_test: Fail
licm2_test: Timeout # Issue: 11848


[ $compiler == dart2js && $runtime == safari ]
arithmetic_test: Fail # Issue: 7414


[ $runtime == opera ]
null_access_error_test: Fail # Issue: 7413
string_interpolate_null_test: Fail # Issue: 7413
call_through_null_getter_test: Fail
closure3_test: Fail
execute_finally3_test: Fail
method_invocation_test: Fail
stack_overflow_test: Fail
stack_overflow_stacktrace_test: Fail
closure_call_wrong_argument_count_negative_test: Skip
label_test: Skip
