You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2009/04/28 01:12:32 UTC

svn commit: r769199 [13/19] - in /maven/mercury/trunk: mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ mercury-ant-tasks/src/test/java/org/apache/maven/mercury/ant/tasks/ mercury-core/src/main/java/org/apache/maven/mercury/artifact/...

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/api/RepositoryUpdatePolicyIntervalTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/api/RepositoryUpdatePolicyIntervalTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/api/RepositoryUpdatePolicyIntervalTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/api/RepositoryUpdatePolicyIntervalTest.java Mon Apr 27 23:12:25 2009
@@ -21,38 +21,36 @@
 import junit.framework.TestCase;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class RepositoryUpdatePolicyIntervalTest
     extends TestCase
 {
-  RepositoryUpdateIntervalPolicy in;
-  long now;
-  
-  @Override
-  protected void setUp()
-      throws Exception
-  {
-    in = new RepositoryUpdateIntervalPolicy( RepositoryUpdateIntervalPolicy.UPDATE_POLICY_NAME_INTERVAL+"1" );
-    now = System.currentTimeMillis();
-  }
-
-  public void testInterval()
-  {
-    assertFalse( in.timestampExpired( now, null ) );
-    assertTrue( in.timestampExpired( now-80000L, null ) );
-  }
-
-  public void testDayly()
-  {
-    in = new RepositoryUpdateIntervalPolicy( RepositoryUpdateIntervalPolicy.UPDATE_POLICY_NAME_DAILY );
-
-    assertFalse( in.timestampExpired( now, null ) );
-    assertFalse( in.timestampExpired( now-80000L, null ) );
-    assertTrue( in.timestampExpired( now - 24L*3600L*1000L - 80000L, null ) );
-  }
+    RepositoryUpdateIntervalPolicy in;
+
+    long now;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        in = new RepositoryUpdateIntervalPolicy( RepositoryUpdateIntervalPolicy.UPDATE_POLICY_NAME_INTERVAL + "1" );
+        now = System.currentTimeMillis();
+    }
+
+    public void testInterval()
+    {
+        assertFalse( in.timestampExpired( now, null ) );
+        assertTrue( in.timestampExpired( now - 80000L, null ) );
+    }
+
+    public void testDayly()
+    {
+        in = new RepositoryUpdateIntervalPolicy( RepositoryUpdateIntervalPolicy.UPDATE_POLICY_NAME_DAILY );
+
+        assertFalse( in.timestampExpired( now, null ) );
+        assertFalse( in.timestampExpired( now - 80000L, null ) );
+        assertTrue( in.timestampExpired( now - 24L * 3600L * 1000L - 80000L, null ) );
+    }
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGATest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGATest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGATest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGATest.java Mon Apr 27 23:12:25 2009
@@ -29,57 +29,53 @@
 import org.apache.maven.mercury.util.FileUtil;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class CachedGATest
     extends TestCase
 {
-  
-  byte [] mdBytes;
-  
-  CachedGAMetadata gam;
-  
-  Metadata omd;
-
-  @Override
-  protected void setUp()
-  throws Exception
-  {
-    InputStream is = CachedGATest.class.getResourceAsStream( "/ga-metadata.xml" );
-    
-    mdBytes = FileUtil.readRawData( is );
-    
-    omd = MetadataBuilder.getMetadata( mdBytes );
-    
-    gam = new CachedGAMetadata( new RepositoryGAMetadata(omd) );
-  }
-  
-  public void testData()
-  throws Exception
-  {
-    assertEquals( omd.getGroupId(), gam.getGA().getGroupId() );
-    assertEquals( omd.getArtifactId(), gam.getGA().getArtifactId() );
-    
-    assertEquals( omd.getVersioning().getVersions().size(), gam.getVersions().size() );
-  }
-  
-  public void testRead()
-  throws Exception
-  {
-    File mf = File.createTempFile( "test-ga-", ".xml", new File("./target") );
-    gam.cm.save( mf );
-    
-    CachedGAMetadata gam2 = new CachedGAMetadata( mf );
-
-    assertEquals( omd.getGroupId(), gam2.getGA().getGroupId() );
-    assertEquals( omd.getArtifactId(), gam2.getGA().getArtifactId() );
-    
-    assertEquals( omd.getVersioning().getVersions().size(), gam2.getVersions().size() );
-  }
-  
-  
+
+    byte[] mdBytes;
+
+    CachedGAMetadata gam;
+
+    Metadata omd;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        InputStream is = CachedGATest.class.getResourceAsStream( "/ga-metadata.xml" );
+
+        mdBytes = FileUtil.readRawData( is );
+
+        omd = MetadataBuilder.getMetadata( mdBytes );
+
+        gam = new CachedGAMetadata( new RepositoryGAMetadata( omd ) );
+    }
+
+    public void testData()
+        throws Exception
+    {
+        assertEquals( omd.getGroupId(), gam.getGA().getGroupId() );
+        assertEquals( omd.getArtifactId(), gam.getGA().getArtifactId() );
+
+        assertEquals( omd.getVersioning().getVersions().size(), gam.getVersions().size() );
+    }
+
+    public void testRead()
+        throws Exception
+    {
+        File mf = File.createTempFile( "test-ga-", ".xml", new File( "./target" ) );
+        gam.cm.save( mf );
+
+        CachedGAMetadata gam2 = new CachedGAMetadata( mf );
+
+        assertEquals( omd.getGroupId(), gam2.getGA().getGroupId() );
+        assertEquals( omd.getArtifactId(), gam2.getGA().getArtifactId() );
+
+        assertEquals( omd.getVersioning().getVersions().size(), gam2.getVersions().size() );
+    }
+
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGAVTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGAVTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGAVTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/cache/fs/CachedGAVTest.java Mon Apr 27 23:12:25 2009
@@ -29,58 +29,55 @@
 import org.apache.maven.mercury.util.FileUtil;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class CachedGAVTest
     extends TestCase
 {
-  
-  byte [] mdBytes;
-  
-  CachedGAVMetadata gam;
-  
-  Metadata omd;
-
-  @Override
-  protected void setUp()
-  throws Exception
-  {
-    InputStream is = CachedGAVTest.class.getResourceAsStream( "/gav-metadata.xml" );
-    
-    mdBytes = FileUtil.readRawData( is );
-    
-    omd = MetadataBuilder.getMetadata( mdBytes );
-    
-    gam = new CachedGAVMetadata( new RepositoryGAVMetadata(omd) );
-  }
-  
-  public void testData()
-  throws Exception
-  {
-    assertEquals( omd.getGroupId(), gam.getGAV().getGroupId() );
-    assertEquals( omd.getArtifactId(), gam.getGAV().getArtifactId() );
-    assertEquals( omd.getVersion(), gam.getGAV().getVersion() );
-    
-    assertEquals( omd.getVersioning().getVersions().size(), gam.getSnapshots().size() );
-  }
-  
-  public void testRead()
-  throws Exception
-  {
-    File mf = File.createTempFile( "test-ga-", ".xml", new File("./target") );
-    gam.cm.save( mf );
-    
-    CachedGAVMetadata gam2 = new CachedGAVMetadata( mf );
-
-    assertEquals( omd.getGroupId(), gam2.getGAV().getGroupId() );
-    assertEquals( omd.getArtifactId(), gam2.getGAV().getArtifactId() );
-    assertEquals( omd.getVersion(), gam2.getGAV().getVersion() );
-    
-    assertEquals( omd.getVersioning().getVersions().size(), gam2.getSnapshots().size() );
-  }
-  
+
+    byte[] mdBytes;
+
+    CachedGAVMetadata gam;
+
+    Metadata omd;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        InputStream is = CachedGAVTest.class.getResourceAsStream( "/gav-metadata.xml" );
+
+        mdBytes = FileUtil.readRawData( is );
+
+        omd = MetadataBuilder.getMetadata( mdBytes );
+
+        gam = new CachedGAVMetadata( new RepositoryGAVMetadata( omd ) );
+    }
+
+    public void testData()
+        throws Exception
+    {
+        assertEquals( omd.getGroupId(), gam.getGAV().getGroupId() );
+        assertEquals( omd.getArtifactId(), gam.getGAV().getArtifactId() );
+        assertEquals( omd.getVersion(), gam.getGAV().getVersion() );
+
+        assertEquals( omd.getVersioning().getVersions().size(), gam.getSnapshots().size() );
+    }
+
+    public void testRead()
+        throws Exception
+    {
+        File mf = File.createTempFile( "test-ga-", ".xml", new File( "./target" ) );
+        gam.cm.save( mf );
+
+        CachedGAVMetadata gam2 = new CachedGAVMetadata( mf );
+
+        assertEquals( omd.getGroupId(), gam2.getGAV().getGroupId() );
+        assertEquals( omd.getArtifactId(), gam2.getGAV().getArtifactId() );
+        assertEquals( omd.getVersion(), gam2.getGAV().getVersion() );
+
+        assertEquals( omd.getVersioning().getVersions().size(), gam2.getSnapshots().size() );
+    }
+
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/flat/LocalRepositoryFlatTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/flat/LocalRepositoryFlatTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/flat/LocalRepositoryFlatTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/flat/LocalRepositoryFlatTest.java Mon Apr 27 23:12:25 2009
@@ -34,183 +34,181 @@
 import org.apache.maven.mercury.util.FileUtil;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class LocalRepositoryFlatTest
     extends TestCase
 {
-  private static final IMercuryLogger LOG = MercuryLoggerManager.getLogger( LocalRepositoryFlatTest.class ); 
+    private static final IMercuryLogger LOG = MercuryLoggerManager.getLogger( LocalRepositoryFlatTest.class );
 
-  File _dir;
-  LocalRepositoryFlat _repo;
-  
-  String repoUrl = "http://repo1.sonatype.org";
-//  String repoUrl = "http://repository.sonatype.org/content/groups/public";
-  
-  Artifact a;
-  Artifact b;
-
-  @Override
-  protected void setUp()
-      throws Exception
-  {
-    _dir = File.createTempFile( "test-flat-", "-repo" );
-    _dir.delete();
-    _dir.mkdirs();
-    
-    _repo = new LocalRepositoryFlat("testFlatRepo", _dir, false, false );
-    
-    byte [] pomBlob = "pomblob".getBytes();
-    
-    a = new DefaultArtifact( new ArtifactMetadata("a:a:1.0.0") );
-    
-    File ant = File.createTempFile( "test-flat", "-repo" );
-    ant.deleteOnExit();
-    InputStream in = LocalRepositoryFlatTest.class.getResourceAsStream( "/ant-1.6.5.jar" );
-    FileUtil.writeRawData( in, ant );
-    a.setFile( ant );
-    a.setPomBlob( pomBlob );
-    
-    b = new DefaultArtifact( new ArtifactMetadata("b:b:1.0.0") );
-    
-    File antlr = File.createTempFile( "test-flat", "-repo" );
-    antlr.deleteOnExit();
-    in = LocalRepositoryFlatTest.class.getResourceAsStream( "/antlr-2.7.7.jar" );
-    FileUtil.writeRawData( in, antlr );
-    b.setFile( antlr );
-    b.setPomBlob( pomBlob );
-  }
-
-  @Override
-  protected void tearDown()
-      throws Exception
-  {
-    FileUtil.delete( _dir );
-  }  
-
-  public void testWriteFlat()
-  throws Exception
-  {
-    String test = "testWriteFlat()";
-    
-    System.out.println(test+": test repo is in "+_repo.getDirectory());
-
-    List<Artifact> artifacts = new ArrayList<Artifact>();
-    artifacts.add( a );
-    artifacts.add( b );
-    
-    RepositoryWriter rw = _repo.getWriter();
-    rw.writeArtifacts( artifacts );
-    
-    File af = new File ( _dir, "a-1.0.0.jar" );
-    
-    assertTrue( af.exists() );
-    assertEquals( 1034049L, af.length() );
-    
-    File bf = new File ( _dir, "b-1.0.0.jar" );
-
-    assertTrue( bf.exists() );
-    assertEquals( 445288L, bf.length() );
-  }
-  
-  
-  public void testWriteFlatWithPom()
-  throws Exception
-  {
-    String test = "testWriteFlatWithPom()";
-    
-    _repo.setCreatePoms( true );
-    
-    System.out.println(test+": test repo is in "+_repo.getDirectory());
-
-    List<Artifact> artifacts = new ArrayList<Artifact>();
-    artifacts.add( a );
-    artifacts.add( b );
-    
-    RepositoryWriter rw = _repo.getWriter();
-    rw.writeArtifacts( artifacts );
-    
-    File af = new File ( _dir, "a-1.0.0.jar" );
-    
-    assertTrue( af.exists() );
-    assertEquals( 1034049L, af.length() );
-    
-    File ap = new File ( _dir, "a-1.0.0.pom" );
-    assertTrue( ap.exists() );
-    
-    File bf = new File ( _dir, "b-1.0.0.jar" );
-
-    assertTrue( bf.exists() );
-    assertEquals( 445288L, bf.length() );
-    
-    File bp = new File ( _dir, "b-1.0.0.pom" );
-    assertTrue( bp.exists() );
-  }
-  
-  public void testWriteFlatWithGroup()
-  throws Exception
-  {
-    String test = "testWriteFlatWithGroup()";
-    
-    _repo.setCreateGroupFolders( true );
-    
-    System.out.println(test+": test repo is in "+_repo.getDirectory());
-
-    List<Artifact> artifacts = new ArrayList<Artifact>();
-    artifacts.add( a );
-    artifacts.add( b );
-    
-    RepositoryWriter rw = _repo.getWriter();
-    rw.writeArtifacts( artifacts );
-    
-    File af = new File ( _dir, "a/a-1.0.0.jar" );
-    
-    assertTrue( af.exists() );
-    assertEquals( 1034049L, af.length() );
-    
-    File bf = new File ( _dir, "b/b-1.0.0.jar" );
-
-    assertTrue( bf.exists() );
-    assertEquals( 445288L, bf.length() );
-  }
-  
-  public void testWriteFlatWithGroupAndPom()
-  throws Exception
-  {
-    String test = "testWriteFlatWithGroupAndPom()";
-    
-    _repo.setCreateGroupFolders( true );
-    _repo.setCreatePoms( true );
-    
-    System.out.println(test+": test repo is in "+_repo.getDirectory());
-
-    List<Artifact> artifacts = new ArrayList<Artifact>();
-    artifacts.add( a );
-    artifacts.add( b );
-    
-    RepositoryWriter rw = _repo.getWriter();
-    rw.writeArtifacts( artifacts );
-    
-    File af = new File ( _dir, "a/a-1.0.0.jar" );
-    
-    assertTrue( af.exists() );
-    assertEquals( 1034049L, af.length() );
-    
-    File ap = new File ( _dir, "a/a-1.0.0.pom" );
-    assertTrue( ap.exists() );
-    
-    File bf = new File ( _dir, "b/b-1.0.0.jar" );
-
-    assertTrue( bf.exists() );
-    assertEquals( 445288L, bf.length() );
-    
-    File bp = new File ( _dir, "b/b-1.0.0.pom" );
-    assertTrue( bp.exists() );
-  }
-  
+    File _dir;
+
+    LocalRepositoryFlat _repo;
+
+    String repoUrl = "http://repo1.sonatype.org";
+
+    // String repoUrl = "http://repository.sonatype.org/content/groups/public";
+
+    Artifact a;
+
+    Artifact b;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        _dir = File.createTempFile( "test-flat-", "-repo" );
+        _dir.delete();
+        _dir.mkdirs();
+
+        _repo = new LocalRepositoryFlat( "testFlatRepo", _dir, false, false );
+
+        byte[] pomBlob = "pomblob".getBytes();
+
+        a = new DefaultArtifact( new ArtifactMetadata( "a:a:1.0.0" ) );
+
+        File ant = File.createTempFile( "test-flat", "-repo" );
+        ant.deleteOnExit();
+        InputStream in = LocalRepositoryFlatTest.class.getResourceAsStream( "/ant-1.6.5.jar" );
+        FileUtil.writeRawData( in, ant );
+        a.setFile( ant );
+        a.setPomBlob( pomBlob );
+
+        b = new DefaultArtifact( new ArtifactMetadata( "b:b:1.0.0" ) );
+
+        File antlr = File.createTempFile( "test-flat", "-repo" );
+        antlr.deleteOnExit();
+        in = LocalRepositoryFlatTest.class.getResourceAsStream( "/antlr-2.7.7.jar" );
+        FileUtil.writeRawData( in, antlr );
+        b.setFile( antlr );
+        b.setPomBlob( pomBlob );
+    }
+
+    @Override
+    protected void tearDown()
+        throws Exception
+    {
+        FileUtil.delete( _dir );
+    }
+
+    public void testWriteFlat()
+        throws Exception
+    {
+        String test = "testWriteFlat()";
+
+        System.out.println( test + ": test repo is in " + _repo.getDirectory() );
+
+        List<Artifact> artifacts = new ArrayList<Artifact>();
+        artifacts.add( a );
+        artifacts.add( b );
+
+        RepositoryWriter rw = _repo.getWriter();
+        rw.writeArtifacts( artifacts );
+
+        File af = new File( _dir, "a-1.0.0.jar" );
+
+        assertTrue( af.exists() );
+        assertEquals( 1034049L, af.length() );
+
+        File bf = new File( _dir, "b-1.0.0.jar" );
+
+        assertTrue( bf.exists() );
+        assertEquals( 445288L, bf.length() );
+    }
+
+    public void testWriteFlatWithPom()
+        throws Exception
+    {
+        String test = "testWriteFlatWithPom()";
+
+        _repo.setCreatePoms( true );
+
+        System.out.println( test + ": test repo is in " + _repo.getDirectory() );
+
+        List<Artifact> artifacts = new ArrayList<Artifact>();
+        artifacts.add( a );
+        artifacts.add( b );
+
+        RepositoryWriter rw = _repo.getWriter();
+        rw.writeArtifacts( artifacts );
+
+        File af = new File( _dir, "a-1.0.0.jar" );
+
+        assertTrue( af.exists() );
+        assertEquals( 1034049L, af.length() );
+
+        File ap = new File( _dir, "a-1.0.0.pom" );
+        assertTrue( ap.exists() );
+
+        File bf = new File( _dir, "b-1.0.0.jar" );
+
+        assertTrue( bf.exists() );
+        assertEquals( 445288L, bf.length() );
+
+        File bp = new File( _dir, "b-1.0.0.pom" );
+        assertTrue( bp.exists() );
+    }
+
+    public void testWriteFlatWithGroup()
+        throws Exception
+    {
+        String test = "testWriteFlatWithGroup()";
+
+        _repo.setCreateGroupFolders( true );
+
+        System.out.println( test + ": test repo is in " + _repo.getDirectory() );
+
+        List<Artifact> artifacts = new ArrayList<Artifact>();
+        artifacts.add( a );
+        artifacts.add( b );
+
+        RepositoryWriter rw = _repo.getWriter();
+        rw.writeArtifacts( artifacts );
+
+        File af = new File( _dir, "a/a-1.0.0.jar" );
+
+        assertTrue( af.exists() );
+        assertEquals( 1034049L, af.length() );
+
+        File bf = new File( _dir, "b/b-1.0.0.jar" );
+
+        assertTrue( bf.exists() );
+        assertEquals( 445288L, bf.length() );
+    }
+
+    public void testWriteFlatWithGroupAndPom()
+        throws Exception
+    {
+        String test = "testWriteFlatWithGroupAndPom()";
+
+        _repo.setCreateGroupFolders( true );
+        _repo.setCreatePoms( true );
+
+        System.out.println( test + ": test repo is in " + _repo.getDirectory() );
+
+        List<Artifact> artifacts = new ArrayList<Artifact>();
+        artifacts.add( a );
+        artifacts.add( b );
+
+        RepositoryWriter rw = _repo.getWriter();
+        rw.writeArtifacts( artifacts );
+
+        File af = new File( _dir, "a/a-1.0.0.jar" );
+
+        assertTrue( af.exists() );
+        assertEquals( 1034049L, af.length() );
+
+        File ap = new File( _dir, "a/a-1.0.0.pom" );
+        assertTrue( ap.exists() );
+
+        File bf = new File( _dir, "b/b-1.0.0.jar" );
+
+        assertTrue( bf.exists() );
+        assertEquals( 445288L, bf.length() );
+
+        File bp = new File( _dir, "b/b-1.0.0.pom" );
+        assertTrue( bp.exists() );
+    }
 
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/ArtifactLocationtest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/ArtifactLocationtest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/ArtifactLocationtest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/ArtifactLocationtest.java Mon Apr 27 23:12:25 2009
@@ -15,7 +15,7 @@
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
-*/
+ */
 
 package org.apache.maven.mercury.repository.local.m2;
 
