]> source.dussan.org Git - archiva.git/blob
0a5ded3915721f6a14a00fbbd07b845a960ceeaa
[archiva.git] /
1 package org.apache.maven.repository.indexing;
2
3 /*
4  * Copyright 2001-2005 The Apache Software Foundation.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  */
19
20 import java.io.File;
21 import org.apache.maven.artifact.Artifact;
22 import org.apache.maven.artifact.factory.ArtifactFactory;
23 import org.apache.maven.artifact.repository.ArtifactRepository;
24
25 import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
26 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
27
28 import org.codehaus.plexus.PlexusTestCase;
29
30 /**
31  *
32  * @author Edwin Punzalan
33  */
34 public class ArtifactRepositoryIndexingTest
35     extends PlexusTestCase
36 {
37     protected ArtifactRepositoryIndexer indexer;
38     protected ArtifactFactory artifactFactory;
39     protected ArtifactRepository repository;
40     protected String indexPath;
41
42     protected void setUp()
43         throws Exception
44     {
45         super.setUp();
46
47         File repositoryDirectory = getTestFile( "src/test/repository" );
48         String repoDir = repositoryDirectory.toURL().toString();
49
50         ArtifactRepositoryLayout layout = (ArtifactRepositoryLayout) lookup( ArtifactRepositoryLayout.ROLE, "default" );
51         ArtifactRepositoryFactory repoFactory = (ArtifactRepositoryFactory) lookup( ArtifactRepositoryFactory.ROLE );
52         RepositoryIndexerFactory factory = (RepositoryIndexerFactory) lookup( RepositoryIndexerFactory.ROLE );
53
54         String indexPath = "target/index";
55         repository = repoFactory.createArtifactRepository( "test", repoDir, layout, null, null );
56         indexer = (ArtifactRepositoryIndexer) factory.getArtifactRepositoryIndexer( indexPath, repository );
57         artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
58     }
59
60     public void testIndex()
61         throws Exception
62     {
63         Artifact artifact = getArtifact( "test", "test-artifactId", "1.0" );
64         artifact.setFile( new File( repository.getBasedir(), repository.pathOf( artifact ) ) );
65         indexer.addArtifactIndex( artifact );
66         //indexer.optimize();
67         indexer.close();
68     }
69
70     protected Artifact getArtifact( String groupId, String artifactId, String version )
71     {
72         return artifactFactory.createBuildArtifact( groupId, artifactId, version, "jar" );
73     }
74 }