You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2022/01/03 11:18:40 UTC

[maven-dependency-analyzer] branch master updated: [MSHARED-996] Switch to AssertJ

This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dependency-analyzer.git


The following commit(s) were added to refs/heads/master by this push:
     new cbc5d51  [MSHARED-996] Switch to AssertJ
cbc5d51 is described below

commit cbc5d51ff23ab6aaf9f46bd55718a1a9dd4b8ecc
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Sun Dec 5 10:55:02 2021 +0100

    [MSHARED-996] Switch to AssertJ
---
 pom.xml                                            |   6 +
 .../analyzer/ClassFileVisitorUtilsTest.java        |  27 +--
 .../analyzer/CollectorClassFileVisitorTest.java    |   4 +-
 .../analyzer/DefaultClassAnalyzerTest.java         |   7 +-
 .../analyzer/ProjectDependencyAnalysisTest.java    |   8 +-
 .../ProjectDependencyAnalyzerExceptionTest.java    |   9 +-
 .../analyzer/asm/ASMDependencyAnalyzerTest.java    |   6 +-
 .../analyzer/asm/DependencyVisitorTest.java        | 190 +++++++++------------
 .../dependency/analyzer/asm/MockAttribute.java     |  37 ----
 9 files changed, 120 insertions(+), 174 deletions(-)

diff --git a/pom.xml b/pom.xml
index 4493257..1846c42 100644
--- a/pom.xml
+++ b/pom.xml
@@ -124,6 +124,12 @@
       <version>4.13.2</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>org.assertj</groupId>
+      <artifactId>assertj-core</artifactId>
+      <version>3.21.0</version>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/ClassFileVisitorUtilsTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/ClassFileVisitorUtilsTest.java
index afdb796..e1d1f87 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/ClassFileVisitorUtilsTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/ClassFileVisitorUtilsTest.java
@@ -37,7 +37,8 @@ import java.util.List;
 import java.util.jar.JarOutputStream;
 import java.util.zip.ZipEntry;
 