@@ -24,11 +24,8 @@
 import org.apache.maven.mercury.artifact.ArtifactMetadata;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class ArtifactLocationtest
     extends TestCase
@@ -38,59 +35,53 @@
         throws Exception
     {
     }
-    
+
     public void testChopTS()
-    throws Exception
+        throws Exception
     {
-        ArtifactLocation loc = new ArtifactLocation( "test", new ArtifactMetadata("a:a:3.0-alpha-1-20080920.015600-7") );
-        
+        ArtifactLocation loc =
+            new ArtifactLocation( "test", new ArtifactMetadata( "a:a:3.0-alpha-1-20080920.015600-7" ) );
+
         String chop = loc.getVersionWithoutTS();
-        
+
         assertEquals( "3.0-alpha-1", chop );
 
-        
-        loc = new ArtifactLocation( "test", new ArtifactMetadata("a:a:3.0-20080920.015600-7") );
-        
+        loc = new ArtifactLocation( "test", new ArtifactMetadata( "a:a:3.0-20080920.015600-7" ) );
+
         chop = loc.getVersionWithoutTS();
-        
+
         assertEquals( "3.0", chop );
 
+        loc = new ArtifactLocation( "test", new ArtifactMetadata( "a:a:3.0-20080920.0156007" ) );
 
-        loc = new ArtifactLocation( "test", new ArtifactMetadata("a:a:3.0-20080920.0156007") );
-        
         chop = loc.getVersionWithoutTS();
-        
+
         assertEquals( "3.0-20080920.0156007", chop );
     }
