61297238fb
Add test (negative tests still missing). Some more work is needed regarding when to throw a dynamic error and when to report a compile-time error. Some questions are not answered by the spec. Review URL: https://codereview.chromium.org//10964058 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12791 260f80e4-7a28-3924-810f-c04153c831b5
410 lines
18 KiB
Plaintext
410 lines
18 KiB
Plaintext
# 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 == none ]
|
|
call_constructor_on_unresolvable_class_test/01: Fail # Issue 3801
|
|
call_constructor_on_unresolvable_class_test/02: Fail # Issue 3801
|
|
call_constructor_on_unresolvable_class_test/03: Fail # Issue 3801
|
|
call_constructor_on_unresolvable_class_test/07: Fail # Issue 3801
|
|
call_nonexistent_constructor_test: Fail # Issue 3801
|
|
gc_test: Fail # Issue 1487
|
|
field_override_test/none: Fail # Issue 742: field shadowing now allowed
|
|
field_override_test/01: Fail # Issue 742: field shadowing now allowed
|
|
super_field_access_test: Fail # Issue 742: field shadowing now allowed
|
|
pseudo_kw_illegal_test/03: Fail # Issue 356
|
|
pseudo_kw_illegal_test/08: Fail # Issue 356
|
|
pseudo_kw_illegal_test/10: Fail # Issue 356
|
|
pseudo_kw_illegal_test/14: Fail # Issue 356
|
|
|
|
assert_lexical_scope_test: Fail # Issue 4935
|
|
|
|
# These bugs refer currently ongoing language discussions.
|
|
constructor5_test: Fail # (Discussion ongoing)
|
|
constructor6_test: Fail # (Discussion ongoing)
|
|
|
|
# Regular bugs which should be fixed.
|
|
const_init6_negative_test: Fail # Issue 811
|
|
super_first_constructor_test: Fail # Issue 1372.
|
|
|
|
# Issue 1355
|
|
call_operator_test: Fail
|
|
|
|
constructor_redirect_test/01: Fail # Issue 2103.
|
|
|
|
closure_with_super_send_test: Fail # Issue 3197.
|
|
closure_with_super_field_test: Fail # Issue 3197.
|
|
super_closure_test: Fail # Issue 3197.
|
|
parameter_initializer6_negative_test: Fail # Issue 3502
|
|
|
|
fauxverride_test/none: Fail # Issue 3778.
|
|
|
|
bad_override_test/01: Fail # Issue 3859.
|
|
bad_override_test/02: Fail # Issue 3859.
|
|
|
|
setter_no_getter_call_test/01: Crash # Issue 4360
|
|
setter_no_getter_test/01: Crash # Issue 4360
|
|
|
|
getter_no_setter2_test/01: Fail # Issue 4898
|
|
|
|
named_parameters_aggregated_test/05: Fail # Compile-time error reported instead of static type warning.
|
|
|
|
lazy_static3_test: Fail # Issue 3558
|
|
|
|
type_error_test: Fail # http://dartbug.com/5280
|
|
|
|
|
|
# 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
|
|
|
|
[ $compiler == none && $mode == debug ]
|
|
gc_test: Skip # Takes too long.
|
|
|
|
[ $compiler == none && $checked ]
|
|
type_parameter_test/01: Fail # Issue 4932
|
|
type_parameter_test/02: Fail # Issue 4932
|
|
type_parameter_test/03: Fail # Issue 4932
|
|
type_parameter_test/04: Fail # Issue 4932
|
|
|
|
[ $compiler == none && $unchecked ]
|
|
field_override_test/02: Fail # Issue 742: field shadowing now allowed
|
|
|
|
# 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 == dartc ]
|
|
assert_lexical_scope_test: Fail, OK # test issue 5276
|
|
implicit_this_test/none: Fail # should not warn about allocating SubAbstract2
|
|
metadata_test: Fail
|
|
call_constructor_on_unresolvable_class_test/03: Fail, OK # 'library' cannot be used as a prefix because it is a built-in identifier
|
|
get_set_syntax_test/none: Fail # does not accept getter/setter with no method body
|
|
application_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
assert_keyword_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
assign_instance_method_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
body_less_constructor_wrong_arg_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
call_nonexistent_static_test/03: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/04: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/05: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/06: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/07: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/08: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/09: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/10: Fail # Unresolved static calls are no longer errors.
|
|
call_operator_test: Pass # Issue 1355
|
|
cascade_test/01: Pass # Issue 3729 - an earlier comment claims that this passes for the wrong reason
|
|
cascade_test/02: Pass # Issue 3729 - an earlier comment claims that this passes for the wrong reason
|
|
cascade_test/02: Fail # Issue 3729
|
|
cascade_test/none: Fail # Issue 3729
|
|
char_escape_test: Pass # Issue 1654
|
|
class_literal_test/01 : Fail # language change 3368
|
|
class_literal_test/03 : Fail # language change 1031
|
|
class_literal_test/04 : Fail # language change 1031
|
|
class_literal_test/05 : Fail # language change 3368
|
|
class_literal_test/06 : Fail # language change 3368
|
|
class_literal_test/08 : Fail # language change 1031
|
|
class_literal_test/09 : Fail # language change 1031
|
|
class_literal_test/10 : Fail # language change 3368
|
|
class_literal_test/11 : Fail # language change 3368
|
|
class_literal_test/12 : Fail # language change 3368
|
|
class_literal_test/13 : Fail # language change 3368
|
|
class_literal_test/15 : Fail # language change 1031
|
|
class_literal_test/16 : Fail # language change 1031
|
|
class_literal_test/17 : Fail # language change 3368
|
|
class_literal_test/18 : Fail # language change 3368
|
|
class_literal_test/19 : Fail # language change 3368
|
|
class_literal_test/20 : Fail # language change 3368
|
|
class_literal_test/21 : Fail # language change 3368
|
|
class_literal_test/22 : Fail # language change 3368
|
|
class_literal_test/23 : Fail # language change 3368
|
|
class_literal_test/24 : Fail # language change 3368
|
|
class_literal_test/25 : Fail # language change 3368
|
|
class_literal_test/26 : Fail # language change 3368
|
|
class_literal_test/27 : Fail # language change 3368
|
|
class_literal_test/28 : Fail # language change 3368
|
|
class_literal_test/29 : Fail # language change 3368
|
|
closure_call_wrong_argument_count_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
compile_time_constant10_test/none: Fail # issue 5215.
|
|
constructor3_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
constructor_call_wrong_argument_count_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
disable_privacy_test: Fail # Issue 1882: Needs --disable_privacy support.
|
|
duplicate_implements_test/03: Fail, OK # we are going to remove interfaces
|
|
duplicate_implements_test/04: Fail, OK # we are going to remove interfaces
|
|
factory5_test/00: Fail # issue 3079
|
|
field_method4_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
field7_negative_test: Fail, OK # language changed, test issue 5249
|
|
field7a_negative_test: Fail, OK # language changed, test issue 5249
|
|
getter_no_setter_test/01: Fail # Fails to detect compile-time error.
|
|
getter_no_setter2_test/01: Fail # Fails to detect compile-time error.
|
|
setter_no_getter_test/01: Fail # Fails to detect compile-time error.
|
|
instance_call_wrong_argument_count_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
interface_factory1_negative_test: Fail # language change 1031
|
|
is_not_class2_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
library2_negative_test: Fail # still a valid test? Issue 3649
|
|
library4_negative_test: Fail # still a valid test? Issue 3530
|
|
library6_negative_test: Fail # still a valid test? Issue 3650
|
|
list_literal4_test: Fail # Issue 1343
|
|
map_literal4_test: Fail # Issue 1343
|
|
named_parameters_with_object_property_names_test: Fail # Issue 2137
|
|
no_such_method_negative_test: Fail # Runtime only test, rewrite as multiteste
|
|
override_field_test/03: Fail # still a valid test? Issue 3894
|
|
override_field_test/04: Fail # still a valid test? Issue 3656
|
|
override_field_method3_negative_test: Fail, OK # test issue 5249
|
|
override_field_method6_negative_test: Fail, OK # test issue 5249
|
|
parameter_initializer6_negative_test: Fail # language change 4288
|
|
prefix1_negative_test : Fail # language change 1031
|
|
prefix4_negative_test : Fail # language change 1031
|
|
prefix5_negative_test : Fail # language change 1031
|
|
prefix8_negative_test : Fail # language change 1031
|
|
prefix9_negative_test : Fail # language change 1031
|
|
prefix10_negative_test : Fail # language change 1031
|
|
prefix11_negative_test : Fail # language change 1031
|
|
private_member3_negative_test: Fail # Runtime only test? rewrite as multitest
|
|
pseudo_kw_test: Fail, OK # test issue 5276
|
|
pseudo_kw_illegal_test/09: Fail, OK # 'interface' is not a built-in identifier
|
|
pseudo_kw_illegal_test/11: Fail, OK # 'negate' is not a built-in identifier
|
|
pseudo_kw_illegal_test/14: Fail, OK # 'source' is not a built-in identifier
|
|
resource_test: Fail # out of date - resource directives have been removed
|
|
static_call_wrong_argument_count_negative_test: Fail # Runtime only test, rewrite as multitest
|
|
syntax_test/none: Fail # Bug 2107 Static type warnings in none case (INSTANTIATION_OF_CLASS_WITH_UNIMPLEMENTED_MEMBERS)
|
|
throw7_negative_test: Fail # Issue 3654
|
|
type_variable_bounds_test/00: Fail # issue 3079
|
|
type_variable_bounds_test/07: Fail # language change 1031
|
|
|
|
# test issue 5291
|
|
type_parameter_test/01: Fail, OK
|
|
type_parameter_test/02: Fail, OK
|
|
type_parameter_test/03: Fail, OK
|
|
type_parameter_test/04: Fail, OK
|
|
type_variable_scope2_test: Fail, OK
|
|
|
|
# test issue 5333
|
|
named_constructor_test: Fail, OK
|
|
naming_test: Fail, OK
|
|
|
|
# test issue 5337
|
|
bad_constructor_test/05: Fail, OK
|
|
|
|
|
|
|
|
#
|
|
# Add new dartc annotations above in alphabetical order
|
|
#
|
|
|
|
# VM specific tests that should not be run by DartC.
|
|
*vm_test: Skip
|
|
*vm_negative_test: Skip
|
|
|
|
|
|
[ $compiler == none && $runtime == drt ]
|
|
gc_test: Skip # Issue 1487
|
|
prefix_new_test: Fail
|
|
|
|
[ $runtime == dartium ]
|
|
|
|
[ $runtime == vm ]
|
|
first_class_types_test: Fail # Issue 3902
|
|
call_nonexistent_static_test/01: Fail # Issues 3094
|
|
call_nonexistent_static_test/02: Fail # Issues 3088
|
|
call_nonexistent_static_test/03: Fail # Issues 3085
|
|
call_nonexistent_static_test/04: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/05: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/06: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/07: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/08: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/09: Fail # Unresolved static calls are no longer errors.
|
|
call_nonexistent_static_test/10: Fail, Crash # Unresolved static calls are no longer errors.
|
|
getter_no_setter2_test/01: Fail # Unresolved static calls are no longer errors.
|
|
setter_no_getter_test/01: Crash # Unresolved static calls are no longer errors.
|
|
|
|
[ $runtime == chrome ]
|
|
string_escape1_negative_test: Skip
|
|
|
|
# TODO(jmesserly): now that we have a bot, we need to set up Opera testing.
|
|
[ $runtime == opera ]
|
|
*: Skip
|
|
|
|
[ $runtime == ie && ($system == linux || $system == macos) ]
|
|
*: Skip
|
|
|
|
[ $runtime == safari && ($system == linux || $system == windows) ]
|
|
*: Skip
|
|
|
|
[ $browser ]
|
|
|
|
|
|
[ $arch == simarm ]
|
|
*: Skip
|
|
|
|
[ $arch == arm ]
|
|
*: Skip
|
|
|
|
[ $compiler == dart2dart ]
|
|
metadata_test: Fail
|
|
# Fails in conservative mode, issue 4935, passes in minifinying mode.
|
|
assert_lexical_scope_test: Fail, Pass
|
|
bad_constructor_test/04: Fail
|
|
bad_constructor_test/05: Fail
|
|
bad_constructor_test/06: Fail
|
|
argument_definition_test/*: Skip # Not implemented.
|
|
argument_definition2_test: Skip # Not implemented. Fails in minified tests.
|
|
call_constructor_on_unresolvable_class_test/01: Fail # generates 'new Unresolved()' which fails on the VM
|
|
call_constructor_on_unresolvable_class_test/02: Fail # generates 'new Unresolved()' which fails on the VM
|
|
call_constructor_on_unresolvable_class_test/03: Fail # generates 'new Unresolved()' which fails on the VM
|
|
call_constructor_on_unresolvable_class_test/07: Fail # generates 'new Unresolved()' which fails on the VM
|
|
call_nonexistent_constructor_test: Fail # Issue 1031
|
|
const_var_test: 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.
|
|
field1_negative_test: Fail, OK # Bad test: assumes eager loading.
|
|
field6_negative_test: Fail, OK # Bad test: assumes eager loading.
|
|
field7_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/08: Fail
|
|
pseudo_kw_illegal_test/10: Fail
|
|
pseudo_kw_illegal_test/11: 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
|
|
# Call operator is not supported by DartVM (see suppression above.)
|
|
call_operator_test: Fail
|
|
# dart2js frontend doesn't even analyse problematic classes.
|
|
class_extends_negative_test: Fail
|
|
duplicate_implements_test/01: Fail
|
|
duplicate_implements_test/02: Fail
|
|
duplicate_implements_test/03: Fail
|
|
duplicate_implements_test/04: Fail
|
|
field2_negative_test: Fail
|
|
field4_negative_test: Fail
|
|
field5_negative_test: Fail
|
|
field6a_negative_test: Fail
|
|
field7a_negative_test: Fail
|
|
interface_factory_constructor_negative_test: Fail
|
|
interface_static_method_negative_test: Fail
|
|
non_const_super_negative_test: Fail
|
|
method_override2_test/00: Fail
|
|
method_override2_test/02: Fail
|
|
method_override2_test/03: Fail
|
|
operator1_negative_test: Fail
|
|
prefix18_negative_test: Fail
|
|
prefix20_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 frontend: cannot find the constructor.
|
|
default_factory_library_test: Fail
|
|
# Bug in dart2js parser: it happily parses 1is int; variable declaration.
|
|
number_identifier_negative_test: Fail
|
|
# Bug in dart2js frontent: does not support this feature.
|
|
switch_label_test: Fail
|
|
# Common with language_dart2js.
|
|
factory_redirection_test: Fail # 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
|
|
function_type_parameter2_test: Fail
|
|
function_type_parameter_test: Fail
|
|
implicit_scope_test: Fail
|
|
instanceof3_test: Fail
|
|
parameter_initializer6_negative_test: Fail # Issue 3502
|
|
syntax_test/47: Fail
|
|
# DartVM problem.
|
|
closure_with_super_send_test: Fail # Issue 3197.
|
|
closure_with_super_field_test: Fail # Issue 3197.
|
|
constructor5_test: Fail
|
|
constructor6_test: Fail
|
|
fauxverride_test/none: Fail
|
|
field_override_test/01: Fail
|
|
field_override_test/02: Fail
|
|
field_override_test/none: Fail
|
|
gc_test: Fail
|
|
super_closure_test: Fail
|
|
super_field_access_test: Fail
|
|
super_first_constructor_test: Fail
|
|
# VM specific tests.
|
|
disable_privacy_test: Fail, Ok
|
|
# 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.
|
|
overridden_no_such_method_test: Pass, Fail, OK # Hard codes the name of invoked method ("foo").
|
|
many_overridden_no_such_method_test: Pass, Fail, OK # Hard codes the name of invoked method ("foo").
|
|
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.
|
|
|
|
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
|
|
|
|
type_error_test: Fail, OK # VM bug: http://dartbug.com/5280
|