-import static org.junit.Assert.*;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.fail;
 
 /**
  * Tests <code>ClassFileVisitorUtils</code>.
@@ -90,10 +91,10 @@ public class ClassFileVisitorUtilsTest
 
         ClassFileVisitorUtils.accept( file.toURI().toURL(), visitor );
 
-        assertTrue( visitor.classNames.contains( "a.b.c" ) );
-        assertTrue( visitor.classNames.contains( "x.y.z" ) );
-        assertTrue( visitor.data.contains( "class a.b.c" ) );
-        assertTrue( visitor.data.contains( "class x.y.z" ) );
+        assertThat( visitor.classNames ).contains( "a.b.c" );
+        assertThat( visitor.classNames ).contains( "x.y.z" );
+        assertThat( visitor.data ).contains( "class a.b.c" );
+        assertThat( visitor.data ).contains( "class x.y.z" );
     }
 
     @Test
@@ -109,7 +110,7 @@ public class ClassFileVisitorUtilsTest
 
         ClassFileVisitorUtils.accept( file.toURI().toURL(), visitor );
 
-        assertTrue( visitor.classNames.isEmpty() );
+        assertThat( visitor.classNames ) .isEmpty();
     }
 
     @Test
@@ -127,10 +128,10 @@ public class ClassFileVisitorUtilsTest
 
         FileUtils.deleteDirectory( dir.toFile() );
 
-        assertTrue( visitor.classNames.contains( "a.b.c" ) );
-        assertTrue( visitor.classNames.contains( "x.y.z" ) );
-        assertTrue( visitor.data.contains( "class a.b.c" ) );
-        assertTrue( visitor.data.contains( "class x.y.z" ) );
+        assertThat( visitor.classNames ).contains( "a.b.c" );
+        assertThat( visitor.classNames ).contains( "x.y.z" );
+        assertThat( visitor.data ).contains( "class a.b.c" );
+        assertThat( visitor.data ).contains( "class x.y.z" );
     }
 
     @Test
@@ -145,7 +146,7 @@ public class ClassFileVisitorUtilsTest
 
         FileUtils.deleteDirectory( dir.toFile() );
 
-        assertTrue( visitor.classNames.isEmpty() );
+        assertThat( visitor.classNames ).isEmpty();
     }
 
     @Test
@@ -163,7 +164,7 @@ public class ClassFileVisitorUtilsTest
         }
         catch ( IllegalArgumentException exception )
         {
-            assertEquals( "Cannot accept visitor on URL: " + url, exception.getMessage() );
+            assertThat( exception ).hasMessage( "Cannot accept visitor on URL: " + url );
         }
     }
 
@@ -179,7 +180,7 @@ public class ClassFileVisitorUtilsTest
         }
         catch ( IllegalArgumentException exception )
         {
-            assertEquals( "Cannot accept visitor on URL: " + url, exception.getMessage() );
+            assertThat( exception ).hasMessage( "Cannot accept visitor on URL: " + url );
         }
     }
 
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/CollectorClassFileVisitorTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/CollectorClassFileVisitorTest.java
index 237d4ba..37579b1 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/CollectorClassFileVisitorTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/CollectorClassFileVisitorTest.java
@@ -25,7 +25,7 @@ import org.junit.Test;
 import java.util.HashSet;
 import java.util.Set;
 
-import static org.junit.Assert.assertEquals;
+import static org.assertj.core.api.Assertions.assertThat;
 
 /**
  * Tests <code>CollectorClassFileVisitor</code>.
@@ -53,6 +53,6 @@ public class CollectorClassFileVisitorTest
         expected.add( "a.b.c" );
         expected.add( "x.y.z" );
 
-        assertEquals( expected, visitor.getClasses() );
+        assertThat( visitor.getClasses() ).isEqualTo( expected );
     }
 }
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/DefaultClassAnalyzerTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/DefaultClassAnalyzerTest.java
index f4d54b5..9bdfdb4 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/DefaultClassAnalyzerTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/DefaultClassAnalyzerTest.java
@@ -37,7 +37,8 @@ import java.util.jar.JarOutputStream;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipException;
 
-import static org.junit.Assert.*;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.fail;
 
 /**
  * Tests <code>DefaultClassAnalyzer</code>.
@@ -79,7 +80,7 @@ public class DefaultClassAnalyzerTest
         DefaultClassAnalyzer analyzer = new DefaultClassAnalyzer();
         Set<String> actualClasses = analyzer.analyze( file.toUri().toURL() );
 
-        assertEquals( expectedClasses, actualClasses );
+        assertThat( actualClasses ).isEqualTo( expectedClasses );
     }
 
     @Test
@@ -106,7 +107,7 @@ public class DefaultClassAnalyzerTest
         }
         catch ( ZipException e )
         {
-            assertTrue( e.getMessage().startsWith( "Cannot process Jar entry on URL:" ) );
+            assertThat( e ).hasMessageStartingWith( "Cannot process Jar entry on URL:" );
         }
     }
 
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysisTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysisTest.java
index be53be5..55d649a 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysisTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysisTest.java
@@ -26,7 +26,7 @@ import org.apache.maven.artifact.Artifact;
 
 import org.junit.Test;
 
-import static org.junit.Assert.assertEquals;
+import static org.assertj.core.api.Assertions.assertThat;
 
 /**
  * Tests <code>ProjectDependencyAnalysis</code>.
@@ -48,8 +48,8 @@ public class ProjectDependencyAnalysisTest
             new ProjectDependencyAnalysis( usedDeclaredArtifacts, usedUndeclaredArtifacts, unusedDeclaredArtifacts,
                     testArtifactsWithNonTestScope);
 
-        assertEquals( usedDeclaredArtifacts, analysis.getUsedDeclaredArtifacts() );
-        assertEquals( usedUndeclaredArtifacts, analysis.getUsedUndeclaredArtifacts() );
-        assertEquals( unusedDeclaredArtifacts, analysis.getUnusedDeclaredArtifacts() );
+        assertThat( analysis.getUsedDeclaredArtifacts() ).isEqualTo( usedDeclaredArtifacts );
+        assertThat( analysis.getUsedUndeclaredArtifacts() ).isEqualTo( usedUndeclaredArtifacts );
+        assertThat( analysis.getUnusedDeclaredArtifacts() ).isEqualTo( unusedDeclaredArtifacts );
     }
 }
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalyzerExceptionTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalyzerExceptionTest.java
index ef8b995..eece33e 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalyzerExceptionTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalyzerExceptionTest.java
@@ -21,7 +21,7 @@ package org.apache.maven.shared.dependency.analyzer;
 
 import org.junit.Test;
 
-import static org.junit.Assert.assertEquals;
+import static org.assertj.core.api.Assertions.assertThat;
 
 /**
  * Tests <code>ProjectDependencyAnalyzerException</code>.
@@ -34,9 +34,7 @@ public class ProjectDependencyAnalyzerExceptionTest
     @Test
     public void testConstructor()
     {
-        ProjectDependencyAnalyzerException exception = new ProjectDependencyAnalyzerException( "a" );
-
-        assertEquals( "a", exception.getMessage() );
+        assertThat( new ProjectDependencyAnalyzerException( "a" ) ).hasMessage( "a" );
     }
 
     @Test
@@ -45,7 +43,6 @@ public class ProjectDependencyAnalyzerExceptionTest
         Throwable throwable = new Exception();
         ProjectDependencyAnalyzerException exception = new ProjectDependencyAnalyzerException( "a", throwable );
 
-        assertEquals( "a", exception.getMessage() );
-        assertEquals( throwable, exception.getCause() );
+        assertThat( exception ).hasMessage( "a" ).hasCause( throwable );
     }
 }
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/ASMDependencyAnalyzerTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/ASMDependencyAnalyzerTest.java
index ad6d97a..27623e3 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/ASMDependencyAnalyzerTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/ASMDependencyAnalyzerTest.java
@@ -25,7 +25,7 @@ import java.util.Set;
 import org.apache.maven.shared.dependency.analyzer.DependencyAnalyzer;
 import org.junit.Test;
 
-import static org.junit.Assert.assertFalse;
+import static org.assertj.core.api.Assertions.assertThat;
 
 public class ASMDependencyAnalyzerTest
 {
@@ -35,12 +35,12 @@ public class ASMDependencyAnalyzerTest
     public void test() throws Exception
     {
         URL jarUrl = this.getClass().getResource( "/org/objectweb/asm/ClassReader.class" );
-
+        assertThat( jarUrl ).isNotNull();
         String fileUrl = jarUrl.toString().substring( "jar:".length(), jarUrl.toString().indexOf( "!/" ) );
 
         Set<String> result = analyzer.analyze( new URL( fileUrl ) );
 
-        assertFalse( result.isEmpty() );
+        assertThat( result ).isNotEmpty();
     }
 
 }
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/DependencyVisitorTest.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/DependencyVisitorTest.java
index 243bfda..4a51b15 100644
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/DependencyVisitorTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/DependencyVisitorTest.java
@@ -19,17 +19,12 @@ package org.apache.maven.shared.dependency.analyzer.asm;
  * under the License.
  */
 
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Set;
-
 import org.junit.Before;
 import org.junit.Test;
 import org.objectweb.asm.*;
 import org.objectweb.asm.signature.SignatureVisitor;
 