-    
+
     public void testChopTSstatic()
-    throws Exception
+        throws Exception
     {
         String chop = ArtifactLocation.calculateVersionDir( "3.0-alpha-1-20080920.015600-7" );
-        
+
         assertEquals( "3.0-alpha-1-SNAPSHOT", chop );
 
-        
         chop = ArtifactLocation.calculateVersionDir( "3.0-20080920.015600-7" );
-        
+
         assertEquals( "3.0-SNAPSHOT", chop );
-        
 
         chop = ArtifactLocation.calculateVersionDir( "3.0-20080920.01560-7" );
-        
+
         assertEquals( "3.0-20080920.01560-7", chop );
 
-        
         chop = ArtifactLocation.calculateVersionDir( "3.0-20080920.015600" );
-        
+
         assertEquals( "3.0-20080920.015600", chop );
 
-        
         chop = ArtifactLocation.calculateVersionDir( "3.0" );
-        
+
         assertEquals( "3.0", chop );
 
     }
 
-
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryM2Test.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryM2Test.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryM2Test.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryM2Test.java Mon Apr 27 23:12:25 2009
@@ -29,101 +29,99 @@
 import org.apache.maven.mercury.repository.api.ArtifactResults;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class LocalRepositoryM2Test
     extends TestCase
 {
-  File dir;
-  LocalRepositoryM2 repo;
+    File dir;
 
-  /* (non-Javadoc)
-   * @see junit.framework.TestCase#setUp()
-   */
-  protected void setUp()
-      throws Exception
-  {
-    dir = new File("./target/test-classes/repoLocalM2");
-    
-    repo = new LocalRepositoryM2( "test", dir, new MetadataProcessorMock() );
-    
-  }
-  
-  
-  /**
-   * this does not fully test this use case, full test belongs to ITs. See http://jira.codehaus.org/browse/MERCURY-47
-   * 
-   * @throws Exception
-   */
-  public void testReadTwice()
-  throws Exception
-  {
-    String artifactId = "a:a:4";
-    
-    ArtifactMetadata bmd = new ArtifactMetadata(artifactId);
-    
-    ArrayList<ArtifactMetadata> q = new ArrayList<ArtifactMetadata>();
-    
-    q.add( bmd );
-    
-    ArtifactResults res = repo.getReader().readArtifacts( q );
-    
-    assertNotNull( res );
-    
-   assertFalse( res.hasExceptions() );
-   
-   assertTrue( res.hasResults() );
-   
-   List<Artifact> arts = res.getResults( bmd );
-   
-   assertNotNull( arts );
-   
-   assertEquals( 1, arts.size() );
-   
-   Artifact a = arts.get( 0 );
-   
-   assertNotNull( a );
-   
-   File f = a.getFile();
-   
-   assertNotNull( f );
-   
-   assertTrue( f.exists() );
-   
-   assertEquals( 14800, f.length() );
-   
-   // second time
-   
-   res = repo.getReader().readArtifacts( q );
-   
-   assertNotNull( res );
-   
-  assertFalse( res.hasExceptions() );
-  
-  assertTrue( res.hasResults() );
-  
-  arts = res.getResults( bmd );
-  
-  assertNotNull( arts );
-  
-  assertEquals( 1, arts.size() );
-  
-  a = arts.get( 0 );
-  
-  assertNotNull( a );
-  
-  f = a.getFile();
-  
-  assertNotNull( f );
-  
-  assertTrue( f.exists() );
-  
-  assertEquals( 14800, f.length() );
-  
-  }
+    LocalRepositoryM2 repo;
+
+    /*
+     * (non-Javadoc)
+     * @see junit.framework.TestCase#setUp()
+     */
+    protected void setUp()
+        throws Exception
+    {
+        dir = new File( "./target/test-classes/repoLocalM2" );
+
+        repo = new LocalRepositoryM2( "test", dir, new MetadataProcessorMock() );
+
+    }
+
+    /**
+     * this does not fully test this use case, full test belongs to ITs. See http://jira.codehaus.org/browse/MERCURY-47
+     * 
+     * @throws Exception
+     */
+    public void testReadTwice()
+        throws Exception
+    {
+        String artifactId = "a:a:4";
+
+        ArtifactMetadata bmd = new ArtifactMetadata( artifactId );
+
+        ArrayList<ArtifactMetadata> q = new ArrayList<ArtifactMetadata>();
+
+        q.add( bmd );
+
+        ArtifactResults res = repo.getReader().readArtifacts( q );
+
+        assertNotNull( res );
+
+        assertFalse( res.hasExceptions() );
+
+        assertTrue( res.hasResults() );
+
+        List<Artifact> arts = res.getResults( bmd );
+
+        assertNotNull( arts );
+
+        assertEquals( 1, arts.size() );
+
+        Artifact a = arts.get( 0 );
+
+        assertNotNull( a );
+
+        File f = a.getFile();
+
+        assertNotNull( f );
+
+        assertTrue( f.exists() );
+
+        assertEquals( 14800, f.length() );
+
+        // second time
+
+        res = repo.getReader().readArtifacts( q );
+
+        assertNotNull( res );
+
+        assertFalse( res.hasExceptions() );
+
+        assertTrue( res.hasResults() );
+
+        arts = res.getResults( bmd );
+
+        assertNotNull( arts );
+
+        assertEquals( 1, arts.size() );
+
+        a = arts.get( 0 );
+
+        assertNotNull( a );
+
+        f = a.getFile();
+
+        assertNotNull( f );
+
+        assertTrue( f.exists() );
+
+        assertEquals( 14800, f.length() );
+
+    }
 
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/MetadataProcessorMock.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/MetadataProcessorMock.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/MetadataProcessorMock.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/m2/MetadataProcessorMock.java Mon Apr 27 23:12:25 2009
@@ -32,79 +32,78 @@
 import org.xml.sax.SAXException;
 
 /**
- * 
  * a temporary thing to be replaced with real projectBuilder implementation
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class MetadataProcessorMock
-implements DependencyProcessor
+    implements DependencyProcessor
 {
 
-  public List<ArtifactMetadata> getDependencies( ArtifactMetadata bmd, MetadataReader mdReader, Map env, Map sysProps )
-  throws MetadataReaderException
-  {
-    List<ArtifactMetadata> deps = null;
-    
-    try
+    public List<ArtifactMetadata> getDependencies( ArtifactMetadata bmd, MetadataReader mdReader, Map env, Map sysProps )
+        throws MetadataReaderException
     {
-      byte [] pomBytes = mdReader.readMetadata( bmd, false );
-      if( pomBytes == null )
-      {
-        throw new MetadataReaderException("no metadata found for "+bmd);
-      }
-      deps = getDeps(  pomBytes );
-      
-      return deps;
+        List<ArtifactMetadata> deps = null;
+
+        try
+        {
+            byte[] pomBytes = mdReader.readMetadata( bmd, false );
+            if ( pomBytes == null )
+            {
+                throw new MetadataReaderException( "no metadata found for " + bmd );
+            }
+            deps = getDeps( pomBytes );
+
+            return deps;
+        }
+        catch ( Exception e )
+        {
+            throw new MetadataReaderException( e );
+        }
     }
-    catch( Exception e )
+
+    private static final List<ArtifactMetadata> getDeps( byte[] pom )
+        throws IOException, SAXException
     {
-      throw new MetadataReaderException( e );
+        if ( pom == null )
+            return null;
+
+        DependencyCreator dc = new DependencyCreator();
+        Digester digester = new Digester();
+        digester.push( dc );
+
+        digester.addCallMethod( "project/dependencies/dependency", "addMD", 6 );
+        digester.addCallParam( "project/dependencies/dependency/groupId", 0 );
+        digester.addCallParam( "project/dependencies/dependency/artifactId", 1 );
+        digester.addCallParam( "project/dependencies/dependency/version", 2 );
+        digester.addCallParam( "project/dependencies/dependency/type", 3 );
+        digester.addCallParam( "project/dependencies/dependency/scope", 4 );
+        digester.addCallParam( "project/dependencies/dependency/optional", 5 );
+
+        digester.parse( new ByteArrayInputStream( pom ) );
+
+        return dc.mds;
     }
-  }
-  
-  private static final List<ArtifactMetadata> getDeps( byte [] pom )
-  throws IOException, SAXException
-  {
-    if( pom == null )
-      return null;
-    
-    DependencyCreator dc = new DependencyCreator();
-    Digester digester = new Digester();
-    digester.push( dc );
-    
-    digester.addCallMethod("project/dependencies/dependency", "addMD", 6 );
-    digester.addCallParam("project/dependencies/dependency/groupId",0);
-    digester.addCallParam("project/dependencies/dependency/artifactId",1);
-    digester.addCallParam("project/dependencies/dependency/version",2);
-    digester.addCallParam("project/dependencies/dependency/type",3);
-    digester.addCallParam("project/dependencies/dependency/scope",4);
-    digester.addCallParam("project/dependencies/dependency/optional",5);
-    
-    digester.parse( new ByteArrayInputStream(pom) );
-    
-    return dc.mds;
-  }
 
 }
-//==============================================================================================
+
+// ==============================================================================================
 class DependencyCreator
 {
-  List<ArtifactMetadata> mds = new ArrayList<ArtifactMetadata>(8);
-  
-  public void addMD( String g, String a, String v, String t, String s, String o)
-  {
-    ArtifactMetadata md = new ArtifactMetadata();
-    md.setGroupId(g);
-    md.setArtifactId(a);
-    md.setVersion(v);
-    md.setType(t);
-    md.setScope(s);
-    md.setOptional(o);
+    List<ArtifactMetadata> mds = new ArrayList<ArtifactMetadata>( 8 );
 
-    mds.add(md);
-  }
+    public void addMD( String g, String a, String v, String t, String s, String o )
+    {
+        ArtifactMetadata md = new ArtifactMetadata();
+        md.setGroupId( g );
+        md.setArtifactId( a );
+        md.setVersion( v );
+        md.setType( t );
+        md.setScope( s );
+        md.setOptional( o );
+
+        mds.add( md );
+    }
 }
-//==============================================================================================
+// ==============================================================================================

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java Mon Apr 27 23:12:25 2009
@@ -45,33 +45,32 @@
     File _dir;
 
     LocalRepositoryMap _repo;
-    
+
     RepositoryReader _rr;
-    
+
     ArtifactMetadata bmd;
-    
+
     File _pom;
 
     @Override
     protected void setUp()
         throws Exception
     {
-        bmd = new ArtifactMetadata("t:t:1.0::pom");
-        
-        _pom = new File("./target/test-classes/t-1.0.pom");
+        bmd = new ArtifactMetadata( "t:t:1.0::pom" );
+
+        _pom = new File( "./target/test-classes/t-1.0.pom" );
 
         _dir = File.createTempFile( "temp-", "-mercury-default-storage" );
         _dir.delete();
         _storage = new DefaultStorage( _dir );
-        
+
         _storage.add( bmd.getGAV(), _pom );
-        
+
         DependencyProcessor dp = new MetadataProcessorMock();
-        
-        _repo = new LocalRepositoryMap("testMapRepo", dp, _storage );
-        
+
+        _repo = new LocalRepositoryMap( "testMapRepo", dp, _storage );
+
         _rr = _repo.getReader();
-        
     }
 
     @Override
@@ -84,30 +83,30 @@
     public void testReadMap()
         throws Exception
     {
-        Collection<ArtifactMetadata> query = new ArrayList<ArtifactMetadata>(1);
-        
+        Collection<ArtifactMetadata> query = new ArrayList<ArtifactMetadata>( 1 );
+
         query.add( bmd );
-        
-        MetadataResults res = _rr.readDependencies( query  );
-        
+
+        MetadataResults res = _rr.readDependencies( query );
+
         assertNotNull( res );
-        
+
         assertFalse( res.hasExceptions() );
-        
+
         assertTrue( res.hasResults() );
-        
-        Map<ArtifactMetadata, List<ArtifactMetadata>>  deps = res.getResults();
-        
+
+        Map<ArtifactMetadata, List<ArtifactMetadata>> deps = res.getResults();
+
         assertNotNull( deps );
-        
+
         assertEquals( 1, deps.size() );
-        
+
         List<ArtifactMetadata> myDeps = deps.get( bmd );
-        
+
         assertNotNull( myDeps );
-        
+
         assertEquals( 3, myDeps.size() );
-        
+
         System.out.println( res.getResults() );
     }
 

Added: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java?rev=769199&view=auto
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java (added)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java Mon Apr 27 23:12:25 2009
@@ -0,0 +1,105 @@
+/**
+ *  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.
+ */
+package org.apache.maven.mercury.repository.local.map;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import junit.framework.TestCase;
+
+import org.apache.maven.mercury.artifact.ArtifactMetadata;
+import org.apache.maven.mercury.builder.api.DependencyProcessor;
+import org.apache.maven.mercury.repository.api.MetadataResults;
+import org.apache.maven.mercury.repository.api.RepositoryReader;
+import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
+
+/**
+ * @author Oleg Gusakov
+ * @version $Id$
+ */
+public class LocalRepositoryReactorMapTest
+    extends TestCase
+{
+
+    Storage _storage;
+
+    File _dir;
+
+    LocalRepositoryMap _repo;
+
+    RepositoryReader _rr;
+
+    Map<String, String> _reactor;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        _reactor = new HashMap<String, String>( 2 );
+        _reactor.put( "a:a:1.0-SNAPSHOT", "a/target" );
+        _reactor.put( "a:b:1.0-SNAPSHOT", "b/target" );
+
+        _dir = new File( "./target/test-classes/repoReactor" );
+
+        _storage = new ReactorStorage( _dir, _reactor );
+
+        DependencyProcessor dp = new MetadataProcessorMock();
+
+        _repo = new LocalRepositoryMap( "testReactorRepo", dp, _storage );
+
+        _rr = _repo.getReader();
+    }
+
+    public void testReadMap()
+        throws Exception
+    {
+        ArtifactMetadata bmd = new ArtifactMetadata( "a:a:1.0-SNAPSHOT" );
+
+        Collection<ArtifactMetadata> query = new ArrayList<ArtifactMetadata>( 1 );
+
+        query.add( bmd );
+
+        MetadataResults res = _rr.readDependencies( query );
+
+        assertNotNull( res );
+
+        assertFalse( res.hasExceptions() );
+
+        assertTrue( res.hasResults() );
+
+        Map<ArtifactMetadata, List<ArtifactMetadata>> deps = res.getResults();
+
+        assertNotNull( deps );
+
+        assertEquals( 1, deps.size() );
+
+        List<ArtifactMetadata> myDeps = deps.get( bmd );
+
+        assertNotNull( myDeps );
+
+        assertEquals( 1, myDeps.size() );
+
+        System.out.println( res.getResults() );
+    }
+
+}

