You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by el...@apache.org on 2020/04/24 14:21:54 UTC

[maven-archetype] branch master updated: [ARCHETYPE-594] Update EasyMock (#45)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 6a325a9  [ARCHETYPE-594] Update EasyMock (#45)
6a325a9 is described below

commit 6a325a9a16239d5a29245ff211987003f835e26a
Author: Elliotte Rusty Harold <el...@users.noreply.github.com>
AuthorDate: Fri Apr 24 10:21:44 2020 -0400

    [ARCHETYPE-594] Update EasyMock (#45)
    
    * update EasyMock
    * remove old commented code
---
 maven-archetype-plugin/pom.xml                     |   4 +-
 ...efaultArchetypeGenerationConfigurator2Test.java |  42 ++++---
 ...DefaultArchetypeGenerationConfiguratorTest.java |  34 +++---
 .../DefaultArchetypeGenerationQueryerTest.java     |  39 ++----
 .../DefaultArchetypeSelectionQueryerTest.java      | 102 +++++-----------
 .../generation/DefaultArchetypeSelectorTest.java   | 134 ++++-----------------
 6 files changed, 102 insertions(+), 253 deletions(-)

diff --git a/maven-archetype-plugin/pom.xml b/maven-archetype-plugin/pom.xml
index 048290a..8c03d99 100644
--- a/maven-archetype-plugin/pom.xml
+++ b/maven-archetype-plugin/pom.xml
@@ -122,9 +122,9 @@
       <artifactId>maven-artifact-transfer</artifactId>
     </dependency>
     <dependency>
-      <groupId>easymock</groupId>
+      <groupId>org.easymock</groupId>
       <artifactId>easymock</artifactId>
-      <version>1.2_Java1.3</version><!-- with 2.0 compilation failure -->
+      <version>3.6</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfigurator2Test.java b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfigurator2Test.java
index 14e64a4..d3ab16e 100644
--- a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfigurator2Test.java
+++ b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfigurator2Test.java
@@ -1,5 +1,8 @@
 package org.apache.maven.archetype.ui.generation;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -25,12 +28,13 @@ import org.apache.maven.archetype.ArchetypeGenerationRequest;
 import org.apache.maven.archetype.common.ArchetypeArtifactManager;
 import org.apache.maven.archetype.metadata.ArchetypeDescriptor;
 import org.apache.maven.archetype.metadata.RequiredProperty;
+import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.codehaus.plexus.PlexusTestCase;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
 
 /**
- * Tests the ability to use variables in default fields in batch mode
+ * Tests the ability to use variables in default fields in batch mode.
  */
 public class DefaultArchetypeGenerationConfigurator2Test
     extends PlexusTestCase
@@ -46,23 +50,7 @@ public class DefaultArchetypeGenerationConfigurator2Test
         configurator = (DefaultArchetypeGenerationConfigurator) lookup( ArchetypeGenerationConfigurator.ROLE );
 
         ProjectBuildingRequest buildingRequest = null;
-//        MavenRepositorySystemSession repositorySession = new MavenRepositorySystemSession();
-//        repositorySession.setLocalRepositoryManager( new SimpleLocalRepositoryManager( localRepository.getBasedir() ) );
-//        buildingRequest.setRepositorySession( repositorySession );
-//        request.setProjectBuildingRequest( buildingRequest );
         
-        MockControl control = MockControl.createControl( ArchetypeArtifactManager.class );
-        control.setDefaultMatcher( MockControl.ALWAYS_MATCHER );
-
-        ArchetypeArtifactManager manager = (ArchetypeArtifactManager) control.getMock();
-        manager.exists( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( true );
-        manager.isFileSetArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( true );
-        manager.isOldArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( false );
-        manager.getFileSetArchetypeDescriptor( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null,
-                                               null, null, buildingRequest );
         ArchetypeDescriptor descriptor = new ArchetypeDescriptor();
         RequiredProperty groupId = new RequiredProperty();
         groupId.setKey( "groupId" );
@@ -84,9 +72,23 @@ public class DefaultArchetypeGenerationConfigurator2Test
         descriptor.addRequiredProperty( thePackage );
         descriptor.addRequiredProperty( groupName );
         descriptor.addRequiredProperty( serviceName );
-        control.setReturnValue( descriptor );
-        control.replay();
+        
+        ArchetypeArtifactManager manager = EasyMock.createMock ( ArchetypeArtifactManager.class );
+        
+        List<ArtifactRepository> x = new ArrayList<>();
+        EasyMock.expect( manager.exists( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, x,
+                                         buildingRequest ) ).andReturn( true );
+        EasyMock.expect( manager.isFileSetArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion",
+                                                     null, null, x, buildingRequest ) ).andReturn( true );
+        EasyMock.expect( manager.isOldArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null,
+                                                 null, x, buildingRequest ) ).andReturn( false );
+        EasyMock.expect( manager.getFileSetArchetypeDescriptor( "archetypeGroupId", "archetypeArtifactId",
+                                                                "archetypeVersion", null, null, x,
+                                                                buildingRequest ) ).andReturn( descriptor );
+       
+        EasyMock.replay( manager );
         configurator.setArchetypeArtifactManager( manager );
+   
     }
     
     public void testJIRA_509_FileSetArchetypeDefaultsWithVariables() throws Exception