-import static org.junit.Assert.assertEquals;
+import static org.assertj.core.api.Assertions.assertThat;
 
 /**
  * Tests <code>DependencyVisitor</code>.
@@ -58,7 +53,7 @@ public class DependencyVisitorTest
         // class a.b.c
         visitor.visit( 50, 0, "a/b/c", null, "java/lang/Object", null );
 
-        assertClasses( "java.lang.Object" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object" );
     }
 
     @Test
@@ -67,7 +62,7 @@ public class DependencyVisitorTest
         // class a.b.c
         visitor.visit( 50, 0, "a/b/c", null, "x/y/z", null );
 
-        assertClasses( "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "x.y.z" );
     }
 
     @Test
@@ -76,7 +71,7 @@ public class DependencyVisitorTest
         // class a.b.c implements x.y.z
         visitor.visit( 50, 0, "a/b/c", null, "java/lang/Object", new String[] { "x/y/z" } );
 
-        assertClasses( "java.lang.Object", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "x.y.z" );
     }
 
     @Test
@@ -85,7 +80,7 @@ public class DependencyVisitorTest
         // class a.b.c implements p.q.r, x.y.z
         visitor.visit( 50, 0, "a/b/c", null, "java/lang/Object", new String[] { "p/q/r", "x/y/z" } );
 
-        assertClasses( "java.lang.Object", "p.q.r", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "p.q.r", "x.y.z" );
     }
 
     @Test
@@ -96,7 +91,7 @@ public class DependencyVisitorTest
 
         visitor.visit( 50, 0, "a/b/c", signature, "java/lang/Object", null );
 
-        assertClasses( "java.lang.Object" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object" );
     }
 
     @Test
@@ -107,7 +102,7 @@ public class DependencyVisitorTest
 
         visitor.visit( 50, 0, "a/b/c", signature, "java/lang/Object", null );
 
-        assertClasses( "java.lang.Object", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "x.y.z" );
     }
 
     @Test
@@ -118,7 +113,7 @@ public class DependencyVisitorTest
 
         visitor.visit( 50, 0, "a/b/c", signature, "java/lang/Object", null );
 
-        assertClasses( "java.lang.Object", "p.q.r", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "p.q.r", "x.y.z" );
     }
 
     @Test
@@ -129,7 +124,7 @@ public class DependencyVisitorTest
 
         visitor.visit( 50, 0, "a/b/c", signature, "java/lang/Object", new String[] { "p.q.r" } );
 
-        assertClasses( "java.lang.Object", "p.q.r", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "p.q.r", "x.y.z" );
     }
 
     @Test
@@ -140,7 +135,7 @@ public class DependencyVisitorTest
 
         visitor.visit( 50, 0, "a/b/c", signature, "java/lang/Object", new String[] { "x.y.z" } );
 
-        assertClasses( "java.lang.Object", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "java.lang.Object", "x.y.z" );
     }
 
     // visitSource tests ------------------------------------------------------
@@ -150,7 +145,7 @@ public class DependencyVisitorTest
     {
         visitor.visitSource( null, null );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitOuterClass tests --------------------------------------------------
@@ -166,7 +161,7 @@ public class DependencyVisitorTest
         // }
         visitor.visitOuterClass( "a/b/c", null, null );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -183,7 +178,7 @@ public class DependencyVisitorTest
         // }
         visitor.visitOuterClass( "a/b/c", "x", "(Lp/q/r;)Lx/y/z;" );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitAnnotation tests --------------------------------------------------
@@ -193,7 +188,7 @@ public class DependencyVisitorTest
     {
         assertVisitor( visitor.visitAnnotation( "La/b/c;", false ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -201,7 +196,7 @@ public class DependencyVisitorTest
     {
         assertVisitor( visitor.visitAnnotation( "La/b/c;", true ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitAttribute tests ---------------------------------------------------
@@ -211,7 +206,7 @@ public class DependencyVisitorTest
     {
         visitor.visitAttribute( new MockAttribute( "a" ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitInnerClass tests --------------------------------------------------
@@ -224,7 +219,7 @@ public class DependencyVisitorTest
         // class a.b.c { class x.y.z { } }
         visitor.visitInnerClass( "x/y/z", "a/b/c", "z", 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -233,7 +228,7 @@ public class DependencyVisitorTest
         // class a.b.c { new class x.y.z { } }
         visitor.visitInnerClass( "x/y/z$1", "a/b/c", null, 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitField tests -------------------------------------------------------
@@ -244,7 +239,7 @@ public class DependencyVisitorTest
         // a.b.c a
         assertVisitor( visitor.visitField( 0, "a", "La/b/c;", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // TODO: determine actual use of default values
@@ -258,7 +253,7 @@ public class DependencyVisitorTest
         // a.b.c[] a
         assertVisitor( visitor.visitField( 0, "a", "[La/b/c;", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -267,7 +262,7 @@ public class DependencyVisitorTest
         // a.b.c<x.y.z> a
         assertVisitor( visitor.visitField( 0, "a", "La/b/c;", "La/b/c<Lx/y/z;>;", null ) );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     // visitMethod tests ------------------------------------------------------
@@ -278,7 +273,7 @@ public class DependencyVisitorTest
         // void a()
         assertVisitor( visitor.visitMethod( 0, "a", "()V", null, null ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -287,7 +282,7 @@ public class DependencyVisitorTest
         // void a(int)
         assertVisitor( visitor.visitMethod( 0, "a", "(I)V", null, null ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -296,7 +291,7 @@ public class DependencyVisitorTest
         // void a(int[])
         assertVisitor( visitor.visitMethod( 0, "a", "([I)V", null, null ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -305,7 +300,7 @@ public class DependencyVisitorTest
         // void a(a.b.c)
         assertVisitor( visitor.visitMethod( 0, "a", "(La/b/c;)V", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -314,7 +309,7 @@ public class DependencyVisitorTest
         // void a(a.b.c, x.y.z)
         assertVisitor( visitor.visitMethod( 0, "a", "(La/b/c;Lx/y/z;)V", null, null ) );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     @Test
@@ -323,7 +318,7 @@ public class DependencyVisitorTest
         // void a(a.b.c[])
         assertVisitor( visitor.visitMethod( 0, "a", "([La/b/c;)V", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -332,7 +327,7 @@ public class DependencyVisitorTest
         // void a(a.b.c<x.y.z>)
         assertVisitor( visitor.visitMethod( 0, "a", "(La/b/c;)V", "(La/b/c<Lx/y/z;>;)V", null ) );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     @Test
@@ -341,7 +336,7 @@ public class DependencyVisitorTest
         // int a()
         assertVisitor( visitor.visitMethod( 0, "a", "()I", null, null ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -350,7 +345,7 @@ public class DependencyVisitorTest
         // int[] a()
         assertVisitor( visitor.visitMethod( 0, "a", "()[I", null, null ) );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -359,7 +354,7 @@ public class DependencyVisitorTest
         // a.b.c a()
         assertVisitor( visitor.visitMethod( 0, "a", "()La/b/c;", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -368,7 +363,7 @@ public class DependencyVisitorTest
         // a.b.c[] a()
         assertVisitor( visitor.visitMethod( 0, "a", "()[La/b/c;", null, null ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -377,7 +372,7 @@ public class DependencyVisitorTest
         // void a() throws a.b.c
         assertVisitor( visitor.visitMethod( 0, "a", "()V", null, new String[] { "a/b/c" } ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -386,7 +381,7 @@ public class DependencyVisitorTest
         // void a() throws a.b.c, x.y.z
         assertVisitor( visitor.visitMethod( 0, "a", "()V", null, new String[] { "a/b/c", "x/y/z" } ) );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     // visitAnnotationDefault tests -------------------------------------------
@@ -395,7 +390,7 @@ public class DependencyVisitorTest
     public void testVisitAnnotationDefault()
     {
         assertVisitor( mv.visitAnnotationDefault() );
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitParameterAnnotation tests -------------------------------------------
@@ -406,7 +401,7 @@ public class DependencyVisitorTest
         // @a.b.c
         assertVisitor( mv.visitParameterAnnotation( 0, "La/b/c;", false ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitCode tests --------------------------------------------------------
@@ -416,7 +411,7 @@ public class DependencyVisitorTest
     {
         mv.visitCode();
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitFrame tests -------------------------------------------------------
@@ -426,7 +421,7 @@ public class DependencyVisitorTest
     {
         mv.visitFrame( Opcodes.F_NEW, 0, new Object[0], 0, new Object[0] );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitInsn tests --------------------------------------------------------
@@ -436,7 +431,7 @@ public class DependencyVisitorTest
     {
         mv.visitInsn( Opcodes.NOP );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitIntInsn tests -----------------------------------------------------
@@ -446,7 +441,7 @@ public class DependencyVisitorTest
     {
         mv.visitIntInsn( Opcodes.BIPUSH, 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitVarInsn tests -----------------------------------------------------
@@ -456,7 +451,7 @@ public class DependencyVisitorTest
     {
         mv.visitVarInsn( Opcodes.ILOAD, 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitTypeInsn tests ----------------------------------------------------
@@ -466,7 +461,7 @@ public class DependencyVisitorTest
     {
         mv.visitTypeInsn( Opcodes.NEW, "a/b/c" );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitFieldInsn tests ---------------------------------------------------
@@ -476,7 +471,7 @@ public class DependencyVisitorTest
     {
         mv.visitFieldInsn( Opcodes.GETFIELD, "a/b/c", "x", "I" );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -484,7 +479,7 @@ public class DependencyVisitorTest
     {
         mv.visitFieldInsn( Opcodes.GETFIELD, "a/b/c", "x", "Lx/y/z;" );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitMethodInsn tests --------------------------------------------------
@@ -494,7 +489,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "()V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -502,7 +497,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "(I)V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -510,7 +505,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "([I)V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -518,7 +513,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "(Lx/y/z;)V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -526,7 +521,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "(Lp/q/r;Lx/y/z;)V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -534,7 +529,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "([Lx/y/z;)V", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -542,7 +537,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "()I", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -550,7 +545,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "()[I", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -558,7 +553,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "()Lx/y/z;", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -566,7 +561,7 @@ public class DependencyVisitorTest
     {
         mv.visitMethodInsn( Opcodes.INVOKEVIRTUAL, "a/b/c", "x", "()[Lx/y/z;", false );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitJumpInsn tests ----------------------------------------------------
@@ -576,7 +571,7 @@ public class DependencyVisitorTest
     {
         mv.visitJumpInsn( Opcodes.IFEQ, new Label() );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitLabel tests -------------------------------------------------------
@@ -586,7 +581,7 @@ public class DependencyVisitorTest
     {
         mv.visitLabel( new Label() );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitLdcInsn tests -----------------------------------------------------
@@ -596,7 +591,7 @@ public class DependencyVisitorTest
     {
         mv.visitLdcInsn( "a" );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -604,7 +599,7 @@ public class DependencyVisitorTest
     {
         mv.visitLdcInsn( Type.INT_TYPE );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -612,7 +607,7 @@ public class DependencyVisitorTest
     {
         mv.visitLdcInsn( Type.getType( "La/b/c;" ) );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitIincInsn tests ----------------------------------------------------
@@ -622,7 +617,7 @@ public class DependencyVisitorTest
     {
         mv.visitIincInsn( 0, 1 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitTableSwitchInsn tests ---------------------------------------------
@@ -632,7 +627,7 @@ public class DependencyVisitorTest
     {
         mv.visitTableSwitchInsn( 0, 1, new Label(), new Label() );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitLookupSwitchInsn tests --------------------------------------------
@@ -642,7 +637,7 @@ public class DependencyVisitorTest
     {
         mv.visitLookupSwitchInsn( new Label(), new int[] { 0 }, new Label[] { new Label() } );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitMultiANewArrayInsn tests ------------------------------------------
@@ -652,7 +647,7 @@ public class DependencyVisitorTest
     {
         mv.visitMultiANewArrayInsn( "I", 2 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -660,7 +655,7 @@ public class DependencyVisitorTest
     {
         mv.visitMultiANewArrayInsn( "La/b/c;", 2 );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     // visitTryCatchBlock tests -----------------------------------------------
@@ -670,7 +665,7 @@ public class DependencyVisitorTest
     {
         mv.visitTryCatchBlock( new Label(), new Label(), new Label(), "a/b/c" );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -678,7 +673,7 @@ public class DependencyVisitorTest
     {
         mv.visitTryCatchBlock( new Label(), new Label(), new Label(), null );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitLocalVariable tests -----------------------------------------------
@@ -688,7 +683,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "I", null, new Label(), new Label(), 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -696,7 +691,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "[I", null, new Label(), new Label(), 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     @Test
@@ -704,7 +699,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "La/b/c;", null, new Label(), new Label(), 0 );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -712,7 +707,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "[La/b/c;", null, new Label(), new Label(), 0 );
 
-        assertClasses( "a.b.c" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c" );
     }
 
     @Test
@@ -720,7 +715,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "La/b/c;", "La/b/c<Lx/y/z;>;", new Label(), new Label(), 0 );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     @Test
@@ -728,7 +723,7 @@ public class DependencyVisitorTest
     {
         mv.visitLocalVariable( "a", "La/b/c;", "[La/b/c<Lx/y/z;>;", new Label(), new Label(), 0 );
 
-        assertClasses( "a.b.c", "x.y.z" );
+        assertThat( resultCollector.getDependencies() ).containsOnly( "a.b.c", "x.y.z" );
     }
 
     // visitLineNumber tests --------------------------------------------------
@@ -738,7 +733,7 @@ public class DependencyVisitorTest
     {
         mv.visitLineNumber( 0, new Label() );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     // visitMaxs tests --------------------------------------------------------
@@ -748,7 +743,7 @@ public class DependencyVisitorTest
     {
         mv.visitMaxs( 0, 0 );
 
-        assertNoClasses();
+        assertThat( resultCollector.getDependencies() ).isEmpty();
     }
 
     private void assertVisitor( Object actualVisitor )
@@ -756,33 +751,16 @@ public class DependencyVisitorTest
         //assertEquals( visitor, actualVisitor );
     }
 
-    private void assertNoClasses()
-    {
-        assertClasses( Collections.emptySet() );
-    }
-
-    private void assertClasses( String element )
-    {
-        assertClasses( Collections.singleton( element ) );
-    }
-
-    private void assertClasses( String expectedClass1, String expectedClass2 )
-    {
-        assertClasses( new String[] { expectedClass1, expectedClass2 } );
-    }
-
-    private void assertClasses( String expectedClass1, String expectedClass2, String expectedClass3 )
-    {
-        assertClasses( new String[] { expectedClass1, expectedClass2, expectedClass3 } );
-    }
-
-    private void assertClasses( String[] expectedClasses )
-    {
-        assertClasses( new HashSet<>( Arrays.asList( expectedClasses ) ) );
-    }
-
-    private void assertClasses( Set<String> expectedClasses )
+    /**
+     * A simple ASM <code>Attribute</code> for use in tests.
+     *
+     * @author <a href="mailto:markhobson@gmail.com">Mark Hobson</a>
+     */
+    static class MockAttribute extends Attribute
     {
-        assertEquals( expectedClasses, resultCollector.getDependencies() );
+        public MockAttribute( String type )
+        {
+            super( type );
+        }
     }
 }
diff --git a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/MockAttribute.java b/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/MockAttribute.java
deleted file mode 100644
index c9c74e5..0000000
--- a/src/test/java/org/apache/maven/shared/dependency/analyzer/asm/MockAttribute.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package org.apache.maven.shared.dependency.analyzer.asm;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.objectweb.asm.Attribute;
-
-/**
- * A simple ASM <code>Attribute</code> for use in tests.
- * 
- * @author <a href="mailto:markhobson@gmail.com">Mark Hobson</a>
- */
-public class MockAttribute extends Attribute
-{
-    // constructors -----------------------------------------------------------
-
-    public MockAttribute( String type )
-    {
-        super( type );
-    }
-}