Propchange: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReactorMapTest.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/metadata/MetadataBuilderTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/metadata/MetadataBuilderTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/metadata/MetadataBuilderTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/metadata/MetadataBuilderTest.java Mon Apr 27 23:12:25 2009
@@ -35,100 +35,100 @@
 import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class MetadataBuilderTest
-extends TestCase
+    extends TestCase
 {
-  MetadataBuilder mb;
-  File testBase = new File("./target/test-classes/controlledRepoMd");
+    MetadataBuilder mb;
 
-  //-------------------------------------------------------------------------
-  @Override
-  protected void setUp()
-  throws Exception
-  {
-    File temp = new File( testBase, "group-maven-metadata-write.xml");
-    if( temp.exists() )
-      temp.delete();
-  }
-  //-------------------------------------------------------------------------
-  protected void tearDown()
-  throws Exception
-  {
-  }
-  
-	protected Metadata getMetadata(File file) 
-		throws Exception 
-	{
-		byte[] targetBytes = FileUtil.readRawData(file);
-
-		return MetadataBuilder.getMetadata(targetBytes);
-	}
-
-	protected Metadata applyOpsAndGetMetadata(Metadata metadata,
-			List<MetadataOperation> ops, File file) 
-		throws Exception 
-	{
-		byte[] resBytes = MetadataBuilder.changeMetadata(metadata, ops);
-
-		FileUtil.writeRawData(file, resBytes);
-
-		return MetadataBuilder.read(new FileInputStream(file));
-	}
-  
-  //-------------------------------------------------------------------------
-  public void testReadGroupMd()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-     Metadata mmd = MetadataBuilder.read(  new FileInputStream( groupMd ) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 4, versions.size() );
-  }
-  //-------------------------------------------------------------------------
-  public void testWriteGroupMd()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata-write.xml");
-    Metadata md = new Metadata();
-    md.setGroupId( "a" );
-    md.setArtifactId( "a" );
-    md.setVersion( "1.0.0" );
-    Versioning v = new Versioning();
-    v.addVersion( "1.0.0" );
-    v.addVersion( "2.0.0" );
-    md.setVersioning( v );
-    
-     MetadataBuilder.write(  md, new FileOutputStream( groupMd ) );
-     Metadata mmd = MetadataBuilder.read( new FileInputStream(groupMd) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("1.0.0", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 2, versions.size() );
-  }
-  //-------------------------------------------------------------------------
+    File testBase = new File( "./target/test-classes/controlledRepoMd" );
+
+    // -------------------------------------------------------------------------
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        File temp = new File( testBase, "group-maven-metadata-write.xml" );
+        if ( temp.exists() )
+            temp.delete();
+    }
+
+    // -------------------------------------------------------------------------
+    protected void tearDown()
+        throws Exception
+    {
+    }
+
+    protected Metadata getMetadata( File file )
+        throws Exception
+    {
+        byte[] targetBytes = FileUtil.readRawData( file );
+
+        return MetadataBuilder.getMetadata( targetBytes );
+    }
+
+    protected Metadata applyOpsAndGetMetadata( Metadata metadata, List<MetadataOperation> ops, File file )
+        throws Exception
+    {
+        byte[] resBytes = MetadataBuilder.changeMetadata( metadata, ops );
+
+        FileUtil.writeRawData( file, resBytes );
+
+        return MetadataBuilder.read( new FileInputStream( file ) );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testReadGroupMd()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( groupMd ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 4, versions.size() );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testWriteGroupMd()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata-write.xml" );
+        Metadata md = new Metadata();
+        md.setGroupId( "a" );
+        md.setArtifactId( "a" );
+        md.setVersion( "1.0.0" );
+        Versioning v = new Versioning();
+        v.addVersion( "1.0.0" );
+        v.addVersion( "2.0.0" );
+        md.setVersioning( v );
+
+        MetadataBuilder.write( md, new FileOutputStream( groupMd ) );
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( groupMd ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "1.0.0", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 2, versions.size() );
+    }
+
+    // -------------------------------------------------------------------------
     public void testAddPluginOperation()
         throws Exception
     {
@@ -174,324 +174,330 @@
 
         assertEquals( 0, mdAfterRemove.getPlugins().size() );
     }
