diff --git a/pom.xml b/pom.xml
index 0a06335..0d6ced2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -36,18 +36,31 @@
+
+ javax.inject
+ javax.inject
+ 1
+
+
+ javax.enterprise
+ cdi-api
+ 1.2
+
org.codehaus.plexus
plexus-utils
org.codehaus.plexus
- plexus-container-default
+ plexus-testing
+ 1.2.0
test
- junit
- junit
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.1
+ test
@@ -69,6 +82,20 @@
+
+ org.eclipse.sisu
+ sisu-maven-plugin
+ 0.9.0.M2
+
+
+ generate-index
+
+ main-index
+ test-index
+
+
+
+
diff --git a/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java b/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java
index 05be2b7..7eeb142 100644
--- a/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java
+++ b/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java
@@ -19,6 +19,8 @@
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
+import javax.inject.Inject;
+import javax.inject.Named;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
@@ -27,19 +29,16 @@
* ChecksumFile
*
* @author Joakim Erdfelt
- * @version $Id$
- * @plexus.component role="org.codehaus.plexus.digest.ChecksumFile"
*/
+@Named
public class ChecksumFile
{
- /**
- * @plexus.requirement role-hint="sha1"
- */
+ @Inject
+ @Named ( "sha1" )
private Digester digestSha1;
- /**
- * @plexus.requirement role-hint="md5";
- */
+ @Inject
+ @Named ( "md5" )
private Digester digestMd5;
/**
diff --git a/src/main/java/org/codehaus/plexus/digest/Md5Digester.java b/src/main/java/org/codehaus/plexus/digest/Md5Digester.java
index d3954dd..727cc4c 100644
--- a/src/main/java/org/codehaus/plexus/digest/Md5Digester.java
+++ b/src/main/java/org/codehaus/plexus/digest/Md5Digester.java
@@ -16,11 +16,15 @@
* limitations under the License.
*/
+import javax.enterprise.inject.Typed;
+import javax.inject.Named;
+
/**
* Digester that does MD5 Message Digesting Only.
*
- * @plexus.component role="org.codehaus.plexus.digest.Digester" role-hint="md5"
*/
+@Named( "md5" )
+@Typed( Digester.class )
public class Md5Digester
extends AbstractDigester
{
diff --git a/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java b/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java
index a0cfdfe..8fc5d9b 100644
--- a/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java
+++ b/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java
@@ -16,11 +16,15 @@
* limitations under the License.
*/
+import javax.enterprise.inject.Typed;
+import javax.inject.Named;
+
/**
* Digester that does SHA1 Message Digesting Only.
*
- * @plexus.component role="org.codehaus.plexus.digest.Digester" role-hint="sha1"
*/
+@Named( "sha1" )
+@Typed( Digester.class )
public class Sha1Digester
extends AbstractDigester
{
diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java b/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java
index 5ab3bf5..daf03d3 100644
--- a/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java
+++ b/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java
@@ -16,12 +16,14 @@
* limitations under the License.
*/
+import javax.inject.Named;
+
/**
* An MD5 implementation of the streaming digester.
*
* @author Brett Porter
- * @plexus.component role="org.codehaus.plexus.digest.StreamingDigester" role-hint="md5"
*/
+@Named( "md5" )
public class StreamingMd5Digester
extends AbstractStreamingDigester
{
diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java b/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java
index 384b500..1925b89 100644
--- a/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java
+++ b/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java
@@ -16,12 +16,14 @@
* limitations under the License.
*/
+import javax.inject.Named;
+
/**
* An SHA-1 implementation of the streaming digester.
*
* @author Brett Porter
- * @plexus.component role="org.codehaus.plexus.digest.StreamingDigester" role-hint="sha1"
*/
+@Named( "sha1" )
public class StreamingSha1Digester
extends AbstractStreamingDigester
{
diff --git a/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java b/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java
index a4f1b87..669e5da 100644
--- a/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java
+++ b/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java
@@ -16,29 +16,29 @@
* limitations under the License.
*/
-import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.testing.PlexusTest;
+import org.junit.jupiter.api.Test;
+import javax.inject.Inject;
import java.io.File;
+import static org.codehaus.plexus.testing.PlexusExtension.getBasedir;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
/**
- * ChecksumFileTest
+ * ChecksumFileTest
*
* @author Joakim Erdfelt
- * @version $Id$
*/
-public class ChecksumFileTest extends PlexusTestCase
+@PlexusTest
+class ChecksumFileTest
{
+ @Inject
private ChecksumFile checksum;
- protected void setUp()
- throws Exception
- {
- super.setUp();
-
- checksum = (ChecksumFile) lookup( ChecksumFile.class.getName() );
- }
-
- public void testIsValidChecksum()
+ @Test
+ void isValidChecksum()
throws Exception
{
File exampleDir = new File( getBasedir(), "src/test/examples" );
@@ -59,7 +59,8 @@ public void testIsValidChecksum()
assertTrue( checksum.isValidChecksum( new File( exampleDir, "openssl.jar.sha1" ) ) );
}
- public void testCreateChecksum()
+ @Test
+ void createChecksum()
throws Exception
{
File dataFile = File.createTempFile( "plexus-digest-test", null );
diff --git a/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java b/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java
index b54fe4e..788a39b 100644
--- a/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java
+++ b/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java
@@ -16,38 +16,42 @@
* limitations under the License.
*/
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
-public class DigestUtilsTest
- extends TestCase
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+class DigestUtilsTest
{
/** SHA1 checksum from www.ibiblio.org/maven2, incuding file path */
private static final String SERVLETAPI_SHA1 = "bcc82975c0f9c681fcb01cc38504c992553e93ba";
- public void testCleanChecksum()
+ @Test
+ void cleanChecksum()
throws DigesterException
{
String expected = SERVLETAPI_SHA1
+ " /home/projects/maven/repository-staging/to-ibiblio/maven2/servletapi/servletapi/2.4/servletapi-2.4.pom";
String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" );
- assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
+ assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" );
}
- public void testCleanChecksumAltDash1()
+ @Test
+ void cleanChecksumAltDash1()
throws DigesterException
{
String expected = SERVLETAPI_SHA1 + " -";
String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" );
- assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
+ assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" );
}
- public void testCleanChecksumAltDash2()
+ @Test
+ void cleanChecksumAltDash2()
throws DigesterException
{
String expected = "SHA1(-)=" + SERVLETAPI_SHA1;
String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" );
- assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
+ assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" );
}
}
diff --git a/src/test/java/org/codehaus/plexus/digest/DigesterTest.java b/src/test/java/org/codehaus/plexus/digest/DigesterTest.java
index f64b14c..d8ce933 100644
--- a/src/test/java/org/codehaus/plexus/digest/DigesterTest.java
+++ b/src/test/java/org/codehaus/plexus/digest/DigesterTest.java
@@ -16,17 +16,22 @@
* limitations under the License.
*/
-import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.testing.PlexusTest;
+import org.junit.jupiter.api.Test;
+import javax.inject.Inject;
+import javax.inject.Named;
import java.io.File;
+import static org.junit.jupiter.api.Assertions.*;
+
/**
* Test the digester.
*
* @author Brett Porter
*/
-public class DigesterTest
- extends PlexusTestCase
+@PlexusTest
+class DigesterTest
{
private static final String MD5 = "adbc688ce77fa2aece4bb72cad9f98ba";
@@ -34,186 +39,75 @@ public class DigesterTest
private static final String WRONG_SHA1 = "4d8703779816556cdb8be7f6bb5c954f4b5730e2";
+ @Inject
+ @Named( "sha1" )
private Digester sha1Digest;
+ @Inject
+ @Named( "md5" )
private Digester md5Digest;
- protected void setUp()
- throws Exception
- {
- super.setUp();
-
- sha1Digest = (Digester) lookup( Digester.ROLE, "sha1" );
- md5Digest = (Digester) lookup( Digester.ROLE, "md5" );
- }
-
- public void testAlgorithm()
+ @Test
+ void algorithm()
{
assertEquals( "SHA-1", sha1Digest.getAlgorithm() );
assertEquals( "MD5", md5Digest.getAlgorithm() );
}
- public void testBareDigestFormat() {
+ @Test
+ void bareDigestFormat() {
File file = new File( getClass().getResource( "/test-file.txt" ).getPath() );
- try
- {
- md5Digest.verify( file, MD5 );
- }
- catch ( DigesterException e )
- {
- fail( "Bare format MD5 must not throw exception" );
- }
-
- try
- {
- sha1Digest.verify( file, SHA1 );
- }
- catch ( DigesterException e )
- {
- fail( "Bare format SHA1 must not throw exception" );
- }
-
- try
- {
- sha1Digest.verify( file, WRONG_SHA1 );
- fail( "wrong checksum must throw an exception" );
- }
- catch ( DigesterException e )
- {
- //expected
- }
+ assertDoesNotThrow( () -> md5Digest.verify( file, MD5 ), "Bare format MD5 must not throw exception" );
+
+ assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 ), "Bare format SHA1 must not throw exception" );
+
+ assertThrows( DigesterException.class,
+ () -> sha1Digest.verify( file, WRONG_SHA1 ), "Wrong SHA1 must throw exception" );
}
- public void testOpensslDigestFormat() {
+ @Test
+ void opensslDigestFormat() {
File file = new File( getClass().getResource( "/test-file.txt" ).getPath() );
- try
- {
- md5Digest.verify( file, "MD5(test-file.txt)= " + MD5 );
- }
- catch ( DigesterException e )
- {
- fail( "OpenSSL MD5 format must not cause exception" );
- }
-
- try
- {
- md5Digest.verify( file, "MD5 (test-file.txt) = " + MD5 );
- }
- catch ( DigesterException e )
- {
- fail( "FreeBSD MD5 format must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, "SHA1(test-file.txt)= " + SHA1 );
- }
- catch ( DigesterException e )
- {
- fail( "OpenSSL SHA1 format must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, "SHA1 (test-file.txt) = " + SHA1 );
- }
- catch ( DigesterException e )
- {
- fail( "FreeBSD SHA1 format must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, "SHA1 (FOO) = " + SHA1 );
- fail( "Wrong filename should cause an exception" );
- }
- catch ( DigesterException e )
- {
- //expected
- }
-
- try
- {
- sha1Digest.verify( file, "SHA1 (test-file.txt) = " + WRONG_SHA1 );
- fail( "Wrong sha1 should cause an exception" );
- }
- catch ( DigesterException e )
- {
- //expected
- }
+ assertDoesNotThrow( () -> md5Digest.verify( file, "MD5(test-file.txt)= " + MD5 ), "OpenSSL MD5 format must not cause exception" );
+
+ assertDoesNotThrow( () -> md5Digest.verify( file, "MD5 (test-file.txt) = " + MD5 ), "FreeBSD MD5 format must not cause exception" );
+
+ assertDoesNotThrow( () -> sha1Digest.verify( file, "SHA1(test-file.txt)= " + SHA1 ), "OpenSSL SHA1 format must not cause exception" );
+
+ assertDoesNotThrow( () -> sha1Digest.verify( file, "SHA1 (test-file.txt) = " + SHA1 ), "FreeBSD SHA1 format must not cause exception" );
+
+ assertThrows( DigesterException.class,
+ () -> sha1Digest.verify( file, "SHA1 (FOO) = " + SHA1 ), "Wrong filename must throw exception" );
+
+ assertThrows( DigesterException.class,
+ () -> sha1Digest.verify( file, "SHA1 (test-file.txt) = " + WRONG_SHA1 ), "Wrong SHA1 must throw exception" );
+
}
- public void testGnuDigestFormat() {
+ @Test
+ void gnuDigestFormat() {
File file = new File( getClass().getResource( "/test-file.txt" ).getPath() );
- try
- {
- md5Digest.verify( file, MD5 + " *test-file.txt" );
- }
- catch ( DigesterException e )
- {
- fail( "GNU format MD5 must not cause exception" );
- }
-
- try
- {
- md5Digest.verify( file, MD5 + " test-file.txt" );
- }
- catch ( DigesterException e )
- {
- fail( "GNU text format MD5 must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, SHA1 + " *test-file.txt" );
- }
- catch ( DigesterException e )
- {
- fail( "GNU format SHA1 must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, SHA1 + " test-file.txt" );
- }
- catch ( DigesterException e )
- {
- fail( "GNU text format SHA1 must not cause exception" );
- }
-
- try
- {
- sha1Digest.verify( file, SHA1 + " FOO" );
- fail( "Wrong filename cause an exception" );
- }
- catch ( DigesterException e )
- {
- //expected
- }
-
- try
- {
- sha1Digest.verify( file, WRONG_SHA1 + " test-file.txt" );
- fail( "Wrong SHA1 cause an exception" );
- }
- catch ( DigesterException e )
- {
- //expected
- }
+ assertDoesNotThrow( () -> md5Digest.verify( file, MD5 + " *test-file.txt" ), "GNU format MD5 must not cause exception" );
+
+ assertDoesNotThrow( () -> md5Digest.verify( file, MD5 + " test-file.txt" ), "GNU text format MD5 must not cause exception" );
+
+ assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " *test-file.txt" ), "GNU format SHA1 must not cause exception" );
+
+ assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " test-file.txt" ), "GNU text format SHA1 must not cause exception" );
+
+ assertThrows( DigesterException.class,
+ () -> sha1Digest.verify( file, SHA1 + " FOO" ), "Wrong filename must throw exception" );
+
+ assertThrows( DigesterException.class,
+ () -> sha1Digest.verify( file, WRONG_SHA1 + " test-file.txt" ), "Wrong SHA1 must throw exception" );
}
- public void testUntrimmedContent() {
+ @Test
+ void untrimmedContent() {
File file = new File( getClass().getResource( "/test-file.txt" ).getPath() );
- try
- {
- sha1Digest.verify( file, SHA1 + " *test-file.txt \n" );
- }
- catch ( DigesterException e )
- {
- fail( "GNU untrimmed SHA1 must not cause exception" );
- }
+ assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " *test-file.txt \n" ), "GNU untrimmed SHA1 must not cause exception" );
}
}