diff --git a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfiguratorTest.java b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfiguratorTest.java
index e9ace68..b5a5338 100644
--- a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfiguratorTest.java
+++ b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationConfiguratorTest.java
@@ -28,12 +28,15 @@ import org.apache.maven.archetype.exception.ArchetypeSelectionFailure;
 import org.apache.maven.archetype.exception.UnknownArchetype;
 import org.apache.maven.archetype.exception.UnknownGroup;
 import org.apache.maven.archetype.old.descriptor.ArchetypeDescriptor;
+import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.components.interactivity.PrompterException;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
 
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Properties;
 
 /**
@@ -53,21 +56,22 @@ public class DefaultArchetypeGenerationConfiguratorTest
         configurator = (DefaultArchetypeGenerationConfigurator) lookup( ArchetypeGenerationConfigurator.ROLE );
 
         ProjectBuildingRequest buildingRequest = null;
+
+        ArchetypeArtifactManager manager = EasyMock.createMock ( ArchetypeArtifactManager.class );
         
-        MockControl control = MockControl.createControl( ArchetypeArtifactManager.class );
-        control.setDefaultMatcher( MockControl.ALWAYS_MATCHER );
-
-        ArchetypeArtifactManager manager = (ArchetypeArtifactManager) control.getMock();
-        manager.exists( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( true );
-        manager.isFileSetArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( false );
-        manager.isOldArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, null, buildingRequest );
-        control.setReturnValue( true );
-        manager.getOldArchetypeDescriptor( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null,
-                                               null, null, buildingRequest );
-        control.setReturnValue( new ArchetypeDescriptor() );
-        control.replay();
+        List<ArtifactRepository> x = new ArrayList<>();
+        EasyMock.expect( manager.exists( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null, null, x,
+                                         buildingRequest ) ).andReturn( true );
+        EasyMock.expect( manager.isFileSetArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion",
+                                                     null, null, x, buildingRequest ) ).andReturn( false );
+        EasyMock.expect( manager.isOldArchetype( "archetypeGroupId", "archetypeArtifactId", "archetypeVersion", null,
+                                                 null, x, buildingRequest ) ).andReturn( true );
+
+        EasyMock.expect( manager.getOldArchetypeDescriptor( "archetypeGroupId", "archetypeArtifactId",
+                                                            "archetypeVersion", null, null, x,
+                                                            buildingRequest ) ).andReturn( new ArchetypeDescriptor() );
+       
+        EasyMock.replay( manager );
         configurator.setArchetypeArtifactManager( manager );
     }
 
diff --git a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationQueryerTest.java b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationQueryerTest.java
index 19f358e..c9d546c 100644
--- a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationQueryerTest.java
+++ b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeGenerationQueryerTest.java
@@ -22,9 +22,7 @@ package org.apache.maven.archetype.ui.generation;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.components.interactivity.Prompter;
 import org.codehaus.plexus.components.interactivity.PrompterException;
-import org.easymock.AbstractMatcher;
-import org.easymock.ArgumentsMatcher;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
 
 import java.util.regex.Pattern;
 
@@ -46,18 +44,13 @@ public class DefaultArchetypeGenerationQueryerTest
     public void testPropertyRegexValidationRetry()
         throws PrompterException
     {
-
-        MockControl control = MockControl.createControl( Prompter.class );
-
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "invalid-answer" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        
+        EasyMock.expect(prompter.prompt( EasyMock.<String>anyObject() )).andReturn( "invalid-answer" );
+        EasyMock.expect(prompter.prompt( EasyMock.<String>anyObject() )).andReturn( "valid-answer" );
+        
+        EasyMock.replay( prompter );
         queryer.setPrompter( prompter );
-        prompter.prompt( "" );
-        control.setReturnValue( "valid-answer" );
-        queryer.setPrompter( prompter );
-        control.replay();
 
         String value = queryer.getPropertyValue( "custom-property", null, Pattern.compile( "^valid-.*" ) );
 
@@ -65,22 +58,4 @@ public class DefaultArchetypeGenerationQueryerTest
 
     }
 
-    private static ArgumentsMatcher createArgumentMatcher()
-    {
-        return new AbstractMatcher()
-        {
-            @Override
-            protected boolean argumentMatches( Object o, Object o1 )
-            {
-                return true;
-            }
-
-            @Override
-            protected String argumentToString( Object o )
-            {
-                return "...";
-            }
-        };
-    }
-
 }
diff --git a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectionQueryerTest.java b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectionQueryerTest.java
index 1fbef30..d90fe69 100644
--- a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectionQueryerTest.java
+++ b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectionQueryerTest.java
@@ -24,9 +24,7 @@ import org.apache.maven.archetype.ui.ArchetypeDefinition;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.components.interactivity.Prompter;
 import org.codehaus.plexus.components.interactivity.PrompterException;
-import org.easymock.AbstractMatcher;
-import org.easymock.ArgumentsMatcher;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -52,14 +50,12 @@ public class DefaultArchetypeSelectionQueryerTest
     {
         Map<String, List<Archetype>> map = createDefaultArchetypeCatalog();
 
-        MockControl control = MockControl.createControl( Prompter.class );
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "", "2" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "1" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        String prompt = EasyMock.anyObject();
+        EasyMock.expect(prompter.prompt( prompt, EasyMock.eq( "2" ) )).andReturn( "1" );
         queryer.setPrompter( prompter );
-
-        control.replay();
+        
+        EasyMock.replay( prompter );
 
         ArchetypeDefinition defaultDefinition = new ArchetypeDefinition();
         defaultDefinition.setGroupId( "default-groupId" );
@@ -67,7 +63,7 @@ public class DefaultArchetypeSelectionQueryerTest
         defaultDefinition.setVersion( "default-version" );
         Archetype archetype = queryer.selectArchetype( map, defaultDefinition );
 
-        control.verify();
+        EasyMock.verify( prompter );
 
         assertEquals( "set-groupId", archetype.getGroupId() );
         assertEquals( "set-artifactId", archetype.getArtifactId() );
@@ -79,14 +75,12 @@ public class DefaultArchetypeSelectionQueryerTest
     {
         Map<String, List<Archetype>> map = createDefaultArchetypeCatalog();
 
-        MockControl control = MockControl.createControl( Prompter.class );
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "", "2" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "2" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        String prompt = EasyMock.anyObject();
+        EasyMock.expect(prompter.prompt( prompt, EasyMock.eq( "2" ) )).andReturn( "2" );
         queryer.setPrompter( prompter );
 
-        control.replay();
+        EasyMock.replay( prompter );
 
         ArchetypeDefinition defaultDefinition = new ArchetypeDefinition();
         defaultDefinition.setGroupId( "default-groupId" );
@@ -94,7 +88,7 @@ public class DefaultArchetypeSelectionQueryerTest
         defaultDefinition.setVersion( "default-version" );
         Archetype archetype = queryer.selectArchetype( map, defaultDefinition );
 
-        control.verify();
+        EasyMock.verify( prompter );
 
         assertEquals( "default-groupId", archetype.getGroupId() );
         assertEquals( "default-artifactId", archetype.getArtifactId() );
@@ -106,14 +100,12 @@ public class DefaultArchetypeSelectionQueryerTest
     {
         Map<String, List<Archetype>> map = createDefaultArchetypeCatalog();
 
-        MockControl control = MockControl.createControl( Prompter.class );
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "1" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        String prompt = EasyMock.anyObject();
+        EasyMock.expect(prompter.prompt( prompt ) ).andReturn( "1" );
         queryer.setPrompter( prompter );
 
-        control.replay();
+        EasyMock.replay( prompter );
 
         ArchetypeDefinition defaultDefinition = new ArchetypeDefinition();
         defaultDefinition.setGroupId( "invalid-groupId" );
@@ -121,7 +113,7 @@ public class DefaultArchetypeSelectionQueryerTest
         defaultDefinition.setVersion( "invalid-version" );
         Archetype archetype = queryer.selectArchetype( map, defaultDefinition );
 
-        control.verify();
+        EasyMock.verify( prompter );
 
         assertEquals( "set-groupId", archetype.getGroupId() );
         assertEquals( "set-artifactId", archetype.getArtifactId() );
@@ -133,18 +125,17 @@ public class DefaultArchetypeSelectionQueryerTest
     {
         Map<String, List<Archetype>> map = createDefaultArchetypeCatalog();
 
-        MockControl control = MockControl.createControl( Prompter.class );
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "1" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        String prompt = EasyMock.anyObject();
+        EasyMock.expect(prompter.prompt( prompt ) ).andReturn( "1" );
+
         queryer.setPrompter( prompter );
 
-        control.replay();
+        EasyMock.replay( prompter );
 
         Archetype archetype = queryer.selectArchetype( map );
 
-        control.verify();
+        EasyMock.verify( prompter );
 
         assertEquals( "set-groupId", archetype.getGroupId() );
         assertEquals( "set-artifactId", archetype.getArtifactId() );
@@ -156,20 +147,17 @@ public class DefaultArchetypeSelectionQueryerTest
     {
         Map<String, List<Archetype>> map = createDefaultArchetypeCatalog();
 
-        MockControl control = MockControl.createControl( Prompter.class );
-        Prompter prompter = (Prompter) control.getMock();
-        prompter.prompt( "" );
-        control.setMatcher( createArgumentMatcher() );
-        control.setReturnValue( "set-artifactId" );
-        prompter.prompt( "" );
-        control.setReturnValue( "1" );
+        Prompter prompter = EasyMock.createMock( Prompter.class );
+        String prompt = EasyMock.anyObject();
+        EasyMock.expect(prompter.prompt( prompt ) ).andReturn( "1" );
+        
         queryer.setPrompter( prompter );
 
-        control.replay();
+        EasyMock.replay( prompter );
 
         Archetype archetype = queryer.selectArchetype( map );
 
-        control.verify();
+        EasyMock.verify( prompter );
 
         assertEquals( "set-groupId", archetype.getGroupId() );
         assertEquals( "set-artifactId", archetype.getArtifactId() );
@@ -193,36 +181,4 @@ public class DefaultArchetypeSelectionQueryerTest
         return a;
     }
 
-    private static ArgumentsMatcher createArgumentMatcher()
-    {
-        return new AbstractMatcher()
-        {
-            private boolean isPromptString( Object o )
-            {
-                boolean value = false;
-                if ( o instanceof String )
-                {
-                    String s = (String) o;
-                    if ( s.startsWith( "Choose" ) )
-                    {
-                        // ignore the prompt
-                        value = true;
-                    }
-                }
-                return value;
-            }
-
-            @Override
-            protected boolean argumentMatches( Object o, Object o1 )
-            {
-                return isPromptString( o1 ) || super.argumentMatches( o, o1 );
-            }
-
-            @Override
-            protected String argumentToString( Object o )
-            {
-                return isPromptString( o ) ? "..." : super.argumentToString( o );
-            }
-        };
-    }
 }
\ No newline at end of file
diff --git a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectorTest.java b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectorTest.java
index 98cf0e2..faec8cd 100644
--- a/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectorTest.java
+++ b/maven-archetype-plugin/src/test/java/org/apache/maven/archetype/ui/generation/DefaultArchetypeSelectorTest.java
@@ -28,12 +28,9 @@ import org.apache.maven.archetype.exception.UnknownGroup;
 import org.apache.maven.archetype.ui.ArchetypeDefinition;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.components.interactivity.PrompterException;
-import org.easymock.AbstractMatcher;
-import org.easymock.ArgumentsMatcher;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
 
 import java.io.IOException;
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
@@ -60,18 +57,16 @@ public class DefaultArchetypeSelectorTest
         request.setArchetypeGroupId( "preset-groupId" );
         request.setArchetypeVersion( "preset-version" );
 
-        MockControl control = MockControl.createControl( ArchetypeSelectionQueryer.class );
-
-        ArchetypeSelectionQueryer queryer = (ArchetypeSelectionQueryer) control.getMock();
+        ArchetypeSelectionQueryer queryer = EasyMock.createMock( ArchetypeSelectionQueryer.class );
         // expect it to not be called
 
-        control.replay();
+        EasyMock.replay( queryer );
 
         selector.setArchetypeSelectionQueryer( queryer );
 
         selector.selectArchetype( request, Boolean.TRUE, "" );
 
-        control.verify();
+        EasyMock.verify( queryer );
 
         assertEquals( "preset-groupId", request.getArchetypeGroupId() );
         assertEquals( "preset-artifactId", request.getArchetypeArtifactId() );
@@ -85,18 +80,16 @@ public class DefaultArchetypeSelectorTest
         ArchetypeGenerationRequest request = new ArchetypeGenerationRequest();
         request.setArchetypeArtifactId( "preset-artifactId" );
 
-        MockControl control = MockControl.createControl( ArchetypeSelectionQueryer.class );
-
-        ArchetypeSelectionQueryer queryer = (ArchetypeSelectionQueryer) control.getMock();
+        ArchetypeSelectionQueryer queryer = EasyMock.createMock( ArchetypeSelectionQueryer.class );
         // expect it to not be called
 
-        control.replay();
+        EasyMock.replay( queryer );
 
         selector.setArchetypeSelectionQueryer( queryer );
 
         selector.selectArchetype( request, Boolean.TRUE, "" );
 
-        control.verify();
+        EasyMock.verify( queryer );
 
         assertEquals( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_GROUPID, request.getArchetypeGroupId() );
         assertEquals( "preset-artifactId", request.getArchetypeArtifactId() );
@@ -109,24 +102,23 @@ public class DefaultArchetypeSelectorTest
     {
         ArchetypeGenerationRequest request = new ArchetypeGenerationRequest();
 
-        MockControl control = MockControl.createControl( ArchetypeSelectionQueryer.class );
-
-        ArchetypeSelectionQueryer queryer = (ArchetypeSelectionQueryer) control.getMock();
-        queryer.selectArchetype( Collections.<String, List<Archetype>> emptyMap(), new ArchetypeDefinition() );
-        control.setMatcher( MockControl.ALWAYS_MATCHER );
+        ArchetypeSelectionQueryer queryer = EasyMock.createMock( ArchetypeSelectionQueryer.class );
+                
         Archetype archetype = new Archetype();
         archetype.setArtifactId( "set-artifactId" );
         archetype.setGroupId( "set-groupId" );
         archetype.setVersion( "set-version" );
-        control.setReturnValue( archetype );
+        ArchetypeDefinition y = EasyMock.anyObject();
+        Map<String, List<Archetype>> x = EasyMock.anyObject();
+        EasyMock.expect( queryer.selectArchetype( x , y ) ).andReturn( archetype );
 
-        control.replay();
+        EasyMock.replay( queryer );
 
         selector.setArchetypeSelectionQueryer( queryer );
 
         selector.selectArchetype( request, Boolean.TRUE, "" );
 
-        control.verify();
+        EasyMock.verify( queryer );
 
         assertEquals( "set-groupId", request.getArchetypeGroupId() );
         assertEquals( "set-artifactId", request.getArchetypeArtifactId() );
@@ -139,18 +131,16 @@ public class DefaultArchetypeSelectorTest
     {
         ArchetypeGenerationRequest request = new ArchetypeGenerationRequest();
 
-        MockControl control = MockControl.createControl( ArchetypeSelectionQueryer.class );
-
-        ArchetypeSelectionQueryer queryer = (ArchetypeSelectionQueryer) control.getMock();
+        ArchetypeSelectionQueryer queryer = EasyMock.createMock( ArchetypeSelectionQueryer.class );
         // expect it to not be called
 
-        control.replay();
+        EasyMock.replay( queryer );
 
         selector.setArchetypeSelectionQueryer( queryer );
 
         selector.selectArchetype( request, Boolean.FALSE, "" );
 
-        control.verify();
+        EasyMock.verify( queryer );
 
         assertEquals( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_GROUPID, request.getArchetypeGroupId() );
         assertEquals( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_ARTIFACTID, request.getArchetypeArtifactId() );
@@ -163,104 +153,26 @@ public class DefaultArchetypeSelectorTest
     {
         ArchetypeGenerationRequest request = new ArchetypeGenerationRequest();
 
-        MockControl control = MockControl.createControl( ArchetypeSelectionQueryer.class );
-
-        ArchetypeSelectionQueryer queryer = (ArchetypeSelectionQueryer) control.getMock();
-        queryer.selectArchetype( Collections.<String, List<Archetype>> emptyMap(), createDefaultArchetypeDefinition() );
-        control.setMatcher( createArgumentMatcher() );
+        ArchetypeSelectionQueryer queryer = EasyMock.createMock( ArchetypeSelectionQueryer.class );
         Archetype archetype = new Archetype();
         archetype.setArtifactId( "set-artifactId" );
         archetype.setGroupId( "set-groupId" );
         archetype.setVersion( "set-version" );
-        control.setReturnValue( archetype );
+        ArchetypeDefinition y = EasyMock.anyObject();
+        Map<String, List<Archetype>> x = EasyMock.anyObject();
+        EasyMock.expect( queryer.selectArchetype( x , y ) ).andReturn( archetype );
 
-        control.replay();
+        EasyMock.replay( queryer );
 
         selector.setArchetypeSelectionQueryer( queryer );
 
         selector.selectArchetype( request, Boolean.TRUE, "" );
 
-        control.verify();
+        EasyMock.verify( queryer );
 
         assertEquals( "set-groupId", request.getArchetypeGroupId() );
         assertEquals( "set-artifactId", request.getArchetypeArtifactId() );
         assertEquals( "set-version", request.getArchetypeVersion() );
     }
 
-    private ArchetypeDefinition createDefaultArchetypeDefinition()
-    {
-        ArchetypeDefinition definition = new ArchetypeDefinition();
-        definition.setGroupId( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_GROUPID );
-        definition.setArtifactId( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_ARTIFACTID );
-        definition.setVersion( DefaultArchetypeSelector.DEFAULT_ARCHETYPE_VERSION );
-        return definition;
-    }
-
-    private static ArgumentsMatcher createArgumentMatcher()
-    {
-        return new AbstractMatcher()
-        {
-            @Override
-            protected boolean argumentMatches( Object o, Object o1 )
-            {
-                return !( o instanceof ArchetypeDefinition ) ||
-                    compareArchetypeDefinition( (ArchetypeDefinition) o, (ArchetypeDefinition) o1 );
-            }
-
-            private boolean compareArchetypeDefinition( ArchetypeDefinition o, ArchetypeDefinition o1 )
-            {
-                if ( o1 == o )
-                {
-                    return true;
-                }
-                if ( o == null )
-                {
-                    return false;
-                }
-
-                if ( o1.getArtifactId() != null
-                    ? !o1.getArtifactId().equals( o.getArtifactId() )
-                    : o.getArtifactId() != null )
-                {
-                    return false;
-                }
-                if ( o1.getGroupId() != null ? !o1.getGroupId().equals( o.getGroupId() ) : o.getGroupId() != null )
-                {
-                    return false;
-                }
-                if ( o1.getName() != null ? !o1.getName().equals( o.getName() ) : o.getName() != null )
-                {
-                    return false;
-                }
-                if ( o1.getVersion() != null ? !o1.getVersion().equals( o.getVersion() ) : o.getVersion() != null )
-                {
-                    return false;
-                }
-                if ( o1.getGoals() != null ? !o1.getGoals().equals( o.getGoals() ) : o.getGoals() != null )
-                {
-                    return false;
-                }
-                if ( o1.getRepository() != null
-                    ? !o1.getRepository().equals( o.getRepository() )
-                    : o.getRepository() != null )
-                {
-                    return false;
-                }
-
-                return true;
-            }
-
-            @Override
-            protected String argumentToString( Object o )
-            {
-                return o instanceof Map ? "..." : toString( (ArchetypeDefinition) o );
-            }
-
-            private String toString( ArchetypeDefinition archetypeDefinition )
-            {
-                return "groupId = " + archetypeDefinition.getGroupId() + ", " + "artifactId = " +
-                    archetypeDefinition.getArtifactId() + ", " + "version = " + archetypeDefinition.getVersion();
-            }
-        };
-    }
 }