-    
-  //-------------------------------------------------------------------------
-  public void testMergeOperation()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-    byte [] targetBytes = FileUtil.readRawData( groupMd );
-
-    Metadata source = new Metadata();
-    source.setGroupId( "a" );
-    source.setArtifactId( "a" );
-    source.setVersion( "1.0.0" );
-    Versioning v = new Versioning();
-    v.addVersion( "1.0.0" );
-    v.addVersion( "2.0.0" );
-    source.setVersioning( v );
-    
-    byte [] resBytes = MetadataBuilder.changeMetadata( targetBytes, new MergeOperation( new MetadataOperand(source) ) );
-    
-    File resFile = new File( testBase, "group-maven-metadata-write.xml");
-
-    FileUtil.writeRawData( resFile, resBytes );
-    
-     Metadata mmd = MetadataBuilder.read( new FileInputStream(resFile) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 6, versions.size() );
-     assertTrue( versions.contains("1") );
-     assertTrue( versions.contains("2") );
-     assertTrue( versions.contains("3") );
-     assertTrue( versions.contains("4") );
-     assertTrue( versions.contains("1.0.0") );
-     assertTrue( versions.contains("2.0.0") );
-  }
-  
-  public void testAddVersionOperationOrdered() throws Exception 
-  {
-    File mdFileBefore = new File(testBase, "group-maven-metadata.xml");
-    Metadata mdBefore = getMetadata( mdFileBefore );
-    
-    List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
-    ops.add(new AddVersionOperation( new StringOperand("1.3.0-SNAPSHOT") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.2.0-SNAPSHOT") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.2.0.5-SNAPSHOT") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.1") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.3-SNAPSHOT") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.1-M1") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.0-alpha-5") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.2.0") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.2.0-beta-1") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.0.1") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.0-beta-3") ));
-    ops.add(new AddVersionOperation( new StringOperand("4.1.0") ));
-    ops.add(new AddVersionOperation( new StringOperand("1.0.0-beta-6-SNAPSHOT") ));
-    ops.add(new AddVersionOperation( new StringOperand("5.0-SNAPSHOT") ));
-
-    List<String> orderedVersions = new ArrayList<String>();
-    orderedVersions.add( "1.0.0-alpha-5" );
-    orderedVersions.add( "1.0.0-beta-3" );
-    orderedVersions.add( "1.0.0-beta-6-SNAPSHOT" );
-    orderedVersions.add( "1" );
-    orderedVersions.add( "1.0.0.1" );
-    orderedVersions.add( "1.0.1" );
-    orderedVersions.add( "1.0.3-SNAPSHOT" );
-    orderedVersions.add( "1.1-M1" );
-    orderedVersions.add( "1.2.0-SNAPSHOT" );
-    orderedVersions.add( "1.2.0-beta-1" );
-    orderedVersions.add( "1.2.0" );
-    orderedVersions.add( "1.2.0.5-SNAPSHOT" );
-    orderedVersions.add( "1.3.0-SNAPSHOT" );
-    orderedVersions.add( "2" );
-    orderedVersions.add( "3" );
-    orderedVersions.add( "4" );
-    orderedVersions.add( "4.1.0" );
-    orderedVersions.add( "5.0-SNAPSHOT" );
-    
-    File mdFileAfter = new File( testBase, "group-maven-metadata-write.xml");
-    Metadata mdAfter = applyOpsAndGetMetadata( mdBefore, ops, mdFileAfter );
-    
-    Assert.assertEquals(orderedVersions, mdAfter.getVersioning().getVersions());
-    Assert.assertEquals("5.0-SNAPSHOT", mdAfter.getVersioning().getLatest());
-    Assert.assertEquals("4.1.0", mdAfter.getVersioning().getRelease());
-    
-  }
-  
-  //-------------------------------------------------------------------------
-  public void testAddVersionOperation()
-  throws Exception
-  {
-	 // prepare
-	 File groupMd = new File( testBase, "group-maven-metadata.xml");
-	    
-	 Metadata md = getMetadata(groupMd);
-	    
-	 List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
-	    
-	 ops.add(new AddVersionOperation( new StringOperand("5")));
-   
-     File resFile = new File( testBase, "group-maven-metadata-write.xml");
-    
-     // do
-     Metadata mmd = applyOpsAndGetMetadata( md, ops, resFile);
-
-     // assert
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 5, versions.size() );
-     assertTrue( versions.contains("1") );
-     assertTrue( versions.contains("2") );
-     assertTrue( versions.contains("3") );
-     assertTrue( versions.contains("4") );
-     assertTrue( versions.contains("5") );
-  }
-  //-------------------------------------------------------------------------
-  public void testAddVersionTwiceOperation()
-  throws Exception
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-    
-    Metadata checkMd = getMetadata(groupMd);
-
-    assertNotNull( checkMd );
-    assertEquals("a", checkMd.getGroupId() );
-    assertEquals("a", checkMd.getArtifactId() );
-    assertEquals("4", checkMd.getVersion() );
-
-    assertNotNull( checkMd.getVersioning() );
-    
-    List<String> checkVersions = checkMd.getVersioning().getVersions();
-   
-    assertNotNull( checkVersions );
-    assertEquals( 4, checkVersions.size() );
-    assertTrue( checkVersions.contains("1") );
-    assertTrue( checkVersions.contains("2") );
-    assertTrue( checkVersions.contains("3") );
-    assertTrue( checkVersions.contains("4") );
-    assertFalse( checkVersions.contains("5") );
-    
-    List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
-    ops.add( new AddVersionOperation( new StringOperand("5") ) );
-    ops.add( new AddVersionOperation( new StringOperand("5") ) );
-
-    
-    File resFile = new File( testBase, "group-maven-metadata-write.xml");
-
-     Metadata mmd = applyOpsAndGetMetadata(checkMd, ops, resFile);
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 5, versions.size() );
-     assertTrue( versions.contains("1") );
-     assertTrue( versions.contains("2") );
-     assertTrue( versions.contains("3") );
-     assertTrue( versions.contains("4") );
-     assertTrue( versions.contains("5") );
-  }
-  //-------------------------------------------------------------------------
-  public void testRemoveVersionOperation()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-    byte [] targetBytes = FileUtil.readRawData( groupMd );
-
-    byte [] resBytes = MetadataBuilder.changeMetadata( targetBytes, new RemoveVersionOperation( new StringOperand("1") ) );
-    
-    File resFile = new File( testBase, "group-maven-metadata-write.xml");
-
-    FileUtil.writeRawData( resFile, resBytes );
-    
-     Metadata mmd = MetadataBuilder.read( new FileInputStream(resFile) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 3, versions.size() );
-     assertTrue( !versions.contains("1") );
-     assertTrue( versions.contains("2") );
-     assertTrue( versions.contains("3") );
-     assertTrue( versions.contains("4") );
-  }
-  
-  public void testSetSnapshotVersionOperation()
-  throws Exception
-  {
-	  File mdFileBefore = new File(testBase, "group-maven-metadata.xml");
-	  Metadata mdBefore = getMetadata( mdFileBefore );
-	  
-	  mdBefore.setVersion("1.3.0-SNAPSHOT");
-	  
-	  List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
-	  ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.041603-374.pom" ) ) );
-	  ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.030701-373.pom" ) ) );
-	  ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.090218-375.pom" ) ) );
-	  ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.095716-376.pom" ) ) );
-	  
-	  File mdFileAfter = new File( testBase, "group-maven-metadata-write.xml");
-	  Metadata mdAfter = applyOpsAndGetMetadata( mdBefore, ops, mdFileAfter );
-	  
-	  Assert.assertEquals("20090210.095716", mdAfter.getVersioning().getSnapshot().getTimestamp());
-	  Assert.assertEquals(376, mdAfter.getVersioning().getSnapshot().getBuildNumber());
-  }
-  
-  
-  //-------------------------------------------------------------------------
-  public void testSetSnapshotOperation()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-    byte [] targetBytes = FileUtil.readRawData( groupMd );
-    
-    Snapshot sn = new Snapshot();
-    sn.setLocalCopy( false );
-    sn.setBuildNumber( 35 );
-    String ts = TimeUtil.getUTCTimestamp();
-    sn.setTimestamp( ts );
-
-    byte [] resBytes = MetadataBuilder.changeMetadata( targetBytes, new SetSnapshotOperation( new SnapshotOperand(sn) ) );
-    
-    File resFile = new File( testBase, "group-maven-metadata-write.xml");
-
-    FileUtil.writeRawData( resFile, resBytes );
-    
-     Metadata mmd = MetadataBuilder.read( new FileInputStream(resFile) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-     Snapshot snapshot = mmd.getVersioning().getSnapshot();
-     assertNotNull( snapshot );
-     assertEquals( ts, snapshot.getTimestamp() );
-     
-     // now let's drop sn
-     targetBytes = FileUtil.readRawData( resFile );
-     resBytes = MetadataBuilder.changeMetadata( targetBytes, new SetSnapshotOperation( new SnapshotOperand(null) ) );
-     
-     Metadata mmd2 = MetadataBuilder.read( new ByteArrayInputStream(resBytes) );
-
-     assertNotNull( mmd2 );
-     assertEquals("a", mmd2.getGroupId() );
-     assertEquals("a", mmd2.getArtifactId() );
-     assertEquals("4", mmd2.getVersion() );
-
-     assertNotNull( mmd2.getVersioning() );
-     
-     snapshot = mmd2.getVersioning().getSnapshot();
-     assertNull( snapshot );
-  }
-  //-------------------------------------------------------------------------
-  public void testMultipleOperations()
-  throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
-  {
-    File groupMd = new File( testBase, "group-maven-metadata.xml");
-    byte [] targetBytes = FileUtil.readRawData( groupMd );
-
-    ArrayList<MetadataOperation> ops = new ArrayList<MetadataOperation>(2);
-    ops.add( new RemoveVersionOperation( new StringOperand("1") ) );
-    ops.add( new AddVersionOperation( new StringOperand("8") ) );
-    
-    byte [] resBytes = MetadataBuilder.changeMetadata( targetBytes, ops  );
-    
-    File resFile = new File( testBase, "group-maven-metadata-write.xml");
-
-    FileUtil.writeRawData( resFile, resBytes );
-    
-     Metadata mmd = MetadataBuilder.read( new FileInputStream(resFile) );
-
-     assertNotNull( mmd );
-     assertEquals("a", mmd.getGroupId() );
-     assertEquals("a", mmd.getArtifactId() );
-     assertEquals("4", mmd.getVersion() );
-
-     assertNotNull( mmd.getVersioning() );
-    
-     List<String> versions = mmd.getVersioning().getVersions();
-    
-     assertNotNull( versions );
-     assertEquals( 4, versions.size() );
-     assertTrue( !versions.contains("1") );
-     assertTrue( versions.contains("2") );
-     assertTrue( versions.contains("3") );
-     assertTrue( versions.contains("4") );
-     assertTrue( versions.contains("8") );
-  }
-  //-------------------------------------------------------------------------
-  //-------------------------------------------------------------------------
+
+    // -------------------------------------------------------------------------
+    public void testMergeOperation()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+        byte[] targetBytes = FileUtil.readRawData( groupMd );
+
+        Metadata source = new Metadata();
+        source.setGroupId( "a" );
+        source.setArtifactId( "a" );
+        source.setVersion( "1.0.0" );
+        Versioning v = new Versioning();
+        v.addVersion( "1.0.0" );
+        v.addVersion( "2.0.0" );
+        source.setVersioning( v );
+
+        byte[] resBytes =
+            MetadataBuilder.changeMetadata( targetBytes, new MergeOperation( new MetadataOperand( source ) ) );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        FileUtil.writeRawData( resFile, resBytes );
+
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( resFile ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 6, versions.size() );
+        assertTrue( versions.contains( "1" ) );
+        assertTrue( versions.contains( "2" ) );
+        assertTrue( versions.contains( "3" ) );
+        assertTrue( versions.contains( "4" ) );
+        assertTrue( versions.contains( "1.0.0" ) );
+        assertTrue( versions.contains( "2.0.0" ) );
+    }
+
+    public void testAddVersionOperationOrdered()
+        throws Exception
+    {
+        File mdFileBefore = new File( testBase, "group-maven-metadata.xml" );
+        Metadata mdBefore = getMetadata( mdFileBefore );
+
+        List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
+        ops.add( new AddVersionOperation( new StringOperand( "1.3.0-SNAPSHOT" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.2.0-SNAPSHOT" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.2.0.5-SNAPSHOT" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.1" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.3-SNAPSHOT" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.1-M1" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.0-alpha-5" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.2.0" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.2.0-beta-1" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.0.1" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.0-beta-3" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "4.1.0" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "1.0.0-beta-6-SNAPSHOT" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "5.0-SNAPSHOT" ) ) );
+
+        List<String> orderedVersions = new ArrayList<String>();
+        orderedVersions.add( "1.0.0-alpha-5" );
+        orderedVersions.add( "1.0.0-beta-3" );
+        orderedVersions.add( "1.0.0-beta-6-SNAPSHOT" );
+        orderedVersions.add( "1" );
+        orderedVersions.add( "1.0.0.1" );
+        orderedVersions.add( "1.0.1" );
+        orderedVersions.add( "1.0.3-SNAPSHOT" );
+        orderedVersions.add( "1.1-M1" );
+        orderedVersions.add( "1.2.0-SNAPSHOT" );
+        orderedVersions.add( "1.2.0-beta-1" );
+        orderedVersions.add( "1.2.0" );
+        orderedVersions.add( "1.2.0.5-SNAPSHOT" );
+        orderedVersions.add( "1.3.0-SNAPSHOT" );
+        orderedVersions.add( "2" );
+        orderedVersions.add( "3" );
+        orderedVersions.add( "4" );
+        orderedVersions.add( "4.1.0" );
+        orderedVersions.add( "5.0-SNAPSHOT" );
+
+        File mdFileAfter = new File( testBase, "group-maven-metadata-write.xml" );
+        Metadata mdAfter = applyOpsAndGetMetadata( mdBefore, ops, mdFileAfter );
+
+        Assert.assertEquals( orderedVersions, mdAfter.getVersioning().getVersions() );
+        Assert.assertEquals( "5.0-SNAPSHOT", mdAfter.getVersioning().getLatest() );
+        Assert.assertEquals( "4.1.0", mdAfter.getVersioning().getRelease() );
+
+    }
+
+    // -------------------------------------------------------------------------
+    public void testAddVersionOperation()
+        throws Exception
+    {
+        // prepare
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+
+        Metadata md = getMetadata( groupMd );
+
+        List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
+
+        ops.add( new AddVersionOperation( new StringOperand( "5" ) ) );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        // do
+        Metadata mmd = applyOpsAndGetMetadata( md, ops, resFile );
+
+        // assert
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 5, versions.size() );
+        assertTrue( versions.contains( "1" ) );
+        assertTrue( versions.contains( "2" ) );
+        assertTrue( versions.contains( "3" ) );
+        assertTrue( versions.contains( "4" ) );
+        assertTrue( versions.contains( "5" ) );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testAddVersionTwiceOperation()
+        throws Exception
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+
+        Metadata checkMd = getMetadata( groupMd );
+
+        assertNotNull( checkMd );
+        assertEquals( "a", checkMd.getGroupId() );
+        assertEquals( "a", checkMd.getArtifactId() );
+        assertEquals( "4", checkMd.getVersion() );
+
+        assertNotNull( checkMd.getVersioning() );
+
+        List<String> checkVersions = checkMd.getVersioning().getVersions();
+
+        assertNotNull( checkVersions );
+        assertEquals( 4, checkVersions.size() );
+        assertTrue( checkVersions.contains( "1" ) );
+        assertTrue( checkVersions.contains( "2" ) );
+        assertTrue( checkVersions.contains( "3" ) );
+        assertTrue( checkVersions.contains( "4" ) );
+        assertFalse( checkVersions.contains( "5" ) );
+
+        List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
+        ops.add( new AddVersionOperation( new StringOperand( "5" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "5" ) ) );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        Metadata mmd = applyOpsAndGetMetadata( checkMd, ops, resFile );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 5, versions.size() );
+        assertTrue( versions.contains( "1" ) );
+        assertTrue( versions.contains( "2" ) );
+        assertTrue( versions.contains( "3" ) );
+        assertTrue( versions.contains( "4" ) );
+        assertTrue( versions.contains( "5" ) );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testRemoveVersionOperation()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+        byte[] targetBytes = FileUtil.readRawData( groupMd );
+
+        byte[] resBytes =
+            MetadataBuilder.changeMetadata( targetBytes, new RemoveVersionOperation( new StringOperand( "1" ) ) );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        FileUtil.writeRawData( resFile, resBytes );
+
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( resFile ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 3, versions.size() );
+        assertTrue( !versions.contains( "1" ) );
+        assertTrue( versions.contains( "2" ) );
+        assertTrue( versions.contains( "3" ) );
+        assertTrue( versions.contains( "4" ) );
+    }
+
+    public void testSetSnapshotVersionOperation()
+        throws Exception
+    {
+        File mdFileBefore = new File( testBase, "group-maven-metadata.xml" );
+        Metadata mdBefore = getMetadata( mdFileBefore );
+
+        mdBefore.setVersion( "1.3.0-SNAPSHOT" );
+
+        List<MetadataOperation> ops = new ArrayList<MetadataOperation>();
+        ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.041603-374.pom" ) ) );
+        ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.030701-373.pom" ) ) );
+        ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.090218-375.pom" ) ) );
+        ops.add( new SetSnapshotOperation( new StringOperand( "a-1.3.0-20090210.095716-376.pom" ) ) );
+
+        File mdFileAfter = new File( testBase, "group-maven-metadata-write.xml" );
+        Metadata mdAfter = applyOpsAndGetMetadata( mdBefore, ops, mdFileAfter );
+
+        Assert.assertEquals( "20090210.095716", mdAfter.getVersioning().getSnapshot().getTimestamp() );
+        Assert.assertEquals( 376, mdAfter.getVersioning().getSnapshot().getBuildNumber() );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testSetSnapshotOperation()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+        byte[] targetBytes = FileUtil.readRawData( groupMd );
+
+        Snapshot sn = new Snapshot();
+        sn.setLocalCopy( false );
+        sn.setBuildNumber( 35 );
+        String ts = TimeUtil.getUTCTimestamp();
+        sn.setTimestamp( ts );
+
+        byte[] resBytes =
+            MetadataBuilder.changeMetadata( targetBytes, new SetSnapshotOperation( new SnapshotOperand( sn ) ) );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        FileUtil.writeRawData( resFile, resBytes );
+
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( resFile ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+        Snapshot snapshot = mmd.getVersioning().getSnapshot();
+        assertNotNull( snapshot );
+        assertEquals( ts, snapshot.getTimestamp() );
+
+        // now let's drop sn
+        targetBytes = FileUtil.readRawData( resFile );
+        resBytes =
+            MetadataBuilder.changeMetadata( targetBytes, new SetSnapshotOperation( new SnapshotOperand( null ) ) );
+
+        Metadata mmd2 = MetadataBuilder.read( new ByteArrayInputStream( resBytes ) );
+
+        assertNotNull( mmd2 );
+        assertEquals( "a", mmd2.getGroupId() );
+        assertEquals( "a", mmd2.getArtifactId() );
+        assertEquals( "4", mmd2.getVersion() );
+
+        assertNotNull( mmd2.getVersioning() );
+
+        snapshot = mmd2.getVersioning().getSnapshot();
+        assertNull( snapshot );
+    }
+
+    // -------------------------------------------------------------------------
+    public void testMultipleOperations()
+        throws FileNotFoundException, IOException, XmlPullParserException, MetadataException
+    {
+        File groupMd = new File( testBase, "group-maven-metadata.xml" );
+        byte[] targetBytes = FileUtil.readRawData( groupMd );
+
+        ArrayList<MetadataOperation> ops = new ArrayList<MetadataOperation>( 2 );
+        ops.add( new RemoveVersionOperation( new StringOperand( "1" ) ) );
+        ops.add( new AddVersionOperation( new StringOperand( "8" ) ) );
+
+        byte[] resBytes = MetadataBuilder.changeMetadata( targetBytes, ops );
+
+        File resFile = new File( testBase, "group-maven-metadata-write.xml" );
+
+        FileUtil.writeRawData( resFile, resBytes );
+
+        Metadata mmd = MetadataBuilder.read( new FileInputStream( resFile ) );
+
+        assertNotNull( mmd );
+        assertEquals( "a", mmd.getGroupId() );
+        assertEquals( "a", mmd.getArtifactId() );
+        assertEquals( "4", mmd.getVersion() );
+
+        assertNotNull( mmd.getVersioning() );
+
+        List<String> versions = mmd.getVersioning().getVersions();
+
+        assertNotNull( versions );
+        assertEquals( 4, versions.size() );
+        assertTrue( !versions.contains( "1" ) );
+        assertTrue( versions.contains( "2" ) );
+        assertTrue( versions.contains( "3" ) );
+        assertTrue( versions.contains( "4" ) );
+        assertTrue( versions.contains( "8" ) );
+    }
+    // -------------------------------------------------------------------------
+    // -------------------------------------------------------------------------
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryUtilM2Test.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryUtilM2Test.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryUtilM2Test.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryUtilM2Test.java Mon Apr 27 23:12:25 2009
@@ -23,26 +23,23 @@
 import junit.framework.TestCase;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class RemoteRepositoryUtilM2Test
     extends TestCase
 {
-  public void testFlipFolder()
-  {
-    File repo = new File("./target/test-classes/localTestRepoRemoteM2");
-    
-    RepositoryUtilM2.flipLocalFolderToRemoteRepository( repo );
-    
-    File ga = new File( repo, "org/apache/maven/mercury/mercury-pom/maven-metadata.xml");
-    
-    assertTrue( ga.exists() );
-    
-    File gav = new File( repo, "org/apache/maven/mercury/mercury-pom/1.0.0-alpha-2-SNAPSHOT/maven-metadata.xml");
-    
-  }
+    public void testFlipFolder()
+    {
+        File repo = new File( "./target/test-classes/localTestRepoRemoteM2" );
+
+        RepositoryUtilM2.flipLocalFolderToRemoteRepository( repo );
+
+        File ga = new File( repo, "org/apache/maven/mercury/mercury-pom/maven-metadata.xml" );
+
+        assertTrue( ga.exists() );
+
+        File gav = new File( repo, "org/apache/maven/mercury/mercury-pom/1.0.0-alpha-2-SNAPSHOT/maven-metadata.xml" );
+
+    }
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/virtual/VirtualRepositoryReaderTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/virtual/VirtualRepositoryReaderTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/virtual/VirtualRepositoryReaderTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/repository/virtual/VirtualRepositoryReaderTest.java Mon Apr 27 23:12:25 2009
@@ -33,9 +33,9 @@
 import org.apache.maven.mercury.event.MercuryEvent;
 import org.apache.maven.mercury.event.MercuryEventListener;
 import org.apache.maven.mercury.event.MercuryEvent.EventMask;
-import org.apache.maven.mercury.repository.api.MetadataResults;
 import org.apache.maven.mercury.repository.api.ArtifactResults;
 import org.apache.maven.mercury.repository.api.LocalRepository;
+import org.apache.maven.mercury.repository.api.MetadataResults;
 import org.apache.maven.mercury.repository.api.RemoteRepository;
 import org.apache.maven.mercury.repository.api.Repository;
 import org.apache.maven.mercury.repository.local.m2.LocalRepositoryM2;
@@ -67,7 +67,7 @@
     String _artifactCoordLatest = "org.apache.maven.mercury:mercury-repo-virtual:1.0.0-alpha-2-LATEST";
 
     String _artifactCoordRelease = "ant:ant:1.6.5";
-    
+
     String LOCAL_REPO_ID = "localRepo";
 
     String _localRepoId;
@@ -110,7 +110,7 @@
         }
 
         _localRepo = new LocalRepositoryM2( LOCAL_REPO_ID, _testBase, new MetadataProcessorMock() );
-        
+
         _localRepoId = _localRepo.getId();
 
         _jetty = new HttpTestServer( _remoteRepoBase, "/repo" );
@@ -119,7 +119,7 @@
         Server server = new Server( REMOTE_REPO_ID, new URL( "http://localhost:" + _port + "/repo" ) );
 
         _remoteRepo = new RemoteRepositoryM2( server, new MetadataProcessorMock() );
-        
+
         _remoteRepoId = _remoteRepo.getId();
 
         if ( Util.isWindows() )
@@ -132,8 +132,7 @@
         rl.add( _remoteRepo );
 
         _vr = new VirtualRepositoryReader( rl );
-        
-        
+
     }
 
     @Override
