From 1b46d94d1007a917a1e1f97166d4c1a294b0c674 Mon Sep 17 00:00:00 2001 From: Francis Giraldeau Date: Mon, 29 Jun 2015 22:10:24 -0400 Subject: [PATCH] Analysis: Add unit tests for the graph base classes MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: I2fa96a924d17e760191906fb75aa5a8e1a29876a Signed-off-by: Francis Giraldeau Signed-off-by: Geneviève Bastien Reviewed-on: https://git.eclipse.org/r/41478 Reviewed-by: Hudson CI Reviewed-by: Matthew Khouzam Tested-by: Matthew Khouzam --- .../.classpath | 8 + .../.project | 28 ++ .../org.eclipse.core.resources.prefs | 2 + .../.settings/org.eclipse.core.runtime.prefs | 2 + .../.settings/org.eclipse.jdt.core.prefs | 403 +++++++++++++++++ .../.settings/org.eclipse.jdt.ui.prefs | 60 +++ .../.settings/org.eclipse.pde.api.tools.prefs | 97 +++++ .../.settings/org.eclipse.pde.prefs | 32 ++ .../META-INF/MANIFEST.MF | 20 + .../about.html | 28 ++ .../build.properties | 20 + .../plugin.properties | 15 + .../pom.xml | 45 ++ .../analysis/graph/core/tests/Activator.java | 107 +++++ .../core/tests/AllAnalysisGraphCoreTests.java | 28 ++ .../graph/core/tests/graph/AllTests.java | 27 ++ .../graph/core/tests/graph/TmfGraphTest.java | 409 ++++++++++++++++++ .../core/tests/stubs/TestGraphWorker.java | 53 +++ .../META-INF/MANIFEST.MF | 2 +- analysis/pom.xml | 1 + .../META-INF/MANIFEST.MF | 3 +- .../alltests/RunAllCoreTests.java | 1 + 22 files changed, 1389 insertions(+), 2 deletions(-) create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.classpath create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.project create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.resources.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.runtime.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.core.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.ui.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.api.tools.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.prefs create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/META-INF/MANIFEST.MF create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/about.html create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/build.properties create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/plugin.properties create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/pom.xml create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/Activator.java create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/AllAnalysisGraphCoreTests.java create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/AllTests.java create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/TmfGraphTest.java create mode 100644 analysis/org.eclipse.tracecompass.analysis.graph.core.tests/stubs/org/eclipse/tracecompass/analysis/graph/core/tests/stubs/TestGraphWorker.java diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.classpath b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.classpath new file mode 100644 index 0000000000..f1d3296b72 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.project b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.project new file mode 100644 index 0000000000..21435e58ae --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.project @@ -0,0 +1,28 @@ + + + org.eclipse.tracecompass.analysis.graph.core.tests + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.resources.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..99f26c0203 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.runtime.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 0000000000..5a0ad22d2a --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.core.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000000..0409c61aff --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,403 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes=f +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes= +org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled +org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore +org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault +org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.doc.comment.support=enabled +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=error +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=error +org.eclipse.jdt.core.compiler.problem.deadCode=error +org.eclipse.jdt.core.compiler.problem.deprecation=error +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=error +org.eclipse.jdt.core.compiler.problem.emptyStatement=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=error +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=error +org.eclipse.jdt.core.compiler.problem.finalParameterBound=error +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error +org.eclipse.jdt.core.compiler.problem.forbiddenReference=error +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error +org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=error +org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning +org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected +org.eclipse.jdt.core.compiler.problem.localVariableHiding=error +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error +org.eclipse.jdt.core.compiler.problem.missingDefaultCase=error +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=error +org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=enabled +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=error +org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected +org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags +org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=error +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=error +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=error +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning +org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error +org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error +org.eclipse.jdt.core.compiler.problem.parameterAssignment=error +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error +org.eclipse.jdt.core.compiler.problem.potentialNullReference=error +org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=error +org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=error +org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=error +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=error +org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore +org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=error +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error +org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=error +org.eclipse.jdt.core.compiler.problem.unclosedCloseable=error +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=error +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=error +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=disabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=disabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=error +org.eclipse.jdt.core.compiler.problem.unusedLabel=error +org.eclipse.jdt.core.compiler.problem.unusedLocal=error +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error +org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=error +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=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=0 +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_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=80 +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_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_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_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=true +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=250 +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=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +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/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.ui.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000000..232a3fd764 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,60 @@ +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_tmf-style +formatter_settings_version=12 +org.eclipse.jdt.ui.exception.name=e +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.keywordthis=false +org.eclipse.jdt.ui.overrideannotation=true +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=false +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=false +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=false +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=false +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=true +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.api.tools.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.api.tools.prefs new file mode 100644 index 0000000000..acc3abd47c --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.api.tools.prefs @@ -0,0 +1,97 @@ +ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error +ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error +ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error +API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error +API_USE_SCAN_FIELD_SEVERITY=Error +API_USE_SCAN_METHOD_SEVERITY=Error +API_USE_SCAN_TYPE_SEVERITY=Error +CLASS_ELEMENT_TYPE_ADDED_METHOD=Error +CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error +CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error +CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error +CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error +CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error +CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error +CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error +ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error +ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error +ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +FIELD_ELEMENT_TYPE_ADDED_VALUE=Error +FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error +FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error +FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error +FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error +FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error +FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error +FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error +ILLEGAL_EXTEND=Warning +ILLEGAL_IMPLEMENT=Warning +ILLEGAL_INSTANTIATE=Warning +ILLEGAL_OVERRIDE=Warning +ILLEGAL_REFERENCE=Warning +INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Error +INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error +INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error +INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error +INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error +INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error +INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error +INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error +INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +INVALID_JAVADOC_TAG=Warning +INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Warning +LEAK_EXTEND=Warning +LEAK_FIELD_DECL=Warning +LEAK_IMPLEMENT=Warning +LEAK_METHOD_PARAM=Warning +LEAK_METHOD_RETURN_TYPE=Warning +METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error +METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error +METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error +METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error +METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error +METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error +METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error +METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error +MISSING_EE_DESCRIPTIONS=Ignore +TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error +TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error +UNUSED_PROBLEM_FILTERS=Warning +automatically_removed_unused_problem_filters=false +eclipse.preferences.version=1 +incompatible_api_component_version=Error +incompatible_api_component_version_include_major_without_breaking_change=Disabled +incompatible_api_component_version_include_minor_without_api_change=Disabled +invalid_since_tag_version=Error +malformed_since_tag=Error +missing_since_tag=Error +report_api_breakage_when_major_version_incremented=Disabled +report_resolution_errors_api_component=Warning diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.prefs b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..62cfa90dee --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/.settings/org.eclipse.pde.prefs @@ -0,0 +1,32 @@ +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.encodings=2 +compilers.p.build.java.compiler=2 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=2 +compilers.p.missing-version-export-package=2 +compilers.p.missing-version-import-package=2 +compilers.p.missing-version-require-bundle=2 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/META-INF/MANIFEST.MF b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..00c86e2102 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/META-INF/MANIFEST.MF @@ -0,0 +1,20 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %Bundle-Name +Bundle-Vendor: %Bundle-Vendor +Bundle-Version: 1.0.0.qualifier +Bundle-Localization: plugin +Bundle-SymbolicName: org.eclipse.tracecompass.analysis.graph.core.tests;singleton:=true +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Bundle-Activator: org.eclipse.tracecompass.analysis.graph.core.tests.Activator +Require-Bundle: org.eclipse.core.runtime, + org.junit;bundle-version="4.0.0", + org.eclipse.core.resources, + org.eclipse.tracecompass.analysis.graph.core, + org.eclipse.tracecompass.common.core, + org.eclipse.tracecompass.tmf.core, + org.eclipse.tracecompass.tmf.core.tests +Import-Package: org.junit.runner +Export-Package: org.eclipse.tracecompass.analysis.graph.core.tests + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/about.html b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/about.html new file mode 100644 index 0000000000..c258ef55d8 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/about.html @@ -0,0 +1,28 @@ + + + + +About + + +

