ferstl / depgraph-maven-plugin

A Maven plugin that generates dependency graphs in various formats (DOT, GML, PlantUML, JSON and Text)
Apache License 2.0
554 stars 84 forks source link

Update 18 tests to fix String order #177

Open Sujishark opened 9 months ago

Sujishark commented 9 months ago

Describe the bug:

Creating this issue to address 18 tests:

com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderArtifactId
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderArtifactIdVersion
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderArtifactIdVersionOptional
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderJarTypeOnly
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdArtifactIdOptional
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdArtifactIdVersion
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdArtifactIdVersionOptional
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdVersion
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderTypes
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupId
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdVersionOptional
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderGroupIdArtifactId
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.omitScope
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderAll
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderOptional
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderClassifiers
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderVersion
com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest.renderEmptyClassifier

Expected behavior:

The Strings mentioned in the assertion statements of the above mentioned tests should be in the same order and the assertion should return true.

Actual behavior:

Encountered the following errors:

Failures: [ERROR] JsonDependencyNodeNameRendererTest>AbstractDependencyNodeNameRendererTest.renderGroupId:50 expected: <{"groupId":"groupId","scopes":["compile"]}> but was: <{"scopes":["compile"],"groupId":"groupId"}>

Failures: [ERROR] JsonDependencyNodeNameRendererTest>AbstractDependencyNodeNameRendererTest.renderGroupIdArtifactIdVersionOptional:115 expected: <{"groupId":"groupId","artifactId":"artifactId","version":"version","optional":true,"scopes":["compile"]}> but was: <{"version":"version","scopes":["compile"],"artifactId":"artifactId","optional":true,"groupId":"groupId"}>

This was found by using the NonDex tool.

I've a fix ready for this. Can I proceed and create PR ?

How to Reproduce:

The following code is for the test - org.openx.data.jsonserde.JsonSerDeTest.testNestedExplicitNullValue:

cd depgraph-maven-plugin
mvn install -am -DskipTests
mvn edu.illinois:nondex-maven-plugin:2.1.7-SNAPSHOT:nondex -Dtest=com.github.ferstl.depgraph.dependency.json.JsonDependencyNodeNameRendererTest#renderArtifactIdVersion

Desktop (please complete the following information):

OS: Mac Version: Sonoma 14.0 Maven Version: 3.6.3 Module: api SDK: Original