@@ -266,8 +265,8 @@
                 ++remoteEventCount;
             }
 
- System.out.println(EventManager.toString( event ));
- System.out.flush();
+            System.out.println( EventManager.toString( event ) );
+            System.out.flush();
         }
 
         public EventMask getMask()

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyDeployerTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyDeployerTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyDeployerTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyDeployerTest.java Mon Apr 27 23:12:25 2009
@@ -26,35 +26,43 @@
 import org.apache.maven.mercury.spi.http.server.AuthenticatingPutServer;
 import org.apache.maven.mercury.transport.api.Credentials;
 
-public class AuthenticatingJettyDeployerTest extends JettyDeployerTest
+public class AuthenticatingJettyDeployerTest
+    extends JettyDeployerTest
 {
 
-    public AuthenticatingJettyDeployerTest () throws Exception
+    public AuthenticatingJettyDeployerTest()
+        throws Exception
     {
         super();
     }
 
-    protected void setUp() throws Exception
-    {        
+    protected void setUp()
+        throws Exception
+    {
         setUpFiles();
         _deployer = new DefaultDeployer();
         _putServer = new AuthenticatingPutServer();
         _putServer.start();
-        _port = String.valueOf(_putServer.getPort());
+        _port = String.valueOf( _putServer.getPort() );
         setUpServerType();
     }
 
-    protected void tearDown() throws Exception
+    protected void tearDown()
+        throws Exception
     {
         super.tearDown();
     }
-    
-    protected void setUpServerType () throws Exception
+
+    protected void setUpServerType()
+        throws Exception
     {
-        HashSet<org.apache.maven.mercury.transport.api.Server> remoteServerTypes = new HashSet<org.apache.maven.mercury.transport.api.Server>();
-        remoteServerType = new org.apache.maven.mercury.transport.api.Server( "test", new URL(_HOST_FRAGMENT+_port), false, false, new Credentials("foo", "bar"));
-        factories = new HashSet<StreamVerifierFactory>();       
-        remoteServerTypes.add(remoteServerType);
-        _deployer.setServers(remoteServerTypes);
+        HashSet<org.apache.maven.mercury.transport.api.Server> remoteServerTypes =
+            new HashSet<org.apache.maven.mercury.transport.api.Server>();
+        remoteServerType =
+            new org.apache.maven.mercury.transport.api.Server( "test", new URL( _HOST_FRAGMENT + _port ), false, false,
+                                                               new Credentials( "foo", "bar" ) );
+        factories = new HashSet<StreamVerifierFactory>();
+        remoteServerTypes.add( remoteServerType );
+        _deployer.setServers( remoteServerTypes );
     }
 }

Modified: maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyRetrieverTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyRetrieverTest.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyRetrieverTest.java (original)
+++ maven/mercury/trunk/mercury-core/src/test/java/org/apache/maven/mercury/spi/http/client/AuthenticatingJettyRetrieverTest.java Mon Apr 27 23:12:25 2009
@@ -27,28 +27,31 @@
 import org.apache.maven.mercury.transport.api.Credentials;
 import org.apache.maven.mercury.transport.api.Server;
 
-public class AuthenticatingJettyRetrieverTest extends JettyRetrieverTest
-{    
-    public void setUp ()
-    throws Exception
+public class AuthenticatingJettyRetrieverTest
+    extends JettyRetrieverTest
+{
+    public void setUp()
+        throws Exception
     {
         server = new AuthenticatingTestServer();
         server.start();
-        _port=String.valueOf(server.getPort()); 
+        _port = String.valueOf( server.getPort() );
 
         HashSet<Server> remoteServerTypes = new HashSet<Server>();
-        remoteServerType = new Server( "test", new URL(__HOST_FRAGMENT+_port), false, false, 
-                                       new Credentials(((AuthenticatingTestServer)server).getUsername(), ((AuthenticatingTestServer)server).getPassword()));        
+        remoteServerType =
+            new Server( "test", new URL( __HOST_FRAGMENT + _port ), false, false,
+                        new Credentials( ( (AuthenticatingTestServer) server ).getUsername(),
+                                         ( (AuthenticatingTestServer) server ).getPassword() ) );
         factories = new HashSet<StreamVerifierFactory>();
 
-        remoteServerTypes.add(remoteServerType);
+        remoteServerTypes.add( remoteServerType );
 
         retriever = new DefaultRetriever();
-        retriever.setServers(remoteServerTypes);
+        retriever.setServers( remoteServerTypes );
     }
 
-
-    protected void tearDown() throws Exception
+    protected void tearDown()
+        throws Exception
     {
         super.tearDown();
     }