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 2021/01/11 01:12:47 UTC
[maven-help-plugin] 01/02: Refactor tests - drop junit-addons
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a commit to branch refactor-test
in repository https://gitbox.apache.org/repos/asf/maven-help-plugin.git
commit 0b1547763ffdb0f372c944e888315f6adf68ccca
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Mon Jan 11 00:05:19 2021 +0100
Refactor tests - drop junit-addons
---
pom.xml | 6 -
.../maven/plugins/help/ActiveProfilesMojoTest.java | 7 -
.../maven/plugins/help/DescribeMojoTest.java | 165 ++++++++++++---------
3 files changed, 92 insertions(+), 86 deletions(-)
diff --git a/pom.xml b/pom.xml
index a52fcbf..0267f35 100644
--- a/pom.xml
+++ b/pom.xml
@@ -217,12 +217,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>junit-addons</groupId>
- <artifactId>junit-addons</artifactId>
- <version>1.4</version>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>2.28.2</version>
diff --git a/src/test/java/org/apache/maven/plugins/help/ActiveProfilesMojoTest.java b/src/test/java/org/apache/maven/plugins/help/ActiveProfilesMojoTest.java
index 55b3658..9af35fd 100644
--- a/src/test/java/org/apache/maven/plugins/help/ActiveProfilesMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/help/ActiveProfilesMojoTest.java
@@ -43,13 +43,6 @@ public class ActiveProfilesMojoTest
extends AbstractMojoTestCase
{
- @Override
- protected void setUp()
- throws Exception
- {
- super.setUp();
- }
-
/**
* Tests that profiles activated in the settings are resolved.
*
diff --git a/src/test/java/org/apache/maven/plugins/help/DescribeMojoTest.java b/src/test/java/org/apache/maven/plugins/help/DescribeMojoTest.java
index e167940..8cdd49a 100644
--- a/src/test/java/org/apache/maven/plugins/help/DescribeMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/help/DescribeMojoTest.java
@@ -19,13 +19,6 @@ package org.apache.maven.plugins.help;
* under the License.
*/
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
import org.apache.maven.execution.MavenSession;
import org.apache.maven.lifecycle.internal.MojoDescriptorCreator;
import org.apache.maven.model.Plugin;
@@ -38,30 +31,35 @@ import org.apache.maven.plugin.version.PluginVersionResult;
import org.apache.maven.plugins.help.DescribeMojo.PluginInfo;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.exec.MavenPluginManagerHelper;
+import org.junit.Test;
import org.mockito.ArgumentCaptor;
-import junit.framework.TestCase;
-import junitx.util.PrivateAccessor;
+import java.lang.reflect.InvocationTargetException;
+
+import static org.apache.commons.lang3.reflect.FieldUtils.writeDeclaredField;
+import static org.apache.commons.lang3.reflect.FieldUtils.writeField;
+import static org.apache.commons.lang3.reflect.MethodUtils.invokeMethod;
+import static org.junit.Assert.*;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.*;
/**
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
*/
public class DescribeMojoTest
- extends TestCase
{
/**
* Test method for {@link org.apache.maven.plugins.help.DescribeMojo#toLines(java.lang.String, int, int, int)}.
*
- * @throws Exception if any
*/
+ @Test
public void testGetExpressionsRoot()
- throws Exception
{
try
{
- PrivateAccessor.invoke( DescribeMojo.class, "toLines", new Class[] { String.class, Integer.TYPE,
- Integer.TYPE, Integer.TYPE }, new Object[] { "", 2, 2,
- 80} );
+ DescribeMojo describeMojo = new DescribeMojo();
+ invokeMethod( describeMojo, true, "toLines", "", 2, 2, 80 );
assertTrue( true );
}
catch ( Throwable e )
@@ -70,6 +68,7 @@ public class DescribeMojoTest
}
}
+ @Test
public void testValidExpression()
throws Exception
{
@@ -84,14 +83,11 @@ public class DescribeMojoTest
try
{
- PrivateAccessor.invoke( new DescribeMojo(), "describeMojoParameters", new Class[] { MojoDescriptor.class,
- StringBuilder.class }, new Object[] { md, sb } );
-
- assertEquals( " Available parameters:" + ls
- + ls +
- " name" + ls +
- " User property: valid.expression" + ls +
- " (no description available)" + ls, sb.toString() );
+ invokeMethod( new DescribeMojo(), true, "describeMojoParameters", md, sb );
+
+ assertEquals(
+ " Available parameters:" + ls + ls + " name" + ls + " User property: valid.expression" + ls + " (no description available)" + ls,
+ sb.toString() );
}
catch ( Throwable e )
{
@@ -99,6 +95,7 @@ public class DescribeMojoTest
}
}
+ @Test
public void testInvalidExpression()
throws Exception
{
@@ -113,9 +110,8 @@ public class DescribeMojoTest
try
{
- PrivateAccessor.invoke( new DescribeMojo(), "describeMojoParameters", new Class[] { MojoDescriptor.class,
- StringBuilder.class }, new Object[] { md, sb } );
-
+ invokeMethod( new DescribeMojo(), true, "describeMojoParameters", md, sb );
+
assertEquals( " Available parameters:" + ls +
ls +
" name" + ls +
@@ -129,68 +125,83 @@ public class DescribeMojoTest
}
+ @Test
public void testParsePluginInfoGAV()
throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
- PrivateAccessor.setField( mojo, "groupId", "org.test" );
- PrivateAccessor.setField( mojo, "artifactId", "test" );
- PrivateAccessor.setField( mojo, "version", "1.0" );
- PluginInfo pi = (PluginInfo) PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+ writeDeclaredField( mojo, "groupId", "org.test", true );
+ writeDeclaredField( mojo, "artifactId", "test", true );
+ writeDeclaredField( mojo, "version", "1.0", true );
+
+ PluginInfo pi = (PluginInfo) invokeMethod( mojo, true, "parsePluginLookupInfo" );
+
assertEquals( pi.getGroupId(), "org.test" );
assertEquals( pi.getArtifactId(), "test" );
assertEquals( pi.getVersion(), "1.0" );
assertNull( pi.getPrefix() );
}
+ @Test
public void testParsePluginInfoPluginPrefix()
throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
- PrivateAccessor.setField( mojo, "plugin", "help" );
- PluginInfo pi = (PluginInfo) PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+ writeDeclaredField( mojo, "plugin", "help", true );
+
+ PluginInfo pi = (PluginInfo) invokeMethod( mojo, true, "parsePluginLookupInfo" );
+
assertNull( pi.getGroupId() );
assertNull( pi.getArtifactId() );
assertNull( pi.getVersion() );
assertEquals( "help", pi.getPrefix() );
-
- PrivateAccessor.setField( mojo, "plugin", "help2:::" );
- pi = (PluginInfo) PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+
+ writeDeclaredField( mojo, "plugin", "help2:::", true );
+
+ pi = (PluginInfo) invokeMethod( mojo, true, "parsePluginLookupInfo" );
+
assertEquals( "help2", pi.getPrefix() );
}
+ @Test
public void testParsePluginInfoPluginGA()
throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
- PrivateAccessor.setField( mojo, "plugin", "org.test:test" );
- PluginInfo pi = (PluginInfo) PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+ writeDeclaredField( mojo, "plugin", "org.test:test", true );
+
+ PluginInfo pi = (PluginInfo) invokeMethod( mojo, true, "parsePluginLookupInfo" );
+
assertEquals( "org.test", pi.getGroupId() );
assertEquals( "test", pi.getArtifactId() );
assertNull( pi.getVersion() );
assertNull( pi.getPrefix() );
}
+ @Test
public void testParsePluginInfoPluginGAV()
throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
- PrivateAccessor.setField( mojo, "plugin", "org.test:test:1.0" );
- PluginInfo pi = (PluginInfo) PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+ writeDeclaredField( mojo, "plugin", "org.test:test:1.0", true );
+
+ PluginInfo pi = (PluginInfo) invokeMethod( mojo, true, "parsePluginLookupInfo" );
+
assertEquals( "org.test", pi.getGroupId() );
assertEquals( "test", pi.getArtifactId() );
assertEquals( "1.0", pi.getVersion() );
assertNull( pi.getPrefix() );
}
+ @Test
public void testParsePluginInfoPluginIncorrect()
throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
- PrivateAccessor.setField( mojo, "plugin", "org.test:test:1.0:invalid" );
+ writeDeclaredField( mojo, "plugin", "org.test:test:1.0:invalid", true );
try
{
- PrivateAccessor.invoke( mojo, "parsePluginLookupInfo", null, null );
+ invokeMethod( mojo, "parsePluginLookupInfo" );
fail();
}
catch ( Exception e )
@@ -199,6 +210,7 @@ public class DescribeMojoTest
}
}
+ @Test
public void testLookupPluginDescriptorPrefixWithVersion()
throws Throwable
{
@@ -218,16 +230,15 @@ public class DescribeMojoTest
PluginVersionResolver pluginVersionResolver = mock( PluginVersionResolver.class );
MavenPluginManagerHelper pluginManager = mock( MavenPluginManagerHelper.class );
MavenSession session = mock( MavenSession.class );
- PrivateAccessor.setField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator );
- PrivateAccessor.setField( mojo, "pluginVersionResolver", pluginVersionResolver );
- PrivateAccessor.setField( mojo, "pluginManager", pluginManager );
- PrivateAccessor.setField( mojo, "session", session );
+ writeDeclaredField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator, true );
+ writeDeclaredField( mojo, "pluginVersionResolver", pluginVersionResolver, true );
+ writeDeclaredField( mojo, "pluginManager", pluginManager, true );
+ writeField( mojo, "session", session, true );
when( mojoDescriptorCreator.findPluginForPrefix( "help", session ) ).thenReturn( plugin );
when( pluginManager.getPluginDescriptor( any( Plugin.class ), eq( session ) ) ).thenReturn( pd );
- PluginDescriptor returned =
- (PluginDescriptor) PrivateAccessor.invoke( mojo, "lookupPluginDescriptor", new Class[] { PluginInfo.class },
- new Object[] { pi } );
+ PluginDescriptor returned = (PluginDescriptor) invokeMethod( mojo, true, "lookupPluginDescriptor", pi );
+
assertEquals( pd, returned );
verify( mojoDescriptorCreator ).findPluginForPrefix( "help", session );
@@ -240,6 +251,7 @@ public class DescribeMojoTest
assertEquals( "1.0", capturedPlugin.getVersion() );
}
+ @Test
public void testLookupPluginDescriptorPrefixWithoutVersion()
throws Throwable
{
@@ -259,21 +271,20 @@ public class DescribeMojoTest
MavenPluginManagerHelper pluginManager = mock( MavenPluginManagerHelper.class );
PluginVersionResult versionResult = mock( PluginVersionResult.class );
MavenSession session = mock( MavenSession.class );
- PrivateAccessor.setField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator );
- PrivateAccessor.setField( mojo, "pluginVersionResolver", pluginVersionResolver );
- PrivateAccessor.setField( mojo, "pluginManager", pluginManager );
- PrivateAccessor.setField( mojo, "session", session );
- PrivateAccessor.setField( mojo, "project", new MavenProject() );
+ writeDeclaredField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator, true );
+ writeDeclaredField( mojo, "pluginVersionResolver", pluginVersionResolver, true );
+ writeDeclaredField( mojo, "pluginManager", pluginManager, true );
+ writeField( mojo, "session", session, true );
+ writeDeclaredField( mojo, "project", new MavenProject(), true );
when( mojoDescriptorCreator.findPluginForPrefix( "help", session ) ).thenReturn( plugin );
when( pluginVersionResolver.resolve( any( PluginVersionRequest.class ) ) ).thenReturn( versionResult );
when( versionResult.getVersion() ).thenReturn( "1.0" );
when( pluginManager.getPluginDescriptor( any( Plugin.class ), eq( session ) ) ).thenReturn( pd );
- PluginDescriptor returned =
- (PluginDescriptor) PrivateAccessor.invoke( mojo, "lookupPluginDescriptor", new Class[] { PluginInfo.class },
- new Object[] { pi } );
+ PluginDescriptor returned = (PluginDescriptor) invokeMethod( mojo, true, "lookupPluginDescriptor", pi );
assertEquals( pd, returned );
+
verify( mojoDescriptorCreator ).findPluginForPrefix( "help", session );
ArgumentCaptor<PluginVersionRequest> versionArgument = ArgumentCaptor.forClass( PluginVersionRequest.class );
verify( pluginVersionResolver ).resolve( versionArgument.capture() );
@@ -287,6 +298,7 @@ public class DescribeMojoTest
assertEquals( "1.0", capturedPlugin.getVersion() );
}
+ @Test
public void testLookupPluginDescriptorGAV()
throws Throwable
{
@@ -303,15 +315,14 @@ public class DescribeMojoTest
PluginVersionResolver pluginVersionResolver = mock( PluginVersionResolver.class );
MavenPluginManagerHelper pluginManager = mock( MavenPluginManagerHelper.class );
MavenSession session = mock( MavenSession.class );
- PrivateAccessor.setField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator );
- PrivateAccessor.setField( mojo, "pluginVersionResolver", pluginVersionResolver );
- PrivateAccessor.setField( mojo, "pluginManager", pluginManager );
- PrivateAccessor.setField( mojo, "session", session );
+ writeDeclaredField( mojo, "mojoDescriptorCreator", mojoDescriptorCreator, true );
+ writeDeclaredField( mojo, "pluginVersionResolver", pluginVersionResolver, true );
+ writeDeclaredField( mojo, "pluginManager", pluginManager, true );
+ writeField( mojo, "session", session, true );
when( pluginManager.getPluginDescriptor( any( Plugin.class ), eq( session ) ) ).thenReturn( pd );
- PluginDescriptor returned =
- (PluginDescriptor) PrivateAccessor.invoke( mojo, "lookupPluginDescriptor", new Class[] { PluginInfo.class },
- new Object[] { pi } );
+ PluginDescriptor returned = (PluginDescriptor) invokeMethod( mojo, true, "lookupPluginDescriptor", pi );
+
assertEquals( pd, returned );
verify( mojoDescriptorCreator, never() ).findPluginForPrefix( any( String.class ), any( MavenSession.class ) );
@@ -324,39 +335,47 @@ public class DescribeMojoTest
assertEquals( "1.0", capturedPlugin.getVersion() );
}
+ @Test
public void testLookupPluginDescriptorGMissingA()
- throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
PluginInfo pi = new PluginInfo();
pi.setGroupId( "org.test" );
try
{
- PrivateAccessor.invoke( mojo, "lookupPluginDescriptor", new Class[] { PluginInfo.class },
- new Object[] { pi } );
+ invokeMethod( mojo, true, "lookupPluginDescriptor", pi );
fail();
}
- catch ( Exception e )
+ catch ( InvocationTargetException e )
{
- assertTrue( e.getMessage().startsWith( "You must specify either" ) );
+ assertTrue( e.getTargetException()
+ .getMessage().startsWith( "You must specify either" ) );
+ }
+ catch ( NoSuchMethodException | IllegalAccessException e )
+ {
+ fail();
}
}
+ @Test
public void testLookupPluginDescriptorAMissingG()
- throws Throwable
{
DescribeMojo mojo = new DescribeMojo();
PluginInfo pi = new PluginInfo();
pi.setArtifactId( "test" );
try
{
- PrivateAccessor.invoke( mojo, "lookupPluginDescriptor", new Class[] { PluginInfo.class },
- new Object[] { pi } );
+ invokeMethod( mojo, true, "lookupPluginDescriptor", pi );
fail();
}
- catch ( Exception e )
+ catch ( InvocationTargetException e )
+ {
+ assertTrue( e.getTargetException()
+ .getMessage().startsWith( "You must specify either" ) );
+ }
+ catch ( Exception e)
{
- assertTrue( e.getMessage().startsWith( "You must specify either" ) );
+ fail( e.getMessage() );
}
}