diff options
author | Quentin Le Menez | 2017-02-06 15:56:12 +0000 |
---|---|---|
committer | Gerrit Code Review @ Eclipse.org | 2017-02-20 15:39:13 +0000 |
commit | 9a06b9b64cb38d534f9cb4f830b4ee88ab0cc713 (patch) | |
tree | 8ab2b56421682077dbefd6cf2a203933b11b60be /tests/junit/plugins/uml/profile | |
parent | db3a1aeed25cbd5bf529089f45b74f3e73e56eb0 (diff) | |
download | org.eclipse.papyrus-9a06b9b64cb38d534f9cb4f830b4ee88ab0cc713.tar.gz org.eclipse.papyrus-9a06b9b64cb38d534f9cb4f830b4ee88ab0cc713.tar.xz org.eclipse.papyrus-9a06b9b64cb38d534f9cb4f830b4ee88ab0cc713.zip |
[releng] [oxygen] [test] update pom.xml to point on the immediate parent instead of the releng one
- suites kept this dependency for now
Change-Id: I03ba6253e884b7361efa1b05d48ffbe17e0f6491
Signed-off-by: Quentin Le Menez <quentin.lemenez@cea.fr>
Diffstat (limited to 'tests/junit/plugins/uml/profile')
41 files changed, 1607 insertions, 4 deletions
diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.drafter.tests/pom.xml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.drafter.tests/pom.xml index cb3c2d2be29..6887a936470 100644 --- a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.drafter.tests/pom.xml +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.drafter.tests/pom.xml @@ -3,10 +3,9 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> - <groupId>org.eclipse.papyrus</groupId> - <artifactId>org.eclipse.papyrus.tests.releng</artifactId> - <version>1.2.0-SNAPSHOT</version> - <relativePath>../../../../../../releng/main-tests/pom.xml</relativePath> + <groupId>org.eclipse.papyrus.tests</groupId> + <artifactId>org.eclipse.papyrus.uml.profile.tests.releng</artifactId> + <version>0.0.1-SNAPSHOT</version> </parent> <groupId>org.eclipse.papyrus.tests</groupId> <artifactId>org.eclipse.papyrus.uml.profile.drafter.tests</artifactId> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.classpath b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.classpath new file mode 100644 index 00000000000..96a60afc9f1 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.classpath @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"> + <accessrules> + <accessrule kind="accessible" pattern="org/eclipse/papyrus/uml/profile/**"/> + </accessrules> + </classpathentry> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.project b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.project new file mode 100644 index 00000000000..27eb8ebdd51 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.papyrus.uml.profile.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.core.prefs b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..f08be2b06c4 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,291 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.7 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=260 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=false +org.eclipse.jdt.core.formatter.join_wrapped_lines=false +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=260 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=tab +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.ui.prefs b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..954281dbc31 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,68 @@ +cleanup.add_default_serial_version_id=true +cleanup.add_generated_serial_version_id=false +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=false +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=false +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_functional_interfaces=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=false +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.insert_inferred_type_arguments=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=false +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_redundant_type_arguments=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_anonymous_class_creation=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_lambda=true +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=true +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup.use_type_arguments=false +cleanup_profile=_Papyrus +cleanup_settings_version=2 +eclipse.preferences.version=1 +formatter_profile=_Papyrus +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org;com; +org.eclipse.jdt.ui.javadoc=true +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n * CEA LIST - Initial API and implementation\n * \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..32f3ff7b907 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/META-INF/MANIFEST.MF @@ -0,0 +1,14 @@ +Manifest-Version: 1.0 +Require-Bundle: org.junit;bundle-version="4.10.0", + org.eclipse.papyrus.junit.framework;bundle-version="1.2.0", + org.eclipse.papyrus.junit.utils;bundle-version="1.2.0", + org.eclipse.papyrus.uml.profile;bundle-version="1.2.0" +Export-Package: org.eclipse.papyrus.uml.profile.service, + org.eclipse.papyrus.uml.profile.tests +Bundle-Vendor: %providerName +Bundle-Version: 1.2.0.qualifier +Bundle-Name: %pluginName +Bundle-Localization: plugin +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: org.eclipse.papyrus.uml.profile.tests;singleton:=true +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/about.html b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/about.html new file mode 100644 index 00000000000..d35d5aed64c --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/about.html @@ -0,0 +1,28 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/build.properties b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/build.properties new file mode 100644 index 00000000000..d4d0729e078 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/build.properties @@ -0,0 +1,21 @@ +# +# Copyright (c) 2015 Christian W. Damus and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# Christian W. Damus - Initial API and implementation +# + +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + plugin.properties,\ + about.html,\ + resources/,\ + plugin.xml +src.includes = about.html diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/org.eclipse.papyrus.uml.profile.tests.launch b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/org.eclipse.papyrus.uml.profile.tests.launch new file mode 100644 index 00000000000..539b87ddf31 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/org.eclipse.papyrus.uml.profile.tests.launch @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<listAttribute key="com.mountainminds.eclemma.core.SCOPE_IDS"> +<listEntry value="=org.eclipse.papyrus.uml.profile/src"/> +</listAttribute> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/AllTests.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/> +<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.papyrus.uml.profile.tests.AllTests"/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.papyrus.uml.profile.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Doomph.setup.questionnaire.skip=true -Doomph.setup.skip=true"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.sdk.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.properties b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.properties new file mode 100644 index 00000000000..e762b2985f8 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.properties @@ -0,0 +1,14 @@ +# +# Copyright (c) 2015 Christian W. Damus and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# Christian W. Damus - Initial API and implementation +# + +providerName=Eclipse Modeling Project +pluginName= UML Model Repair Tests diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.xml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.xml new file mode 100644 index 00000000000..0db30446cce --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/plugin.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2015 Christian W. Damus and others. + + All rights reserved. This program and the accompanying materials + are made available under the terms of the Eclipse Public License v1.0 + which accompanies this distribution, and is available at + http://www.eclipse.org/legal/epl-v10.html + + Contributors: + Christian W. Damus - Initial API and implementation + + --> +<?eclipse version="3.4"?> +<fragment> + <extension + point="org.eclipse.emf.ecore.uri_mapping"> + <mapping + source="pathmap://profiletests/profiles/" + target="platform:/plugin/org.eclipse.papyrus.uml.profile.tests/resources/profiles/"> + </mapping> + </extension> + <extension + point="org.eclipse.uml2.uml.dynamic_package"> + <profile + location="pathmap://profiletests/profiles/stuff.profile.uml#_0" + uri="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff"> + </profile> + </extension> + <extension + point="org.eclipse.papyrus.uml.extensionpoints.UMLProfile"> + <profile + name="Profile Tests Dynamic Stuff Profile" + path="pathmap://profiletests/profiles/stuff.profile.uml"> + </profile> + </extension> +</fragment> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/pom.xml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/pom.xml new file mode 100644 index 00000000000..bb395e21011 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/pom.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.eclipse.papyrus.tests</groupId> + <artifactId>org.eclipse.papyrus.uml.profile.tests.releng</artifactId> + <version>0.0.1-SNAPSHOT</version> + </parent> + <groupId>org.eclipse.papyrus.tests</groupId> + <artifactId>org.eclipse.papyrus.uml.profile.tests</artifactId> + <version>1.2.0-SNAPSHOT</version> + <packaging>eclipse-test-plugin</packaging> +</project> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.notation new file mode 100644 index 00000000000..e285736faf6 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.notation @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_zXGf4EZyEeWtav3ltMZ4nQ" type="PapyrusUMLClassDiagram" name="Class Diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_0mV6MEZyEeWtav3ltMZ4nQ" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_0mWhQEZyEeWtav3ltMZ4nQ" type="5029"/> + <children xmi:type="notation:DecorationNode" xmi:id="_0mWhQUZyEeWtav3ltMZ4nQ" type="8510"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_0mWhQkZyEeWtav3ltMZ4nQ" y="5"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_0mWhQ0ZyEeWtav3ltMZ4nQ" type="7017"> + <styles xmi:type="notation:TitleStyle" xmi:id="_0mWhREZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_0mWhRUZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_0mWhRkZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0mWhR0ZyEeWtav3ltMZ4nQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_0mWhSEZyEeWtav3ltMZ4nQ" type="7018"> + <styles xmi:type="notation:TitleStyle" xmi:id="_0mWhSUZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_0mWhSkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_0mWhS0ZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0mWhTEZyEeWtav3ltMZ4nQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_0mWhTUZyEeWtav3ltMZ4nQ" type="7019"> + <styles xmi:type="notation:TitleStyle" xmi:id="_0mWhTkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_0mWhT0ZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_0mWhUEZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0mWhUUZyEeWtav3ltMZ4nQ"/> + </children> + <element xmi:type="uml:Class" href="out-of-date.uml#_0mTd8EZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0mV6MUZyEeWtav3ltMZ4nQ" x="165" y="108"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_YzKRsEZzEeWtav3ltMZ4nQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_YzKRsUZzEeWtav3ltMZ4nQ" showTitle="true"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YzKRs0ZzEeWtav3ltMZ4nQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="out-of-date.uml#_0mTd8EZyEeWtav3ltMZ4nQ"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YzKRskZzEeWtav3ltMZ4nQ" x="365" y="108"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_zXGf4UZyEeWtav3ltMZ4nQ" name="diagram_compatibility_version" stringValue="1.1.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_zXGf4kZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="style:PapyrusViewStyle" xmi:id="_zXGf40ZyEeWtav3ltMZ4nQ"> + <owner xmi:type="uml:Model" href="out-of-date.uml#_zXC1gEZyEeWtav3ltMZ4nQ"/> + </styles> + <element xmi:type="uml:Model" href="out-of-date.uml#_zXC1gEZyEeWtav3ltMZ4nQ"/> + <edges xmi:type="notation:Connector" xmi:id="_YzKRtEZzEeWtav3ltMZ4nQ" type="StereotypeCommentLink" source="_0mV6MEZyEeWtav3ltMZ4nQ" target="_YzKRsEZzEeWtav3ltMZ4nQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_YzKRtUZzEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YzKRuUZzEeWtav3ltMZ4nQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="out-of-date.uml#_0mTd8EZyEeWtav3ltMZ4nQ"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YzKRtkZzEeWtav3ltMZ4nQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YzKRt0ZzEeWtav3ltMZ4nQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YzKRuEZzEeWtav3ltMZ4nQ"/> + </edges> +</notation:Diagram> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.uml new file mode 100644 index 00000000000..75ae05e23c8 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/out-of-date.uml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff pathmap://profiletests/profiles/stuff.profile.uml#stuff0"> + <uml:Model xmi:id="_zXC1gEZyEeWtav3ltMZ4nQ" name="out-of-date"> + <packagedElement xmi:type="uml:Class" xmi:id="_0mTd8EZyEeWtav3ltMZ4nQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_zXVwcEZyEeWtav3ltMZ4nQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zXWXgEZyEeWtav3ltMZ4nQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://profiletests/profiles/stuff.profile.uml#stuff0"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://profiletests/profiles/stuff.profile.uml#_0"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_YyoGMEZzEeWtav3ltMZ4nQ" description="This is a class." base_Classifier="_0mTd8EZyEeWtav3ltMZ4nQ"/> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.notation new file mode 100644 index 00000000000..4318a22fa74 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.notation @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_Ie-uAEZyEeWtav3ltMZ4nQ" type="PapyrusUMLClassDiagram" name="Class Diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_KQGGUEZyEeWtav3ltMZ4nQ" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_KQRFcEZyEeWtav3ltMZ4nQ" type="5029"/> + <children xmi:type="notation:DecorationNode" xmi:id="_KQRFcUZyEeWtav3ltMZ4nQ" type="8510"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_KQRFckZyEeWtav3ltMZ4nQ" y="5"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KQZBQEZyEeWtav3ltMZ4nQ" type="7017"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KQZBQUZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KQZBQkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KQZBQ0ZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KQZBREZyEeWtav3ltMZ4nQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KQZBRUZyEeWtav3ltMZ4nQ" type="7018"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KQZBRkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KQZBR0ZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KQZBSEZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KQZBSUZyEeWtav3ltMZ4nQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KQZoUEZyEeWtav3ltMZ4nQ" type="7019"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KQZoUUZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KQZoUkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KQZoU0ZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KQZoVEZyEeWtav3ltMZ4nQ"/> + </children> + <element xmi:type="uml:Class" href="up-to-date.uml#_KP1noEZyEeWtav3ltMZ4nQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KQGGUUZyEeWtav3ltMZ4nQ" x="189" y="91"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_MEI20EZyEeWtav3ltMZ4nQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_MEI20UZyEeWtav3ltMZ4nQ" showTitle="true"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_MEJd4EZyEeWtav3ltMZ4nQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="up-to-date.uml#_KP1noEZyEeWtav3ltMZ4nQ"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MEI20kZyEeWtav3ltMZ4nQ" x="389" y="91"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_Ie-uAUZyEeWtav3ltMZ4nQ" name="diagram_compatibility_version" stringValue="1.1.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_Ie-uAkZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="style:PapyrusViewStyle" xmi:id="_Ie-uA0ZyEeWtav3ltMZ4nQ"> + <owner xmi:type="uml:Model" href="up-to-date.uml#_IcrA4EZyEeWtav3ltMZ4nQ"/> + </styles> + <element xmi:type="uml:Model" href="up-to-date.uml#_IcrA4EZyEeWtav3ltMZ4nQ"/> + <edges xmi:type="notation:Connector" xmi:id="_MEO9cEZyEeWtav3ltMZ4nQ" type="StereotypeCommentLink" source="_KQGGUEZyEeWtav3ltMZ4nQ" target="_MEI20EZyEeWtav3ltMZ4nQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_MEO9cUZyEeWtav3ltMZ4nQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_MEQLkUZyEeWtav3ltMZ4nQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="up-to-date.uml#_KP1noEZyEeWtav3ltMZ4nQ"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MEO9ckZyEeWtav3ltMZ4nQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MEPkgEZyEeWtav3ltMZ4nQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MEQLkEZyEeWtav3ltMZ4nQ"/> + </edges> +</notation:Diagram> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.uml new file mode 100644 index 00000000000..4c7cd6c2a09 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/dynamic/up-to-date.uml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff pathmap://profiletests/profiles/stuff.profile.uml#stuff1"> + <uml:Model xmi:id="_IcrA4EZyEeWtav3ltMZ4nQ" name="up-to-date"> + <packagedElement xmi:type="uml:Class" xmi:id="_KP1noEZyEeWtav3ltMZ4nQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_Ifg5gEZyEeWtav3ltMZ4nQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IfiHoEZyEeWtav3ltMZ4nQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://profiletests/profiles/stuff.profile.uml#stuff1"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://profiletests/profiles/stuff.profile.uml#_0"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_MDO34EZyEeWtav3ltMZ4nQ" description="This is a class." base_Classifier="_KP1noEZyEeWtav3ltMZ4nQ"> + <tag>red</tag> + <tag>high</tag> + <tag>work</tag> + </stuff:Thing> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.notation new file mode 100644 index 00000000000..f664d442249 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.notation @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_HCgKYEXtEeWW-NrtKWQJcQ" type="PapyrusUMLClassDiagram" name="Class Diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_HnWj4EXtEeWW-NrtKWQJcQ" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_HnXK8EXtEeWW-NrtKWQJcQ" type="5029"/> + <children xmi:type="notation:DecorationNode" xmi:id="_HnXK8UXtEeWW-NrtKWQJcQ" type="8510"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_HnXK8kXtEeWW-NrtKWQJcQ" y="5"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_HnXK80XtEeWW-NrtKWQJcQ" type="7017"> + <styles xmi:type="notation:TitleStyle" xmi:id="_HnXK9EXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_HnXK9UXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_HnXK9kXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HnXK90XtEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_HnXK-EXtEeWW-NrtKWQJcQ" type="7018"> + <styles xmi:type="notation:TitleStyle" xmi:id="_HnXK-UXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_HnXK-kXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_HnXK-0XtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HnXK_EXtEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_HnXK_UXtEeWW-NrtKWQJcQ" type="7019"> + <styles xmi:type="notation:TitleStyle" xmi:id="_HnXK_kXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_HnXK_0XtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_HnXLAEXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HnXLAUXtEeWW-NrtKWQJcQ"/> + </children> + <element xmi:type="uml:Class" href="out-of-date.uml#_HnUHoEXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HnWj4UXtEeWW-NrtKWQJcQ" x="143" y="90"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_Jd510EXtEeWW-NrtKWQJcQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_Jd510UXtEeWW-NrtKWQJcQ" showTitle="true"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Jd5100XtEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="out-of-date.uml#_HnUHoEXtEeWW-NrtKWQJcQ"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Jd510kXtEeWW-NrtKWQJcQ" x="343" y="90"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_HCgKYUXtEeWW-NrtKWQJcQ" name="diagram_compatibility_version" stringValue="1.1.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_HCgKYkXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="style:PapyrusViewStyle" xmi:id="_HCgKY0XtEeWW-NrtKWQJcQ"> + <owner xmi:type="uml:Model" href="out-of-date.uml#_HCbR4EXtEeWW-NrtKWQJcQ"/> + </styles> + <element xmi:type="uml:Model" href="out-of-date.uml#_HCbR4EXtEeWW-NrtKWQJcQ"/> + <edges xmi:type="notation:Connector" xmi:id="_Jd511EXtEeWW-NrtKWQJcQ" type="StereotypeCommentLink" source="_HnWj4EXtEeWW-NrtKWQJcQ" target="_Jd510EXtEeWW-NrtKWQJcQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_Jd511UXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Jd512UXtEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="out-of-date.uml#_HnUHoEXtEeWW-NrtKWQJcQ"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Jd511kXtEeWW-NrtKWQJcQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Jd5110XtEeWW-NrtKWQJcQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Jd512EXtEeWW-NrtKWQJcQ"/> + </edges> +</notation:Diagram> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.uml new file mode 100644 index 00000000000..264e2c47a18 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/out-of-date.uml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http:///schemas/stuff/_7_AnwEXsEeWW-NrtKWQJcQ/0" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http:///schemas/stuff/_7_AnwEXsEeWW-NrtKWQJcQ/0 stuff.profile.uml#_7_AnwkXsEeWW-NrtKWQJcQ"> + <uml:Model xmi:id="_HCbR4EXtEeWW-NrtKWQJcQ" name="out-of-date"> + <packagedElement xmi:type="uml:Class" xmi:id="_HnUHoEXtEeWW-NrtKWQJcQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_HC6aEEXtEeWW-NrtKWQJcQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HC7BIEXtEeWW-NrtKWQJcQ" source="PapyrusVersion"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HC7BIUXtEeWW-NrtKWQJcQ" key="Version" value="0.0.1"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HC7BIkXtEeWW-NrtKWQJcQ" key="Comment" value=""/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HC7BI0XtEeWW-NrtKWQJcQ" key="Copyright" value="Copyright © 2015 Christian W. Damus and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
 Christian W. Damus - Initial API and implementation"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HC7BJEXtEeWW-NrtKWQJcQ" key="Date" value="2015-08-18"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HC7BJUXtEeWW-NrtKWQJcQ" key="Author" value="Christian W. Damus"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HC6aEUXtEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="stuff.profile.uml#_7_AnwkXsEeWW-NrtKWQJcQ"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="stuff.profile.uml#_jMr9oEXsEeWW-NrtKWQJcQ"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_JdXDQEXtEeWW-NrtKWQJcQ" description="This is a class." base_Classifier="_HnUHoEXtEeWW-NrtKWQJcQ"/> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.notation new file mode 100644 index 00000000000..4990f7da746 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.notation @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_jN760EXsEeWW-NrtKWQJcQ" type="PapyrusUMLProfileDiagram" name="Profile Diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_l0DBcEXsEeWW-NrtKWQJcQ" type="1031"> + <children xmi:type="notation:DecorationNode" xmi:id="_l0MLYEXsEeWW-NrtKWQJcQ" type="1084"/> + <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l0MycEXsEeWW-NrtKWQJcQ" x="121" y="55"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_l3W0IEXsEeWW-NrtKWQJcQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_l3W0IUXsEeWW-NrtKWQJcQ" showTitle="true"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_l3XbMEXsEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l3W0IkXsEeWW-NrtKWQJcQ" x="321" y="55"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_nsiNEEXsEeWW-NrtKWQJcQ" type="1026"> + <children xmi:type="notation:DecorationNode" xmi:id="_nsjbMEXsEeWW-NrtKWQJcQ" type="1034"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_nsmegEXsEeWW-NrtKWQJcQ" type="1071"> + <children xmi:type="notation:Shape" xmi:id="_pf4aAEXsEeWW-NrtKWQJcQ" type="3002"> + <element xmi:type="uml:Property" href="stuff.profile.uml#_pfpJcEXsEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_pf4aAUXsEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_MRy5wEXtEeWW-NrtKWQJcQ" type="3002"> + <element xmi:type="uml:Property" href="stuff.profile.uml#_MRq98EXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_MRy5wUXtEeWW-NrtKWQJcQ"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_nsmegUXsEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_nsmegkXsEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_nsmeg0XsEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nsmehEXsEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_nsmehUXsEeWW-NrtKWQJcQ" type="1019"> + <styles xmi:type="notation:TitleStyle" xmi:id="_nsmehkXsEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_nsmeh0XsEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_nsmeiEXsEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nsmeiUXsEeWW-NrtKWQJcQ"/> + </children> + <element xmi:type="uml:Stereotype" href="stuff.profile.uml#_nsfJwEXsEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nsiNEUXsEeWW-NrtKWQJcQ" x="124" y="264"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_jN760UXsEeWW-NrtKWQJcQ" name="diagram_compatibility_version" stringValue="1.1.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_jN760kXsEeWW-NrtKWQJcQ"/> + <styles xmi:type="style:PapyrusViewStyle" xmi:id="_jN7600XsEeWW-NrtKWQJcQ"> + <owner xmi:type="uml:Profile" href="stuff.profile.uml#_jMr9oEXsEeWW-NrtKWQJcQ"/> + </styles> + <element xmi:type="uml:Profile" href="stuff.profile.uml#_jMr9oEXsEeWW-NrtKWQJcQ"/> + <edges xmi:type="notation:Connector" xmi:id="_l3bsoEXsEeWW-NrtKWQJcQ" type="StereotypeCommentLink" source="_l0DBcEXsEeWW-NrtKWQJcQ" target="_l3W0IEXsEeWW-NrtKWQJcQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_l3bsoUXsEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_l3c6wUXsEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_l3bsokXsEeWW-NrtKWQJcQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_l3cTsEXsEeWW-NrtKWQJcQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_l3c6wEXsEeWW-NrtKWQJcQ"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_sbvHIEXsEeWW-NrtKWQJcQ" type="1013" source="_nsiNEEXsEeWW-NrtKWQJcQ" target="_l0DBcEXsEeWW-NrtKWQJcQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_sbvHIUXsEeWW-NrtKWQJcQ"/> + <element xmi:type="uml:Extension" href="stuff.profile.uml#_sbczQEXsEeWW-NrtKWQJcQ"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sbvHIkXsEeWW-NrtKWQJcQ" points="[-1, -7, 22, 184]$[-15, -166, 8, 25]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sceuAEXsEeWW-NrtKWQJcQ" id="(0.46938775510204084,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sceuAUXsEeWW-NrtKWQJcQ" id="(0.59,1.0)"/> + </edges> +</notation:Diagram> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.uml new file mode 100644 index 00000000000..5c7c0d746c3 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/stuff.profile.uml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> +<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_jMr9oEXsEeWW-NrtKWQJcQ" name="stuff" metaclassReference="_lz1mEEXsEeWW-NrtKWQJcQ"> + <eAnnotations xmi:id="_7_AnwUXsEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <contents xmi:type="ecore:EPackage" xmi:id="_Q5JfYEXtEeWW-NrtKWQJcQ" name="stuff" nsURI="http:///schemas/stuff/_Q5I4UEXtEeWW-NrtKWQJcQ/1" nsPrefix="stuff"> + <eAnnotations xmi:id="_Q5JfakXtEeWW-NrtKWQJcQ" source="PapyrusVersion"> + <details xmi:id="_Q5Jfa0XtEeWW-NrtKWQJcQ" key="Version" value="0.0.2"/> + <details xmi:id="_Q5JfbEXtEeWW-NrtKWQJcQ" key="Comment" value=""/> + <details xmi:id="_Q5JfbUXtEeWW-NrtKWQJcQ" key="Copyright" value="Copyright © 2015 Christian W. Damus and others.

All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
 Christian W. Damus - Initial API and implementation"/> + <details xmi:id="_Q5JfbkXtEeWW-NrtKWQJcQ" key="Date" value="2015-08-18"/> + <details xmi:id="_Q5Jfb0XtEeWW-NrtKWQJcQ" key="Author" value="Christian W. Damus"/> + </eAnnotations> + <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q5JfYUXtEeWW-NrtKWQJcQ" name="Thing"> + <eAnnotations xmi:id="_Q5JfYkXtEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_nsfJwEXsEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_Q5JfY0XtEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q5JfZUXtEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_Q5JfZ0XtEeWW-NrtKWQJcQ" name="tag" ordered="false" upperBound="-1"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + <contents xmi:type="ecore:EPackage" xmi:id="_7_AnwkXsEeWW-NrtKWQJcQ" name="stuff" nsURI="http:///schemas/stuff/_7_AnwEXsEeWW-NrtKWQJcQ/0" nsPrefix="stuff"> + <eAnnotations xmi:id="_7_DEAEXsEeWW-NrtKWQJcQ" source="PapyrusVersion"> + <details xmi:id="_7_DEAUXsEeWW-NrtKWQJcQ" key="Version" value="0.0.1"/> + <details xmi:id="_7_DEAkXsEeWW-NrtKWQJcQ" key="Comment" value=""/> + <details xmi:id="_7_DEA0XsEeWW-NrtKWQJcQ" key="Copyright" value="Copyright © 2015 Christian W. Damus and others.

All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
 Christian W. Damus - Initial API and implementation"/> + <details xmi:id="_7_DEBEXsEeWW-NrtKWQJcQ" key="Date" value="2015-08-18"/> + <details xmi:id="_7_DEBUXsEeWW-NrtKWQJcQ" key="Author" value="Christian W. Damus"/> + </eAnnotations> + <eClassifiers xmi:type="ecore:EClass" xmi:id="_7_Anw0XsEeWW-NrtKWQJcQ" name="Thing"> + <eAnnotations xmi:id="_7_AnxEXsEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_nsfJwEXsEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7_AnxUXsEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_7_Anx0XsEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + </eAnnotations> + <elementImport xmi:id="_lz1mEEXsEeWW-NrtKWQJcQ" alias="Classifier"> + <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </elementImport> + <packageImport xmi:id="_jVWxcEXsEeWW-NrtKWQJcQ"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> + </packageImport> + <packageImport xmi:id="_jVXYgEXsEeWW-NrtKWQJcQ"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/> + </packageImport> + <packagedElement xmi:type="uml:Stereotype" xmi:id="_nsfJwEXsEeWW-NrtKWQJcQ" name="Thing"> + <ownedAttribute xmi:id="_pfpJcEXsEeWW-NrtKWQJcQ" name="description" visibility="public"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_reBhsEXsEeWW-NrtKWQJcQ"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_reI2cEXsEeWW-NrtKWQJcQ" value="1"/> + </ownedAttribute> + <ownedAttribute xmi:id="_sbfPgUXsEeWW-NrtKWQJcQ" name="base_Classifier" association="_sbczQEXsEeWW-NrtKWQJcQ"> + <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </ownedAttribute> + <ownedAttribute xmi:id="_MRq98EXtEeWW-NrtKWQJcQ" name="tag" visibility="public"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_N85wsEXtEeWW-NrtKWQJcQ"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_N8_3UEXtEeWW-NrtKWQJcQ" value="*"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Extension" xmi:id="_sbczQEXsEeWW-NrtKWQJcQ" name="E_Thing_Classifier1" memberEnd="_sbfPgEXsEeWW-NrtKWQJcQ _sbfPgUXsEeWW-NrtKWQJcQ"> + <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_sbfPgEXsEeWW-NrtKWQJcQ" name="extension_Thing" type="_nsfJwEXsEeWW-NrtKWQJcQ" aggregation="composite" association="_sbczQEXsEeWW-NrtKWQJcQ"/> + </packagedElement> +</uml:Profile> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.notation new file mode 100644 index 00000000000..e5a878773a5 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.notation @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_VpWfAEXtEeWW-NrtKWQJcQ" type="PapyrusUMLClassDiagram" name="Class Diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_WPpC8EXtEeWW-NrtKWQJcQ" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_WPpqAEXtEeWW-NrtKWQJcQ" type="5029"/> + <children xmi:type="notation:DecorationNode" xmi:id="_WPpqAUXtEeWW-NrtKWQJcQ" type="8510"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_WPpqAkXtEeWW-NrtKWQJcQ" y="5"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_WPpqA0XtEeWW-NrtKWQJcQ" type="7017"> + <styles xmi:type="notation:TitleStyle" xmi:id="_WPpqBEXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_WPpqBUXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_WPpqBkXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WPpqB0XtEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_WPpqCEXtEeWW-NrtKWQJcQ" type="7018"> + <styles xmi:type="notation:TitleStyle" xmi:id="_WPpqCUXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_WPpqCkXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_WPpqC0XtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WPpqDEXtEeWW-NrtKWQJcQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_WPpqDUXtEeWW-NrtKWQJcQ" type="7019"> + <styles xmi:type="notation:TitleStyle" xmi:id="_WPpqDkXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_WPpqD0XtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_WPpqEEXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WPpqEUXtEeWW-NrtKWQJcQ"/> + </children> + <element xmi:type="uml:Class" href="up-to-date.uml#_WPnNwEXtEeWW-NrtKWQJcQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WPpC8UXtEeWW-NrtKWQJcQ" x="144" y="72"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_gBohcEXtEeWW-NrtKWQJcQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_gBohcUXtEeWW-NrtKWQJcQ" showTitle="true"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gBohc0XtEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="up-to-date.uml#_WPnNwEXtEeWW-NrtKWQJcQ"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gBohckXtEeWW-NrtKWQJcQ" x="344" y="72"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_VpWfAUXtEeWW-NrtKWQJcQ" name="diagram_compatibility_version" stringValue="1.1.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_VpWfAkXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="style:PapyrusViewStyle" xmi:id="_VpWfA0XtEeWW-NrtKWQJcQ"> + <owner xmi:type="uml:Model" href="up-to-date.uml#_VpUp0EXtEeWW-NrtKWQJcQ"/> + </styles> + <element xmi:type="uml:Model" href="up-to-date.uml#_VpUp0EXtEeWW-NrtKWQJcQ"/> + <edges xmi:type="notation:Connector" xmi:id="_gBohdEXtEeWW-NrtKWQJcQ" type="StereotypeCommentLink" source="_WPpC8EXtEeWW-NrtKWQJcQ" target="_gBohcEXtEeWW-NrtKWQJcQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_gBohdUXtEeWW-NrtKWQJcQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gBoheUXtEeWW-NrtKWQJcQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="up-to-date.uml#_WPnNwEXtEeWW-NrtKWQJcQ"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gBohdkXtEeWW-NrtKWQJcQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gBohd0XtEeWW-NrtKWQJcQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gBoheEXtEeWW-NrtKWQJcQ"/> + </edges> +</notation:Diagram> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.uml new file mode 100644 index 00000000000..1240dbe71d0 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/papyrus/up-to-date.uml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http:///schemas/stuff/_Q5I4UEXtEeWW-NrtKWQJcQ/1" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http:///schemas/stuff/_Q5I4UEXtEeWW-NrtKWQJcQ/1 stuff.profile.uml#_Q5JfYEXtEeWW-NrtKWQJcQ"> + <uml:Model xmi:id="_VpUp0EXtEeWW-NrtKWQJcQ" name="up-to-date"> + <packagedElement xmi:type="uml:Class" xmi:id="_WPnNwEXtEeWW-NrtKWQJcQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_epCW0EXtEeWW-NrtKWQJcQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_epC94UXtEeWW-NrtKWQJcQ" source="PapyrusVersion"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_epC94kXtEeWW-NrtKWQJcQ" key="Version" value="0.0.2"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_epC940XtEeWW-NrtKWQJcQ" key="Comment" value=""/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_epC95EXtEeWW-NrtKWQJcQ" key="Copyright" value="Copyright © 2015 Christian W. Damus and others.

All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
 Christian W. Damus - Initial API and implementation"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_epC95UXtEeWW-NrtKWQJcQ" key="Date" value="2015-08-18"/> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_epC95kXtEeWW-NrtKWQJcQ" key="Author" value="Christian W. Damus"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_epC94EXtEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="stuff.profile.uml#_Q5JfYEXtEeWW-NrtKWQJcQ"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="stuff.profile.uml#_jMr9oEXsEeWW-NrtKWQJcQ"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_gBILIEXtEeWW-NrtKWQJcQ" description="This is a class." base_Classifier="_WPnNwEXtEeWW-NrtKWQJcQ"> + <tag>red</tag> + <tag>high</tag> + <tag>work</tag> + </stuff:Thing> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/profiles/stuff.profile.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/profiles/stuff.profile.uml new file mode 100644 index 00000000000..7cf15555bc1 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/profiles/stuff.profile.uml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_0" name="stuff" URI="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff" metaclassReference="_jjbc8EXcEeWW-NrtKWQJcQ"> + <eAnnotations xmi:id="_tECQgEXcEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <contents xmi:type="ecore:EPackage" xmi:id="stuff1" name="stuff" nsURI="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff" nsPrefix="stuff"> + <eClassifiers xmi:type="ecore:EClass" xmi:id="stuff1_Thing" name="Thing"> + <eAnnotations xmi:id="_RSSyckXdEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_VP0NYEXcEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_RSSyc0XdEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_RSSydUXdEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_RSSyd0XdEeWW-NrtKWQJcQ" name="tag" ordered="false" upperBound="-1"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + <contents xmi:type="ecore:EPackage" xmi:id="stuff0" name="stuff" nsURI="http://www.eclipse.org/papyrus/test/2015/profile/dynamicstuff" nsPrefix="stuff"> + <eClassifiers xmi:type="ecore:EClass" xmi:id="stuff0_Thing" name="Thing"> + <eAnnotations xmi:id="_tEC3kkXcEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_VP0NYEXcEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_tEC3k0XcEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_tEC3lUXcEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + </eAnnotations> + <elementImport xmi:id="_jjbc8EXcEeWW-NrtKWQJcQ"> + <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </elementImport> + <packagedElement xmi:type="uml:Stereotype" xmi:id="_VP0NYEXcEeWW-NrtKWQJcQ" name="Thing"> + <ownedAttribute xmi:id="_aIBScEXcEeWW-NrtKWQJcQ" name="description"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cQ64oEXcEeWW-NrtKWQJcQ"/> + </ownedAttribute> + <ownedAttribute xmi:id="_o3FH4UXcEeWW-NrtKWQJcQ" name="base_Classifier" association="_o3Eg0EXcEeWW-NrtKWQJcQ"> + <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </ownedAttribute> + <ownedAttribute xmi:id="_Lqte4EXdEeWW-NrtKWQJcQ" name="tag"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Lqte4UXdEeWW-NrtKWQJcQ"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PPYfgEXdEeWW-NrtKWQJcQ" value="*"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Extension" xmi:id="_o3Eg0EXcEeWW-NrtKWQJcQ" name="Classifier_Thing" memberEnd="_o3FH4EXcEeWW-NrtKWQJcQ _o3FH4UXcEeWW-NrtKWQJcQ"> + <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_o3FH4EXcEeWW-NrtKWQJcQ" name="extension_Thing" type="_VP0NYEXcEeWW-NrtKWQJcQ" aggregation="composite" association="_o3Eg0EXcEeWW-NrtKWQJcQ"/> + </packagedElement> +</uml:Profile> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.notation new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.notation @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.uml new file mode 100644 index 00000000000..5b3399ad390 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/out-of-date.uml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http://www.eclipse.org/papyrus/test/2015/profile/stuff" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/test/2015/profile/stuff stuff.profile.uml#_tEC3kEXcEeWW-NrtKWQJcQ"> + <uml:Model xmi:id="__anmQEXcEeWW-NrtKWQJcQ" name="out-of-date"> + <packageImport xmi:type="uml:PackageImport" xmi:id="__qKeIEXcEeWW-NrtKWQJcQ"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> + </packageImport> + <packagedElement xmi:type="uml:Class" xmi:id="_EW89YEXdEeWW-NrtKWQJcQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="__eVooEXcEeWW-NrtKWQJcQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__eW2wEXcEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="stuff.profile.uml#_tEC3kEXcEeWW-NrtKWQJcQ"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="stuff.profile.uml#_A-GnsEXcEeWW-NrtKWQJcQ"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_GCvw0EXdEeWW-NrtKWQJcQ" description="This is a class." base_Classifier="_EW89YEXdEeWW-NrtKWQJcQ"/> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/stuff.profile.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/stuff.profile.uml new file mode 100644 index 00000000000..57c45877204 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/stuff.profile.uml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_A-GnsEXcEeWW-NrtKWQJcQ" name="stuff" URI="http://www.eclipse.org/papyrus/test/2015/profile/stuff" metaclassReference="_jjbc8EXcEeWW-NrtKWQJcQ"> + <eAnnotations xmi:id="_tECQgEXcEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <contents xmi:type="ecore:EPackage" xmi:id="_RSSycEXdEeWW-NrtKWQJcQ" name="stuff" nsURI="http://www.eclipse.org/papyrus/test/2015/profile/stuff" nsPrefix="stuff"> + <eClassifiers xmi:type="ecore:EClass" xmi:id="_RSSycUXdEeWW-NrtKWQJcQ" name="Thing"> + <eAnnotations xmi:id="_RSSyckXdEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_VP0NYEXcEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_RSSyc0XdEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_RSSydUXdEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_RSSyd0XdEeWW-NrtKWQJcQ" name="tag" ordered="false" upperBound="-1"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + <contents xmi:type="ecore:EPackage" xmi:id="_tEC3kEXcEeWW-NrtKWQJcQ" name="stuff" nsURI="http://www.eclipse.org/papyrus/test/2015/profile/stuff" nsPrefix="stuff"> + <eClassifiers xmi:type="ecore:EClass" xmi:id="_tEC3kUXcEeWW-NrtKWQJcQ" name="Thing"> + <eAnnotations xmi:id="_tEC3kkXcEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_VP0NYEXcEeWW-NrtKWQJcQ"/> + <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_tEC3k0XcEeWW-NrtKWQJcQ" name="description" ordered="false"> + <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/> + </eStructuralFeatures> + <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_tEC3lUXcEeWW-NrtKWQJcQ" name="base_Classifier" ordered="false" lowerBound="1"> + <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier"/> + </eStructuralFeatures> + </eClassifiers> + </contents> + </eAnnotations> + <elementImport xmi:id="_jjbc8EXcEeWW-NrtKWQJcQ"> + <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </elementImport> + <packagedElement xmi:type="uml:Stereotype" xmi:id="_VP0NYEXcEeWW-NrtKWQJcQ" name="Thing"> + <ownedAttribute xmi:id="_aIBScEXcEeWW-NrtKWQJcQ" name="description"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cQ64oEXcEeWW-NrtKWQJcQ"/> + </ownedAttribute> + <ownedAttribute xmi:id="_o3FH4UXcEeWW-NrtKWQJcQ" name="base_Classifier" association="_o3Eg0EXcEeWW-NrtKWQJcQ"> + <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/> + </ownedAttribute> + <ownedAttribute xmi:id="_Lqte4EXdEeWW-NrtKWQJcQ" name="tag"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Lqte4UXdEeWW-NrtKWQJcQ"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PPYfgEXdEeWW-NrtKWQJcQ" value="*"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Extension" xmi:id="_o3Eg0EXcEeWW-NrtKWQJcQ" name="Classifier_Thing" memberEnd="_o3FH4EXcEeWW-NrtKWQJcQ _o3FH4UXcEeWW-NrtKWQJcQ"> + <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_o3FH4EXcEeWW-NrtKWQJcQ" name="extension_Thing" type="_VP0NYEXcEeWW-NrtKWQJcQ" aggregation="composite" association="_o3Eg0EXcEeWW-NrtKWQJcQ"/> + </packagedElement> +</uml:Profile> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.di b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.di new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.di @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.notation b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.notation new file mode 100644 index 00000000000..bf9abab340f --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.notation @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.uml b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.uml new file mode 100644 index 00000000000..bdb478b9be6 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/resources/uml2/up-to-date.uml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:stuff="http://www.eclipse.org/papyrus/test/2015/profile/stuff" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/test/2015/profile/stuff stuff.profile.uml#_RSSycEXdEeWW-NrtKWQJcQ"> + <uml:Model xmi:id="_fBRq8EXdEeWW-NrtKWQJcQ" name="up-to-date"> + <packagedElement xmi:type="uml:Class" xmi:id="_gvEpgEXdEeWW-NrtKWQJcQ" name="Foo"/> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_fBwMEEXdEeWW-NrtKWQJcQ"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fBwMEUXdEeWW-NrtKWQJcQ" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="stuff.profile.uml#_RSSycEXdEeWW-NrtKWQJcQ"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="stuff.profile.uml#_A-GnsEXcEeWW-NrtKWQJcQ"/> + </profileApplication> + </uml:Model> + <stuff:Thing xmi:id="_i7LUsEXdEeWW-NrtKWQJcQ" description="This is a class." base_Classifier="_gvEpgEXdEeWW-NrtKWQJcQ"> + <tag>red</tag> + <tag>high</tag> + <tag>work</tag> + </stuff:Thing> +</xmi:XMI> diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/service/ReapplyProfilesServiceTest.java b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/service/ReapplyProfilesServiceTest.java new file mode 100644 index 00000000000..57d7cfa4321 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/service/ReapplyProfilesServiceTest.java @@ -0,0 +1,198 @@ +/***************************************************************************** + * Copyright (c) 2015 Christian W. Damus and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Christian W. Damus - Initial API and implementation + * + *****************************************************************************/ + +package org.eclipse.papyrus.uml.profile.service; + +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.hamcrest.CoreMatchers.nullValue; +import static org.hamcrest.MatcherAssert.assertThat; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.papyrus.junit.framework.classification.tests.AbstractPapyrusTest; +import org.eclipse.papyrus.junit.utils.rules.PapyrusEditorFixture; +import org.eclipse.papyrus.junit.utils.rules.PluginResource; +import org.eclipse.papyrus.uml.profile.tests.DialogInteractionKind; +import org.eclipse.papyrus.uml.profile.tests.DialogInteractionMode; +import org.eclipse.papyrus.uml.profile.tests.DialogInteractionRule; +import org.eclipse.uml2.uml.Class; +import org.eclipse.uml2.uml.Stereotype; +import org.junit.Rule; +import org.junit.Test; + +/** + * Regression tests for the {@link ReapplyProfilesService} class. + */ +public class ReapplyProfilesServiceTest extends AbstractPapyrusTest { + @Rule + public final DialogInteractionRule dialog = new DialogInteractionRule(); + + @Rule + public final PapyrusEditorFixture editor = new PapyrusEditorFixture(); + + /** + * A control test, as it were, for up-to-date application of an UML2-style + * profile (one that does not have the Papyrus versioning annotation). + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.NONE) + @PluginResource("resources/uml2/up-to-date.di") + public void upToDateModelDoesNotPromptForMigration_uml2() { + dialog.assertInteraction(); + } + + /** + * Test migration of an out-of-date application of an UML2-style + * profile (on that does not have the Papyrus versioning annotation). + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.OK) + @PluginResource("resources/uml2/out-of-date.di") + public void outOfDateModelDoMigration_uml2() { + dialog.assertInteraction(); + + // Now check that the migration occurred + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was not migrated", meta.getEStructuralFeature("tag"), notNullValue()); + } + + /** + * Test skipping migration of an out-of-date application of an UML2-style + * profile (on that does not have the Papyrus versioning annotation). + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.CANCEL) + @PluginResource("resources/uml2/out-of-date.di") + public void outOfDateModelSkipMigration_uml2() { + dialog.assertInteraction(); + + // Now check that the migration did not occur + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was migrated", meta.getEStructuralFeature("tag"), nullValue()); + } + + /** + * A control test, as it were, for up-to-date application of a Papyrus-style + * profile (one that has the Papyrus versioning annotation). + * This profile also uses the a different namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.NONE) + @PluginResource("resources/papyrus/up-to-date.di") + public void upToDateModelDoesNotPromptForMigration_papyrus() { + dialog.assertInteraction(); + } + + /** + * Test migration of an out-of-date application of a Papyrus-style + * profile (on that has the Papyrus versioning annotation). + * This profile also uses the a different namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.OK) + @PluginResource("resources/papyrus/out-of-date.di") + public void outOfDateModelDoMigration_papyrus() { + dialog.assertInteraction(); + + // Now check that the migration occurred + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was not migrated", meta.getEStructuralFeature("tag"), notNullValue()); + } + + /** + * Test skipping migration of an out-of-date application of a Papyrus-style + * profile (on that has the Papyrus versioning annotation). + * This profile also uses the a different namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.CANCEL) + @PluginResource("resources/papyrus/out-of-date.di") + public void outOfDateModelSkipMigration_papyrus() { + dialog.assertInteraction(); + + // Now check that the migration did not occur + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was migrated", meta.getEStructuralFeature("tag"), nullValue()); + } + + /** + * A control test, as it were, for up-to-date application of a + * registered dynamic profile. + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.NONE) + @PluginResource("resources/dynamic/up-to-date.di") + public void upToDateModelDoesNotPromptForMigration_dynamic() { + dialog.assertInteraction(); + } + + /** + * Test migration of an out-of-date application of a + * registered dynamic profile. + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.OK) + @PluginResource("resources/dynamic/out-of-date.di") + public void outOfDateModelDoMigration_dynamic() { + dialog.assertInteraction(); + + // Now check that the migration occurred + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was not migrated", meta.getEStructuralFeature("tag"), notNullValue()); + } + + /** + * Test skipping migration of an out-of-date application of a + * registered dynamic profile. + * This profile also uses the same namespace URI for every version. + */ + @Test + @DialogInteractionMode(DialogInteractionKind.CANCEL) + @PluginResource("resources/dynamic/out-of-date.di") + public void outOfDateModelSkipMigration_dynamic() { + dialog.assertInteraction(); + + // Now check that the migration did not occur + EObject thing = requireFooThing(); + EClass meta = thing.eClass(); + assertThat("Profile application was migrated", meta.getEStructuralFeature("tag"), nullValue()); + } + + // + // Test framework + // + + Class getFoo() { + return (Class) editor.getModel().getOwnedType("Foo"); + } + + Stereotype getThing() { + return editor.getModel().getAppliedProfile("stuff").getOwnedStereotype("Thing"); + } + + EObject requireFooThing() { + EObject result = getFoo().getStereotypeApplication(getThing()); + assertThat("Foo does not have stereotype <<thing>>", result, notNullValue()); + return result; + } +} diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/AllTests.java b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/AllTests.java new file mode 100644 index 00000000000..16244d67db0 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/AllTests.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2015 Christian W. Damus and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Christian W. Damus - Initial API and implementation + * + */ +package org.eclipse.papyrus.uml.profile.tests; + +import org.eclipse.papyrus.uml.profile.service.ReapplyProfilesServiceTest; +import org.junit.runner.RunWith; +import org.eclipse.papyrus.junit.framework.classification.ClassificationSuite; +import org.junit.runners.Suite.SuiteClasses; + + +/** + * The Papyrus UML Profile bundle's master test suite. + */ +@RunWith(ClassificationSuite.class) +@SuiteClasses({ ReapplyProfilesServiceTest.class }) +public class AllTests { + // JUnit 4 Test Suite +} diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionKind.java b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionKind.java new file mode 100644 index 00000000000..fdb6355c9af --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionKind.java @@ -0,0 +1,27 @@ +/***************************************************************************** + * Copyright (c) 2015 Christian W. Damus and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Christian W. Damus - Initial API and implementation + * + *****************************************************************************/ + +package org.eclipse.papyrus.uml.profile.tests; + +/** + * An enumeration of a test's possible modes of interaction + * with the Papyrus editor's profile migration dialog. + */ +public enum DialogInteractionKind { + /** No interaction: the dialog is not expected to appear. */ + NONE, // + /** Cancel the dialog without migrating profiles. */ + CANCEL, // + /** Press OK to apply the default profile migrations. */ + OK; +} diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionMode.java b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionMode.java new file mode 100644 index 00000000000..621ca40c360 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionMode.java @@ -0,0 +1,29 @@ +/***************************************************************************** + * Copyright (c) 2015 Christian W. Damus and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Christian W. Damus - Initial API and implementation + * + *****************************************************************************/ + +package org.eclipse.papyrus.uml.profile.tests; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Annotates a JUnit test case with the mode of interaction that it should + * implement with the Papyrus editor's profile migration dialog. + */ +@Retention(RetentionPolicy.RUNTIME) +@Target({ ElementType.TYPE, ElementType.METHOD }) +public @interface DialogInteractionMode { + DialogInteractionKind value(); +} diff --git a/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionRule.java b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionRule.java new file mode 100644 index 00000000000..e2b42f79984 --- /dev/null +++ b/tests/junit/plugins/uml/profile/org.eclipse.papyrus.uml.profile.tests/src/org/eclipse/papyrus/uml/profile/tests/DialogInteractionRule.java @@ -0,0 +1,178 @@ +/***************************************************************************** + * Copyright (c) 2015 Christian W. Damus and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Christian W. Damus - Initial API and implementation + * + *****************************************************************************/ + +package org.eclipse.papyrus.uml.profile.tests; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.hamcrest.MatcherAssert.assertThat; + +import java.util.concurrent.atomic.AtomicReference; +import java.util.concurrent.locks.Condition; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +import org.eclipse.jface.dialogs.IDialogConstants; +import org.eclipse.jface.window.Window; +import org.eclipse.papyrus.junit.utils.JUnitUtils; +import org.eclipse.papyrus.uml.profile.service.ui.RefreshProfileDialog; +import org.eclipse.swt.SWT; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Shell; +import org.junit.rules.TestWatcher; +import org.junit.runner.Description; + +/** + * A JUnit rule that interacts (or not) with the editor's Profile Migration Dialog. + */ +public class DialogInteractionRule extends TestWatcher { + private DialogInteractionKind interactionMode; + private volatile boolean active; + + private final Lock lock = new ReentrantLock(); + private final Condition dialogInteractionDone = lock.newCondition(); + private final AtomicReference<Boolean> interactionResult = new AtomicReference<>(); + + public void assertInteraction() { + waitForInteraction(); + + Boolean result = interactionResult.get(); + assertThat("No dialog interaction occurred", result, notNullValue()); + assertThat("Expected dialog interaction did not occur: " + interactionMode, result, is(true)); + } + + @Override + protected void starting(Description description) { + interactionMode = JUnitUtils.getAnnotation(description, DialogInteractionMode.class).value(); + active = true; + + Display.getDefault().asyncExec(new InteractionRunnable()); + } + + @Override + protected void finished(Description description) { + active = false; + } + + protected void waitForInteraction() { + Display current = Display.getCurrent(); + + if (current != null) { + // This is the UI thread. Flush it + for (;;) { + try { + if (!current.readAndDispatch()) { + break; + } + } catch (Exception e) { + // It may provide diagnostic information for the test + e.printStackTrace(); + } + } + } else { + // Synchronize with the UI thread + Display.getDefault().syncExec(new Runnable() { + + @Override + public void run() { + // Pass + } + }); + } + } + + static <W extends Window> W findWindow(Class<W> windowType) { + W result = null; + + for (Shell next : Display.getDefault().getShells()) { + if (windowType.isInstance(next.getData())) { + result = windowType.cast(next.getData()); + break; + } + } + + return result; + } + + static Button findButton(Composite composite, int code) { + Button result = null; + + Integer id = code; + Control[] controls = composite.getChildren(); + for (int i = 0; (i < controls.length) && (result == null); i++) { + final Control next = controls[i]; + + if (next instanceof Button) { + Button button = (Button) next; + if (id.equals(button.getData())) { + result = button; + } + } else if (next instanceof Composite) { + result = findButton((Composite) next, code); + } + } + + return result; + } + + // + // Nested types + // + + /** + * An asynchronous UI runnable that is schedule to run after the editor has opened, + * and so after it has shown the profile migration dialog (if any), to interact with + * it if it is open. + */ + private class InteractionRunnable implements Runnable { + @Override + public void run() { + Boolean result = false; + + if (active) { + RefreshProfileDialog dialog = findWindow(RefreshProfileDialog.class); + + switch (interactionMode) { + case CANCEL: + if (dialog != null) { + result = true; + findButton(dialog.getShell(), IDialogConstants.CANCEL_ID).notifyListeners(SWT.Selection, new Event()); + } + break; + case OK: + if (dialog != null) { + result = true; + findButton(dialog.getShell(), IDialogConstants.OK_ID).notifyListeners(SWT.Selection, new Event()); + } + break; + default: // NONE + result = dialog == null; + break; + } + } + + lock.lock(); + + try { + interactionResult.set(result); + dialogInteractionDone.signalAll(); + } finally { + lock.unlock(); + } + } + } +} diff --git a/tests/junit/plugins/uml/profile/pom.xml b/tests/junit/plugins/uml/profile/pom.xml index 6150c6e5a20..340b2e14591 100755 --- a/tests/junit/plugins/uml/profile/pom.xml +++ b/tests/junit/plugins/uml/profile/pom.xml @@ -15,6 +15,7 @@ <description>Tests for the Papyrus uml profiles</description> <modules> + <module>org.eclipse.papyrus.uml.profile.tests</module> <module>org.eclipse.papyrus.uml.profile.drafter.tests</module> </modules> |