About This Content

+ +

June 5, 2006

+

License

+ +

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 http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

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 http://www.eclipse.org.

+ + + \ No newline at end of file diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/build.properties b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/build.properties new file mode 100644 index 0000000000..182296cc96 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/build.properties @@ -0,0 +1,20 @@ +############################################################################### +# Copyright (c) 2015 École Polytechnique de Montréal +# +# 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: +# École Polytechnique de Montréal - Initial API and implementation +############################################################################### + +source.. = src/,\ + stubs/ +output.. = bin/ +bin.includes = META-INF/,\ + plugin.properties,\ + . +additional.bundles = org.eclipse.jdt.annotation +jars.extra.classpath = platform:/plugin/org.eclipse.jdt.annotation diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/plugin.properties b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/plugin.properties new file mode 100644 index 0000000000..12c73347ea --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/plugin.properties @@ -0,0 +1,15 @@ +############################################################################### +# Copyright (c) 2015 École Polytechnique de montréal +# +# 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: +# École Polytechnique de montréal - Initial API and implementation +############################################################################### + +#Properties file for org.eclipse.linuxtools.tmf.analysis.graph.tests +Bundle-Vendor = Eclipse Trace Compass +Bundle-Name = Trace Compass Graph Analysis Core Test Plug-in \ No newline at end of file diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/pom.xml b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/pom.xml new file mode 100644 index 0000000000..ed9d0da1e6 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/pom.xml @@ -0,0 +1,45 @@ + + + + + 4.0.0 + + + org.eclipse.tracecompass.analysis-parent + org.eclipse.tracecompass + 2.0.0-SNAPSHOT + + + org.eclipse.tracecompass.analysis.graph.core.tests + 1.0.0-SNAPSHOT + eclipse-test-plugin + + Trace Compass Graph Analysis Core Test plug-in + + + + + org.eclipse.tycho + tycho-surefire-plugin + ${tycho-version} + + org.eclipse.tracecompass.analysis.graph.core.tests + org.eclipse.tracecompass.analysis.graph.core.tests.AllAnalysisGraphCoreTests + false + false + org.eclipse.sdk.ide + + + + + + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/Activator.java b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/Activator.java new file mode 100644 index 0000000000..44dcc43094 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/Activator.java @@ -0,0 +1,107 @@ +/******************************************************************************* + * Copyright (c) 2015 École Polytechnique de Montréal + * + * 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: + * Geneviève Bastien - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.analysis.graph.core.tests; + +import java.io.IOException; +import java.net.URL; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.Path; +import org.eclipse.core.runtime.Plugin; +import org.osgi.framework.BundleContext; + +/** + * Activator for this plugin + * + * @author Geneviève Bastien + */ +public class Activator extends Plugin { + // ------------------------------------------------------------------------ + // Attributes + // ------------------------------------------------------------------------ + + /** + * The plug-in ID + */ + public static final String PLUGIN_ID = "org.eclipse.tracecompass.analysis.graph.core.tests"; //$NON-NLS-1$ + + /** + * The shared instance + */ + private static Activator PLUGIN; + + // ------------------------------------------------------------------------ + // Constructors + // ------------------------------------------------------------------------ + + /** + * The constructor + */ + public Activator() { + } + + // ------------------------------------------------------------------------ + // Accessors + // ------------------------------------------------------------------------ + + /** + * Returns the shared instance + * + * @return the shared instance + */ + public static Activator getDefault() { + return PLUGIN; + } + + // ------------------------------------------------------------------------ + // Operators + // ------------------------------------------------------------------------ + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + PLUGIN = this; + } + + @Override + public void stop(BundleContext context) throws Exception { + PLUGIN = null; + super.stop(context); + } + + /** + * Return a path to a file relative to this plugin's base directory + * + * @param relativePath + * The path relative to the plugin's root directory + * @return The path corresponding to the relative path in parameter + */ + public static IPath getAbsoluteFilePath(String relativePath) { + Activator plugin = Activator.getDefault(); + if (plugin == null) { + /* + * Shouldn't happen but at least throw something to get the test to + * fail early + */ + throw new IllegalStateException(); + } + URL location = FileLocator.find(plugin.getBundle(), new Path(relativePath), null); + try { + return new Path(FileLocator.toFileURL(location).getPath()); + } catch (IOException e) { + throw new IllegalStateException(); + } + } +} + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/AllAnalysisGraphCoreTests.java b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/AllAnalysisGraphCoreTests.java new file mode 100644 index 0000000000..123a8bb768 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/AllAnalysisGraphCoreTests.java @@ -0,0 +1,28 @@ +/******************************************************************************* + * Copyright (c) 2015 École Polytechnique de Montréal + * + * 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: + * Geneviève Bastien - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.analysis.graph.core.tests; + +import org.junit.runner.RunWith; +import org.junit.runners.Suite; + +/** + * Master test suite for this plugin + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ + org.eclipse.tracecompass.analysis.graph.core.tests.graph.AllTests.class +}) +public class AllAnalysisGraphCoreTests { + +} + diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/AllTests.java b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/AllTests.java new file mode 100644 index 0000000000..b6d9e2fdc7 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/AllTests.java @@ -0,0 +1,27 @@ +/******************************************************************************* + * Copyright (c) 2015 École Polytechnique de Montréal + * + * 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: + * Geneviève Bastien - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.analysis.graph.core.tests.graph; + +import org.junit.runner.RunWith; +import org.junit.runners.Suite; + +/** + * Test suite for graph package + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ + TmfGraphTest.class +}) +public class AllTests { + +} diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/TmfGraphTest.java b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/TmfGraphTest.java new file mode 100644 index 0000000000..f3dae33041 --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/src/org/eclipse/tracecompass/analysis/graph/core/tests/graph/TmfGraphTest.java @@ -0,0 +1,409 @@ +/******************************************************************************* + * Copyright (c) 2015 École Polytechnique de Montréal + * + * 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: + * Francis Giraldeau - Initial API and implementation + * Geneviève Bastien - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.analysis.graph.core.tests.graph; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; +import static org.junit.Assert.assertNull; + +import java.util.List; + +import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.tracecompass.analysis.graph.core.base.IGraphWorker; +import org.eclipse.tracecompass.analysis.graph.core.base.ITmfGraphVisitor; +import org.eclipse.tracecompass.analysis.graph.core.base.TmfEdge; +import org.eclipse.tracecompass.analysis.graph.core.base.TmfEdge.EdgeType; +import org.eclipse.tracecompass.analysis.graph.core.base.TmfGraph; +import org.eclipse.tracecompass.analysis.graph.core.base.TmfVertex; +import org.eclipse.tracecompass.analysis.graph.core.base.TmfVertex.EdgeDirection; +import org.eclipse.tracecompass.analysis.graph.core.tests.stubs.TestGraphWorker; +import org.eclipse.tracecompass.internal.analysis.graph.core.base.TmfGraphStatistics; +import org.eclipse.tracecompass.tmf.core.timestamp.ITmfTimestamp; +import org.eclipse.tracecompass.tmf.core.timestamp.TmfTimestamp; +import org.junit.Test; + +/** + * Test the basic functionalities of the {@link TmfGraph}, {@link TmfVertex} and + * {@link TmfEdge} classes. + * + * @author Geneviève Bastien + * @author Francis Giraldeau + */ +public class TmfGraphTest { + + private static final @NonNull IGraphWorker WORKER1 = new TestGraphWorker(1); + private static final @NonNull IGraphWorker WORKER2 = new TestGraphWorker(2); + + private final @NonNull TmfGraph fGraph = new TmfGraph(); + private final @NonNull TmfVertex fV0 = new TmfVertex(0); + private final @NonNull TmfVertex fV1 = new TmfVertex(1); + + /** + * Test the graph constructor + */ + @Test + public void testDefaultConstructor() { + TmfGraph g = new TmfGraph(); + assertEquals(0, g.size()); + } + + /** + * Test the {@link TmfGraph#add(IGraphWorker, TmfVertex)} method: vertices are + * added, but no edge between them is created + */ + @Test + public void testAddVertex() { + fGraph.add(WORKER1, fV0); + fGraph.add(WORKER1, fV1); + List list = fGraph.getNodesOf(WORKER1); + assertEquals(2, list.size()); + for (int i = 0; i < list.size() - 1; i++) { + TmfVertex vertex = list.get(i); + assertEquals(i, vertex.getTs()); + assertNull(vertex.getEdge(EdgeDirection.OUTGOING_HORIZONTAL_EDGE)); + assertNull(vertex.getEdge(EdgeDirection.INCOMING_HORIZONTAL_EDGE)); + assertNull(vertex.getEdge(EdgeDirection.OUTGOING_VERTICAL_EDGE)); + assertNull(vertex.getEdge(EdgeDirection.INCOMING_VERTICAL_EDGE)); + } + } + + /** + * Test the {@link TmfGraph#append(IGraphWorker, TmfVertex)} and + * {@link TmfGraph#append(IGraphWorker, TmfVertex, EdgeType)} methods: vertices + * are added and links are created between them. + */ + @Test + public void testAppendVertex() { + /* Append without type */ + fGraph.append(WORKER1, fV0); + TmfEdge edge = fGraph.append(WORKER1, fV1); + assertNotNull(edge); + assertEquals(EdgeType.DEFAULT, edge.getType()); + assertEquals(fV1, edge.getVertexTo()); + assertEquals(fV0, edge.getVertexFrom()); + assertEquals(fV1.getTs() - fV0.getTs(), edge.getDuration()); + + List list = fGraph.getNodesOf(WORKER1); + assertEquals(2, list.size()); + checkLinkHorizontal(list); + assertEquals(fV0, fGraph.getHead(WORKER1)); + assertEquals(fV1, fGraph.getTail(WORKER1)); + + /* Append with a type */ + TmfVertex v2 = new TmfVertex(2); + edge = fGraph.append(WORKER1, v2, EdgeType.BLOCKED); + assertNotNull(edge); + assertEquals(EdgeType.BLOCKED, edge.getType()); + assertEquals(v2, edge.getVertexTo()); + assertEquals(fV1, edge.getVertexFrom()); + assertEquals(v2.getTs() - fV1.getTs(), edge.getDuration()); + + list = fGraph.getNodesOf(WORKER1); + assertEquals(3, list.size()); + checkLinkHorizontal(list); + assertEquals(fV0, fGraph.getHead(WORKER1)); + assertEquals(v2, fGraph.getTail(WORKER1)); + } + + /** + * Test that appending vertices in non chronological order gives error + */ + @Test(expected = IllegalArgumentException.class) + public void testIllegalVertex() { + fGraph.append(WORKER1, fV1); + fGraph.append(WORKER1, fV0); + } + + /** + * Test the {@link TmfGraph#link(TmfVertex, TmfVertex)} and + * {@link TmfGraph#link(TmfVertex, TmfVertex, EdgeType)} methods + */ + @Test + public void testLink() { + // Start with a first node + fGraph.add(WORKER1, fV0); + + // Link with second node not in graph + TmfEdge edge = fGraph.link(fV0, fV1); + assertEquals(fV1, edge.getVertexTo()); + assertEquals(fV0, edge.getVertexFrom()); + assertEquals(EdgeType.DEFAULT, edge.getType()); + assertEquals(fV1.getTs() - fV0.getTs(), edge.getDuration()); + + List list = fGraph.getNodesOf(WORKER1); + assertEquals(2, list.size()); + edge = fV1.getEdge(EdgeDirection.INCOMING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(fV0, edge.getVertexFrom()); + edge = fV0.getEdge(EdgeDirection.OUTGOING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(fV1, edge.getVertexTo()); + + // Link with second node for the same object + TmfVertex v2 = new TmfVertex(2); + fGraph.add(WORKER1, v2); + edge = fGraph.link(fV1, v2, EdgeType.NETWORK); + assertEquals(v2, edge.getVertexTo()); + assertEquals(fV1, edge.getVertexFrom()); + assertEquals(EdgeType.NETWORK, edge.getType()); + + list = fGraph.getNodesOf(WORKER1); + assertEquals(3, list.size()); + edge = fV1.getEdge(EdgeDirection.OUTGOING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(v2, edge.getVertexTo()); + edge = v2.getEdge(EdgeDirection.INCOMING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(fV1, edge.getVertexFrom()); + + // Link with second node for another object + TmfVertex v3 = new TmfVertex(3); + fGraph.add(WORKER2, v3); + edge = fGraph.link(v2, v3, EdgeType.NETWORK); + assertEquals(v3, edge.getVertexTo()); + assertEquals(v2, edge.getVertexFrom()); + assertEquals(EdgeType.NETWORK, edge.getType()); + + list = fGraph.getNodesOf(WORKER2); + assertEquals(1, list.size()); + + list = fGraph.getNodesOf(WORKER1); + assertEquals(3, list.size()); + edge = v3.getEdge(EdgeDirection.INCOMING_VERTICAL_EDGE); + assertNotNull(edge); + assertEquals(v2, edge.getVertexFrom()); + edge = v2.getEdge(EdgeDirection.OUTGOING_VERTICAL_EDGE); + assertNotNull(edge); + assertEquals(v3, edge.getVertexTo()); + + } + + /** + * Verify that vertices in the list form a chain linked by edges and have no + * vertical edges + */ + private static void checkLinkHorizontal(List list) { + if (list.isEmpty()) { + return; + } + for (int i = 0; i < list.size() - 1; i++) { + TmfVertex v0 = list.get(i); + TmfVertex v1 = list.get(i + 1); + TmfEdge edge = v0.getEdge(EdgeDirection.OUTGOING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(v0, edge.getVertexFrom()); + assertEquals(v1, edge.getVertexTo()); + edge = v1.getEdge(EdgeDirection.INCOMING_HORIZONTAL_EDGE); + assertNotNull(edge); + assertEquals(v0, edge.getVertexFrom()); + assertEquals(v1, edge.getVertexTo()); + assertNull(v1.getEdge(EdgeDirection.OUTGOING_VERTICAL_EDGE)); + assertNull(v1.getEdge(EdgeDirection.INCOMING_VERTICAL_EDGE)); + assertNull(v0.getEdge(EdgeDirection.OUTGOING_VERTICAL_EDGE)); + assertNull(v0.getEdge(EdgeDirection.INCOMING_VERTICAL_EDGE)); + } + } + + /** + * Test the {@link TmfGraph#getTail(IGraphWorker)} and + * {@link TmfGraph#removeTail(IGraphWorker)} methods + */ + @Test + public void testTail() { + fGraph.append(WORKER1, fV0); + fGraph.append(WORKER1, fV1); + assertEquals(fV1, fGraph.getTail(WORKER1)); + assertEquals(fV1, fGraph.removeTail(WORKER1)); + assertEquals(fV0, fGraph.getTail(WORKER1)); + } + + /** + * Test the {@link TmfGraph#getHead()} methods + */ + @Test + public void testHead() { + fGraph.append(WORKER1, fV0); + fGraph.append(WORKER1, fV1); + assertEquals(fV0, fGraph.getHead()); + assertEquals(fV0, fGraph.getHead(WORKER1)); + assertEquals(fV0, fGraph.getHead(fV1)); + assertEquals(fV0, fGraph.getHead(fV0)); + } + + /** + * The test {@link TmfGraph#getParentOf(TmfVertex)} method + */ + @Test + public void testParent() { + fGraph.append(WORKER1, fV0); + fGraph.append(WORKER2, fV1); + assertEquals(WORKER1, fGraph.getParentOf(fV0)); + assertNotSame(WORKER1, fGraph.getParentOf(fV1)); + assertEquals(WORKER2, fGraph.getParentOf(fV1)); + } + + /** + * Test the {@link TmfGraph#getVertexAt(ITmfTimestamp, IGraphWorker)} method + */ + @Test + public void testVertexAt() { + TmfVertex[] vertices = new TmfVertex[5]; + for (int i = 0; i < 5; i++) { + TmfVertex v = new TmfVertex((i + 1) * 5); + vertices[i] = v; + fGraph.append(WORKER1, v); + } + assertEquals(vertices[0], fGraph.getVertexAt(new TmfTimestamp(5), WORKER1)); + assertEquals(vertices[0], fGraph.getVertexAt(new TmfTimestamp(0), WORKER1)); + assertEquals(vertices[1], fGraph.getVertexAt(new TmfTimestamp(6), WORKER1)); + assertEquals(vertices[3], fGraph.getVertexAt(new TmfTimestamp(19), WORKER1)); + assertNull(fGraph.getVertexAt(new TmfTimestamp(19), WORKER2)); + assertEquals(vertices[3], fGraph.getVertexAt(new TmfTimestamp(20), WORKER1)); + assertEquals(vertices[4], fGraph.getVertexAt(new TmfTimestamp(21), WORKER1)); + assertNull(fGraph.getVertexAt(new TmfTimestamp(26), WORKER1)); + } + + /** + * Test the {@link TmfVertex#linkHorizontal(TmfVertex)} with non + * chronological timestamps + */ + @Test(expected = IllegalArgumentException.class) + public void testCheckHorizontal() { + TmfVertex n0 = new TmfVertex(10); + TmfVertex n1 = new TmfVertex(0); + n0.linkHorizontal(n1); + } + + /** + * Test the {@link TmfVertex#linkVertical(TmfVertex)} with non chronological + * timestamps + */ + @Test(expected = IllegalArgumentException.class) + public void testCheckVertical() { + TmfVertex n0 = new TmfVertex(10); + TmfVertex n1 = new TmfVertex(0); + n0.linkVertical(n1); + } + + private class ScanCountVertex implements ITmfGraphVisitor { + public int nbVertex = 0; + public int nbVLink = 0; + public int nbHLink = 0; + public int nbStartVertex = 0; + + @Override + public void visitHead(TmfVertex node) { + nbStartVertex++; + } + + @Override + public void visit(TmfVertex node) { + nbVertex++; + + } + + @Override + public void visit(TmfEdge edge, boolean horizontal) { + if (horizontal) { + nbHLink++; + } else { + nbVLink++; + } + } + } + + /** + * The following graph will be used + * + *
+     * ____0___1___2___3___4___5___6___7___8___9___10___11___12___13___14___15
+     *
+     * A   *-------*       *---*-------*---*---*    *---*----*----*---------*
+     *             |           |           |            |    |
+     * B       *---*---*-------*   *-------*------------*    *----------*
+     * 
+ */ + @SuppressWarnings("null") + private static @NonNull TmfGraph buildFullGraph() { + TmfGraph graph = new TmfGraph(); + TmfVertex[] vertexA; + TmfVertex[] vertexB; + long[] timesA = { 0, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 15 }; + long[] timesB = { 1, 2, 3, 5, 6, 8, 11, 12, 14 }; + vertexA = new TmfVertex[timesA.length]; + vertexB = new TmfVertex[timesB.length]; + for (int i = 0; i < timesA.length; i++) { + vertexA[i] = new TmfVertex(timesA[i]); + } + for (int i = 0; i < timesB.length; i++) { + vertexB[i] = new TmfVertex(timesB[i]); + } + graph.append(WORKER1, vertexA[0]); + graph.append(WORKER1, vertexA[1]); + graph.add(WORKER1, vertexA[2]); + graph.append(WORKER1, vertexA[3]); + graph.append(WORKER1, vertexA[4]); + graph.append(WORKER1, vertexA[5]); + graph.append(WORKER1, vertexA[6]); + graph.add(WORKER1, vertexA[7]); + graph.append(WORKER1, vertexA[8]); + graph.append(WORKER1, vertexA[9]); + graph.append(WORKER1, vertexA[10]); + graph.append(WORKER1, vertexA[11]); + graph.append(WORKER2, vertexB[0]); + graph.append(WORKER2, vertexB[1]); + graph.append(WORKER2, vertexB[2]); + graph.append(WORKER2, vertexB[3]); + graph.add(WORKER2, vertexB[4]); + graph.append(WORKER2, vertexB[5]); + graph.append(WORKER2, vertexB[6]); + graph.add(WORKER2, vertexB[7]); + graph.append(WORKER2, vertexB[8]); + vertexA[1].linkVertical(vertexB[1]); + vertexB[3].linkVertical(vertexA[3]); + vertexA[5].linkVertical(vertexB[5]); + vertexB[6].linkVertical(vertexA[8]); + vertexA[9].linkVertical(vertexB[7]); + return graph; + } + + /** + * Test the {@link TmfGraph#scanLineTraverse(IGraphWorker, ITmfGraphVisitor)} method + */ + @Test + public void testScanCount() { + TmfGraph graph = buildFullGraph(); + ScanCountVertex visitor = new ScanCountVertex(); + graph.scanLineTraverse(graph.getHead(WORKER1), visitor); + assertEquals(21, visitor.nbVertex); + assertEquals(6, visitor.nbStartVertex); + assertEquals(5, visitor.nbVLink); + assertEquals(15, visitor.nbHLink); + } + + /** + * Test the {@link TmfGraphStatistics} class + */ + @Test + public void testGraphStatistics() { + TmfGraph graph = buildFullGraph(); + TmfGraphStatistics stats = new TmfGraphStatistics(); + stats.getGraphStatistics(graph, WORKER1); + assertEquals(12, stats.getSum(WORKER1).longValue()); + assertEquals(11, stats.getSum(WORKER2).longValue()); + assertEquals(23, stats.getSum().longValue()); + } + +} diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/stubs/org/eclipse/tracecompass/analysis/graph/core/tests/stubs/TestGraphWorker.java b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/stubs/org/eclipse/tracecompass/analysis/graph/core/tests/stubs/TestGraphWorker.java new file mode 100644 index 0000000000..25e0c4838a --- /dev/null +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core.tests/stubs/org/eclipse/tracecompass/analysis/graph/core/tests/stubs/TestGraphWorker.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2015 École Polytechnique de Montréal + * + * 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: + * Geneviève Bastien - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.analysis.graph.core.tests.stubs; + +import org.eclipse.jdt.annotation.Nullable; +import org.eclipse.tracecompass.analysis.graph.core.base.IGraphWorker; + +/** + * A stub graph worker for unit tests + * + * @author Geneviève Bastien + */ +public class TestGraphWorker implements IGraphWorker { + + private final Integer fValue; + + /** + * Constructor + * + * @param i An integer to represent this worker + */ + public TestGraphWorker(final Integer i) { + fValue = i; + } + + @Override + public String getHostId() { + return "test"; + } + + @Override + public int hashCode() { + return fValue.hashCode(); + } + + @Override + public boolean equals(@Nullable Object obj) { + if (obj instanceof TestGraphWorker) { + return fValue.equals(((TestGraphWorker) obj).fValue); + } + return false; + } +} \ No newline at end of file diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.core/META-INF/MANIFEST.MF b/analysis/org.eclipse.tracecompass.analysis.graph.core/META-INF/MANIFEST.MF index 7089e35e2b..5d7ef8d6e3 100644 --- a/analysis/org.eclipse.tracecompass.analysis.graph.core/META-INF/MANIFEST.MF +++ b/analysis/org.eclipse.tracecompass.analysis.graph.core/META-INF/MANIFEST.MF @@ -15,6 +15,6 @@ Require-Bundle: org.eclipse.ui, org.eclipse.tracecompass.tmf.core Export-Package: org.eclipse.tracecompass.analysis.graph.core.base, org.eclipse.tracecompass.internal.analysis.graph.core;x-internal=true, - org.eclipse.tracecompass.internal.analysis.graph.core.base;x-internal:=true + org.eclipse.tracecompass.internal.analysis.graph.core.base;x-friends:="org.eclipse.tracecompass.analysis.graph.core.tests" Import-Package: com.google.common.collect, com.google.common.hash diff --git a/analysis/pom.xml b/analysis/pom.xml index 7d85973402..f310eee202 100644 --- a/analysis/pom.xml +++ b/analysis/pom.xml @@ -31,6 +31,7 @@ org.eclipse.tracecompass.analysis.graph.core + org.eclipse.tracecompass.analysis.graph.core.tests org.eclipse.tracecompass.analysis.os.linux.core org.eclipse.tracecompass.analysis.os.linux.core.tests org.eclipse.tracecompass.analysis.os.linux.ui diff --git a/releng/org.eclipse.tracecompass.alltests/META-INF/MANIFEST.MF b/releng/org.eclipse.tracecompass.alltests/META-INF/MANIFEST.MF index 186ea83fff..c5184a5613 100644 --- a/releng/org.eclipse.tracecompass.alltests/META-INF/MANIFEST.MF +++ b/releng/org.eclipse.tracecompass.alltests/META-INF/MANIFEST.MF @@ -36,7 +36,8 @@ Require-Bundle: org.junit;bundle-version="4.0.0", org.eclipse.tracecompass.tmf.pcap.ui.swtbot.tests, org.eclipse.tracecompass.tmf.remote.core.tests, org.eclipse.tracecompass.tmf.remote.ui.tests, - org.eclipse.tracecompass.tmf.remote.ui.swtbot.tests + org.eclipse.tracecompass.tmf.remote.ui.swtbot.tests, + org.eclipse.tracecompass.analysis.graph.core.tests Export-Package: org.eclipse.tracecompass.alltests;x-internal:=true, org.eclipse.tracecompass.alltests.perf;x-internal:=true, org.eclipse.tracecompass.alltests.swtbot;x-internal:=true diff --git a/releng/org.eclipse.tracecompass.alltests/src/org/eclipse/tracecompass/alltests/RunAllCoreTests.java b/releng/org.eclipse.tracecompass.alltests/src/org/eclipse/tracecompass/alltests/RunAllCoreTests.java index 2dd3579c80..71ef447026 100644 --- a/releng/org.eclipse.tracecompass.alltests/src/org/eclipse/tracecompass/alltests/RunAllCoreTests.java +++ b/releng/org.eclipse.tracecompass.alltests/src/org/eclipse/tracecompass/alltests/RunAllCoreTests.java @@ -26,6 +26,7 @@ import org.junit.runners.Suite; org.eclipse.tracecompass.ctf.parser.tests.AllCtfParserTests.class, org.eclipse.tracecompass.gdbtrace.core.tests.AllGdbTraceCoreTests.class, org.eclipse.tracecompass.analysis.os.linux.core.tests.AllTests.class, + org.eclipse.tracecompass.analysis.graph.core.tests.AllAnalysisGraphCoreTests.class, org.eclipse.tracecompass.lttng2.control.core.tests.AllTests.class, org.eclipse.tracecompass.lttng2.kernel.core.tests.AllTests.class, org.eclipse.tracecompass.lttng2.ust.core.tests.AllTests.class, -- 2.34.1