From 0516f9f545dbc839ba4d9b1ebbbb16ce1bc0a50e Mon Sep 17 00:00:00 2001 From: Vijay Menon Date: Fri, 19 Aug 2016 08:27:20 -0700 Subject: [PATCH] Regression test dart:mirrors About 50 tests pass right now. A bunch more fail. See #199 R=jmesserly@google.com Review URL: https://codereview.chromium.org/2256393002 . --- pkg/dev_compiler/karma.conf.js | 1 + .../test/browser/language_tests.js | 310 ++++++++++++++++++ pkg/dev_compiler/test/codegen_test.dart | 1 + 3 files changed, 312 insertions(+) diff --git a/pkg/dev_compiler/karma.conf.js b/pkg/dev_compiler/karma.conf.js index 49abf9d8e879..8fdac3a5af1e 100644 --- a/pkg/dev_compiler/karma.conf.js +++ b/pkg/dev_compiler/karma.conf.js @@ -23,6 +23,7 @@ module.exports = function(config) { 'gen/codegen_output/lib/convert/**.js', 'gen/codegen_output/lib/html/**.js', 'gen/codegen_output/lib/math/**.js', + 'gen/codegen_output/lib/mirrors/**.js', 'gen/codegen_output/lib/typed_data/**.js', 'gen/codegen_output/lib/*/**.err', 'test/browser/*.js', diff --git a/pkg/dev_compiler/test/browser/language_tests.js b/pkg/dev_compiler/test/browser/language_tests.js index 64af69b041fc..c92dfd853382 100644 --- a/pkg/dev_compiler/test/browser/language_tests.js +++ b/pkg/dev_compiler/test/browser/language_tests.js @@ -2734,6 +2734,316 @@ 'typed_data_hierarchy_int64_test': skip_fail, 'typed_data_list_test': fail, }, + + 'lib/mirrors': { + 'abstract_class_test_none_multi': fail, + 'accessor_cache_overflow_test': fail, + 'array_tracing3_test': fail, + 'array_tracing_test': fail, + 'basic_types_in_dart_core_test': fail, + 'circular_factory_redirection_test_none_multi': fail, + 'class_mirror_location_test': fail, + 'class_mirror_type_variables_test': fail, + 'closurization_equivalence_test': fail, + 'constructor_kinds_test_01_multi': fail, + 'constructor_kinds_test_none_multi': fail, + 'constructor_optional_args_test': fail, + 'constructor_private_name_test': fail, + 'declarations_type_test': fail, + 'deferred_mirrors_metadata_test': skip_timeout, + 'deferred_mirrors_metatarget_test': skip_timeout, + 'deferred_mirrors_update_test': fail, + 'empty_test': fail, + 'equality_test': fail, + 'fake_function_with_call_test': fail, + 'field_type_test': fail, + 'function_apply_mirrors_test': fail, + 'function_type_mirror_test': fail, + 'generic_f_bounded_test_01_multi': fail, + 'generic_f_bounded_test_none_multi': fail, + 'generic_function_typedef_test': fail, + 'generic_interface_test_none_multi': fail, + 'generic_list_test': fail, + 'generic_local_function_test': fail, + 'generic_mixin_applications_test': fail, + 'generic_mixin_test': fail, + 'generic_superclass_test_01_multi': fail, + 'generic_superclass_test_none_multi': fail, + 'generic_type_mirror_test': fail, + 'generics_double_substitution_test_01_multi': fail, + 'generics_double_substitution_test_none_multi': fail, + 'generics_dynamic_test': fail, + 'generics_special_types_test': fail, + 'generics_substitution_test': fail, + 'generics_test_none_multi': fail, + 'get_field_static_test_00_multi': fail, + 'get_field_static_test_none_multi': fail, + 'globalized_closures2_test_00_multi': fail, + 'globalized_closures2_test_none_multi': fail, + 'globalized_closures_test_00_multi': fail, + 'globalized_closures_test_none_multi': fail, + 'hierarchy_invariants_test': fail, + 'hot_get_field_test': fail, + 'hot_set_field_test': fail, + 'inherited_metadata_test': fail, + 'instance_members_unimplemented_interface_test': fail, + 'instantiate_abstract_class_test': fail, + 'intercepted_superclass_test': fail, + 'invocation_fuzz_test_emptyarray_multi': fail, + 'invocation_fuzz_test_false_multi': fail, + 'invocation_fuzz_test_none_multi': fail, + 'invocation_fuzz_test_smi_multi': fail, + 'invocation_fuzz_test_string_multi': fail, + 'invoke_call_on_closure_test': fail, + 'invoke_closurization2_test': fail, + 'invoke_closurization_test': fail, + 'invoke_import_test': fail, + 'invoke_named_test_01_multi': fail, + 'invoke_named_test_none_multi': fail, + 'invoke_natives_malicious_test': fail, + 'invoke_private_test': fail, + 'invoke_private_wrong_library_test': fail, + 'invoke_test': fail, + 'invoke_throws_test': fail, + 'io_html_mutual_exclusion_test': fail, + 'libraries_test': fail, + 'library_enumeration_deferred_loading_test': fail, + 'library_imports_bad_metadata_test_none_multi': fail, + 'library_metadata2_test_none_multi': fail, + 'library_metadata_test': fail, + 'library_uri_package_test': fail, + 'list_constructor_test_01_multi': fail, + 'list_constructor_test_none_multi': fail, + 'local_function_is_static_test': fail, + 'local_isolate_test': fail, + 'metadata_allowed_values_test_none_multi': fail, + 'metadata_constructed_constant_test': fail, + 'metadata_constructor_arguments_test_none_multi': fail, + 'metadata_nested_constructor_call_test_none_multi': fail, + 'metadata_scope_test_none_multi': fail, + 'metadata_test': fail, + 'method_mirror_location_test': fail, + 'method_mirror_returntype_test': fail, + 'method_mirror_source_line_ending_test': fail, + 'method_mirror_source_test': fail, + 'mirrors_reader_test': fail, + 'mirrors_resolve_fields_test': fail, + 'mirrors_used_typedef_declaration_test_01_multi': fail, + 'mirrors_used_typedef_declaration_test_none_multi': fail, + 'mixin_test': fail, + 'new_instance_optional_arguments_test': fail, + 'null2_test': fail, + 'null_test': fail, + 'other_declarations_location_test': fail, + 'parameter_annotation_mirror_test': fail, + 'parameter_is_const_test_none_multi': fail, + 'parameter_metadata_test': fail, + 'private_class_field_test': fail, + 'private_symbol_mangling_test': fail, + 'private_types_test': fail, + 'proxy_type_test': fail, + 'raw_type_test_01_multi': fail, + 'raw_type_test_none_multi': fail, + 'reflect_class_test_none_multi': fail, + 'reflect_runtime_type_test': fail, + 'reflect_uninstantiated_class_test': fail, + 'reflected_type_classes_test_none_multi': fail, + 'reflected_type_function_type_test': fail, + 'reflected_type_special_types_test': fail, + 'reflected_type_test_none_multi': fail, + 'reflected_type_typedefs_test': fail, + 'reflected_type_typevars_test': fail, + 'reflectively_instantiate_uninstantiated_class_test': fail, + 'regress_14304_test': fail, + 'regress_26187_test': fail, + 'relation_assignable_test': fail, + 'relation_subtype_test': fail, + 'runtime_type_test': fail, + 'set_field_with_final_test': fail, + 'static_const_field_test': fail, + 'superclass2_test': fail, + 'superclass_test': fail, + 'symbol_validation_test_01_multi': fail, + 'symbol_validation_test_none_multi': fail, + 'to_string_test': fail, + 'type_argument_is_type_variable_test': fail, + 'type_variable_is_static_test': fail, + 'type_variable_owner_test_01_multi': fail, + 'type_variable_owner_test_none_multi': fail, + 'typedef_deferred_library_test': skip_fail, // Isolate spawn not support + 'typedef_library_test': fail, + 'typedef_metadata_test': fail, + 'typedef_test': fail, + 'typevariable_mirror_metadata_test': fail, + 'unnamed_library_test': fail, + 'variable_is_const_test_none_multi': fail, + + 'abstract_class_test_00_multi': notyetstrong, + 'abstract_test': notyetstrong, + 'circular_factory_redirection_test_01_multi': notyetstrong, + 'circular_factory_redirection_test_02_multi': notyetstrong, + 'class_declarations_test_01_multi': notyetstrong, + 'class_declarations_test_none_multi': notyetstrong, + 'closures_test': notyetstrong, + 'constructors_test': notyetstrong, + 'dart2js_mirrors_test': notyetstrong, + 'deferred_type_test': notyetstrong, + 'delegate_call_through_getter_test': notyetstrong, + 'delegate_class_test': notyetstrong, + 'delegate_function_invocation_test': notyetstrong, + 'delegate_library_test': notyetstrong, + 'delegate_test': notyetstrong, + 'enum_test': notyetstrong, + 'fake_function_without_call_test': notyetstrong, + 'generic_bounded_by_type_parameter_test_01_multi': notyetstrong, + 'generic_bounded_by_type_parameter_test_02_multi': notyetstrong, + 'generic_bounded_by_type_parameter_test_none_multi': notyetstrong, + 'generic_bounded_test_01_multi': notyetstrong, + 'generic_bounded_test_02_multi': notyetstrong, + 'generic_bounded_test_none_multi': notyetstrong, + 'generic_class_declaration_test': notyetstrong, + 'generic_f_bounded_mixin_application_test': notyetstrong, + 'generic_interface_test_01_multi': notyetstrong, + 'generics_test_01_multi': notyetstrong, + 'get_symbol_name_no_such_method_test': notyetstrong, + 'immutable_collections_test': notyetstrong, + 'inference_and_no_such_method_test': notyetstrong, + 'inherit_field_test': notyetstrong, + 'initializing_formals_test_01_multi': notyetstrong, + 'initializing_formals_test_03_multi': notyetstrong, + 'initializing_formals_test_none_multi': notyetstrong, + 'instance_members_easier_test': notyetstrong, + 'instance_members_test': notyetstrong, + 'instance_members_with_override_test': notyetstrong, + 'intercepted_class_test': notyetstrong, + 'intercepted_object_test': notyetstrong, + 'invoke_call_through_getter_previously_accessed_test_named_multi': notyetstrong, + 'invoke_call_through_getter_previously_accessed_test_none_multi': notyetstrong, + 'invoke_call_through_getter_test_named_multi': notyetstrong, + 'invoke_call_through_getter_test_none_multi': notyetstrong, + 'invoke_call_through_implicit_getter_previously_accessed_test_named_multi': notyetstrong, + 'invoke_call_through_implicit_getter_previously_accessed_test_none_multi': notyetstrong, + 'invoke_call_through_implicit_getter_test': notyetstrong, + 'lazy_static_test': notyetstrong, + 'library_declarations_test_01_multi': notyetstrong, + 'library_declarations_test_none_multi': notyetstrong, + 'library_exports_hidden_test': notyetstrong, + 'library_exports_shown_test': notyetstrong, + 'library_import_deferred_loading_test': notyetstrong, + 'library_imports_bad_metadata_test_01_multi': notyetstrong, + 'library_imports_deferred_test': notyetstrong, + 'library_imports_hidden_test': notyetstrong, + 'library_imports_metadata_test': notyetstrong, + 'library_imports_prefixed_show_hide_test': notyetstrong, + 'library_imports_prefixed_test': notyetstrong, + 'library_imports_shown_test': notyetstrong, + 'library_metadata2_test_01_multi': notyetstrong, + 'library_uri_io_test': notyetstrong, + 'load_library_test': notyetstrong, + 'metadata_allowed_values_test_01_multi': notyetstrong, + 'metadata_allowed_values_test_02_multi': notyetstrong, + 'metadata_allowed_values_test_03_multi': notyetstrong, + 'metadata_allowed_values_test_04_multi': notyetstrong, + 'metadata_allowed_values_test_05_multi': notyetstrong, + 'metadata_allowed_values_test_06_multi': notyetstrong, + 'metadata_allowed_values_test_07_multi': notyetstrong, + 'metadata_allowed_values_test_08_multi': notyetstrong, + 'metadata_allowed_values_test_09_multi': notyetstrong, + 'metadata_allowed_values_test_10_multi': notyetstrong, + 'metadata_allowed_values_test_11_multi': notyetstrong, + 'metadata_allowed_values_test_12_multi': notyetstrong, + 'metadata_allowed_values_test_13_multi': notyetstrong, + 'metadata_allowed_values_test_14_multi': notyetstrong, + 'metadata_allowed_values_test_15_multi': notyetstrong, + 'metadata_allowed_values_test_16_multi': notyetstrong, + 'metadata_allowed_values_test_17_multi': notyetstrong, + 'metadata_allowed_values_test_18_multi': notyetstrong, + 'metadata_allowed_values_test_19_multi': notyetstrong, + 'metadata_allowed_values_test_20_multi': notyetstrong, + 'metadata_allowed_values_test_21_multi': notyetstrong, + 'metadata_allowed_values_test_22_multi': notyetstrong, + 'metadata_allowed_values_test_23_multi': notyetstrong, + 'metadata_allowed_values_test_24_multi': notyetstrong, + 'metadata_allowed_values_test_25_multi': notyetstrong, + 'metadata_allowed_values_test_26_multi': notyetstrong, + 'metadata_allowed_values_test_27_multi': notyetstrong, + 'metadata_allowed_values_test_28_multi': notyetstrong, + 'metadata_allowed_values_test_29_multi': notyetstrong, + 'metadata_allowed_values_test_30_multi': notyetstrong, + 'metadata_allowed_values_test_31_multi': notyetstrong, + 'metadata_constructor_arguments_test_01_multi': notyetstrong, + 'metadata_constructor_arguments_test_02_multi': notyetstrong, + 'metadata_constructor_arguments_test_03_multi': notyetstrong, + 'metadata_constructor_arguments_test_04_multi': notyetstrong, + 'metadata_constructor_arguments_test_05_multi': notyetstrong, + 'metadata_constructor_arguments_test_06_multi': notyetstrong, + 'metadata_constructor_arguments_test_07_multi': notyetstrong, + 'metadata_nested_constructor_call_test_01_multi': notyetstrong, + 'metadata_nested_constructor_call_test_02_multi': notyetstrong, + 'metadata_nested_constructor_call_test_03_multi': notyetstrong, + 'metadata_nested_constructor_call_test_04_multi': notyetstrong, + 'metadata_nested_constructor_call_test_05_multi': notyetstrong, + 'metadata_nested_constructor_call_test_06_multi': notyetstrong, + 'metadata_nested_constructor_call_test_07_multi': notyetstrong, + 'metadata_nested_constructor_call_test_08_multi': notyetstrong, + 'metadata_nested_constructor_call_test_09_multi': notyetstrong, + 'metadata_scope_test_01_multi': notyetstrong, + 'method_mirror_name_test': notyetstrong, + 'method_mirror_properties_test': notyetstrong, + 'mirror_in_static_init_test_01_multi': notyetstrong, + 'mirror_in_static_init_test_none_multi': notyetstrong, + 'mirrors_nsm_mismatch_test': notyetstrong, + 'mirrors_nsm_test_dart2js_multi': notyetstrong, + 'mirrors_nsm_test_none_multi': notyetstrong, + 'mirrors_test': notyetstrong, + 'mirrors_used_get_name2_test': notyetstrong, + 'mirrors_used_get_name_test': notyetstrong, + 'mirrors_used_inheritance_test': notyetstrong, + 'mixin_application_test': notyetstrong, + 'mixin_members_test': notyetstrong, + 'model_test': notyetstrong, + 'native_class_test': notyetstrong, + 'no_metadata_test': notyetstrong, + 'operator_test': notyetstrong, + 'parameter_is_const_test_01_multi': notyetstrong, + 'parameter_of_mixin_app_constructor_test': notyetstrong, + 'parameter_test_01_multi': notyetstrong, + 'parameter_test_none_multi': notyetstrong, + 'private_symbol_test': notyetstrong, + 'redirecting_factory_different_type_test_01_multi': notyetstrong, + 'redirecting_factory_different_type_test_none_multi': notyetstrong, + 'redirecting_factory_test_01_multi': notyetstrong, + 'redirecting_factory_test_02_multi': notyetstrong, + 'redirecting_factory_test_none_multi': notyetstrong, + 'reflect_class_test_01_multi': notyetstrong, + 'reflect_class_test_02_multi': notyetstrong, + 'reflect_model_test': notyetstrong, + 'reflected_type_classes_test_01_multi': notyetstrong, + 'reflected_type_classes_test_02_multi': notyetstrong, + 'reflected_type_classes_test_03_multi': notyetstrong, + 'reflected_type_test_01_multi': notyetstrong, + 'reflected_type_test_02_multi': notyetstrong, + 'reflected_type_test_03_multi': notyetstrong, + 'regress_16321_test_01_multi': notyetstrong, + 'regress_19731_test': notyetstrong, + 'relation_subclass_test': notyetstrong, + 'removed_api_test': notyetstrong, + 'repeated_private_anon_mixin_app_test': notyetstrong, + 'return_type_test': notyetstrong, + 'set_field_with_final_inheritance_test': notyetstrong, + 'static_members_easier_test': notyetstrong, + 'static_members_test': notyetstrong, + 'static_test': notyetstrong, + 'syntax_error_test_01_multi': notyetstrong, + 'synthetic_accessor_properties_test': notyetstrong, + 'top_level_accessors_test': notyetstrong, + 'type_mirror_for_type_test': notyetstrong, + 'typearguments_mirror_test': notyetstrong, + 'typedef_in_signature_test': notyetstrong, + 'typedef_reflected_type_test_01_multi': notyetstrong, + 'typedef_reflected_type_test_none_multi': notyetstrong, + 'variable_is_const_test_01_multi': notyetstrong, + }, }; function countMatches(text, regex) { diff --git a/pkg/dev_compiler/test/codegen_test.dart b/pkg/dev_compiler/test/codegen_test.dart index 60db69316bb0..fd154bee169b 100644 --- a/pkg/dev_compiler/test/codegen_test.dart +++ b/pkg/dev_compiler/test/codegen_test.dart @@ -85,6 +85,7 @@ main(List arguments) { path.join('lib', 'convert'), path.join('lib', 'html'), path.join('lib', 'math'), + path.join('lib', 'mirrors'), path.join('lib', 'typed_data'), ];