You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/10/01 09:01:09 UTC
svn commit: r1177934 - in /maven/sandbox/trunk/central-indexer-test: ./ src/
src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/
src/main/java/org/apache/maven/ src/main/java/org/apache/maven/indexer/
src/main/java/org/apache/maven/in...
Author: olamy
Date: Sat Oct 1 07:01:08 2011
New Revision: 1177934
URL: http://svn.apache.org/viewvc?rev=1177934&view=rev
Log:
add some tests for https://issues.sonatype.org/browse/MVNCENTRAL-122
Added:
maven/sandbox/trunk/central-indexer-test/pom.xml (with props)
maven/sandbox/trunk/central-indexer-test/src/
maven/sandbox/trunk/central-indexer-test/src/main/
maven/sandbox/trunk/central-indexer-test/src/main/java/
maven/sandbox/trunk/central-indexer-test/src/main/java/org/
maven/sandbox/trunk/central-indexer-test/src/main/java/org/apache/
maven/sandbox/trunk/central-indexer-test/src/main/java/org/apache/maven/
maven/sandbox/trunk/central-indexer-test/src/main/java/org/apache/maven/indexer/
maven/sandbox/trunk/central-indexer-test/src/main/java/org/apache/maven/indexer/test/
maven/sandbox/trunk/central-indexer-test/src/test/
maven/sandbox/trunk/central-indexer-test/src/test/foo/
maven/sandbox/trunk/central-indexer-test/src/test/java/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/
maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java (with props)
Modified:
maven/sandbox/trunk/central-indexer-test/ (props changed)
Propchange: maven/sandbox/trunk/central-indexer-test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sat Oct 1 07:01:08 2011
@@ -0,0 +1,2 @@
+*.iml
+target
Added: maven/sandbox/trunk/central-indexer-test/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/central-indexer-test/pom.xml?rev=1177934&view=auto
==============================================================================
--- maven/sandbox/trunk/central-indexer-test/pom.xml (added)
+++ maven/sandbox/trunk/central-indexer-test/pom.xml Sat Oct 1 07:01:08 2011
@@ -0,0 +1,34 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.indexer.test</groupId>
+ <artifactId>central-indexer-test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>central-indexer-test</name>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.indexer</groupId>
+ <artifactId>indexer-core</artifactId>
+ <version>4.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-http</artifactId>
+ <version>2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.9</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+</project>
Propchange: maven/sandbox/trunk/central-indexer-test/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/sandbox/trunk/central-indexer-test/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java?rev=1177934&view=auto
==============================================================================
--- maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java (added)
+++ maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java Sat Oct 1 07:01:08 2011
@@ -0,0 +1,179 @@
+package org.apache.maven.indexer.test;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.lucene.search.BooleanClause;
+import org.apache.lucene.search.BooleanQuery;
+import org.apache.maven.index.FlatSearchRequest;
+import org.apache.maven.index.FlatSearchResponse;
+import org.apache.maven.index.MAVEN;
+import org.apache.maven.index.NexusIndexer;
+import org.apache.maven.index.OSGI;
+import org.apache.maven.index.context.IndexCreator;
+import org.apache.maven.index.context.IndexingContext;
+import org.apache.maven.index.expr.StringSearchExpression;
+import org.apache.maven.index.updater.IndexUpdateRequest;
+import org.apache.maven.index.updater.IndexUpdater;
+import org.apache.maven.index.updater.ResourceFetcher;
+import org.apache.maven.wagon.ResourceDoesNotExistException;
+import org.apache.maven.wagon.TransferFailedException;
+import org.apache.maven.wagon.Wagon;
+import org.apache.maven.wagon.authorization.AuthorizationException;
+import org.apache.maven.wagon.repository.Repository;
+import org.codehaus.plexus.PlexusTestCase;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Unit test for simple App.
+ */
+public class OsgiTest
+ extends PlexusTestCase
+{
+
+ IndexingContext context;
+
+ public void setUp( )
+ throws Exception
+ {
+ super.setUp( );
+ NexusIndexer nexusIndexer = lookup( NexusIndexer.class );
+ final File tempIndexDirectory = new File( getBasedir( ), "target/.tmpIndex" );
+ File repo = new File( getBasedir( ), "target/src/test/foo" );
+ repo.mkdirs( );
+ assertTrue( repo.exists( ) );
+ File indexDirectory =
+ new File( getBasedir( ), "target/index/test-" + Long.toString( System.currentTimeMillis( ) ) );
+ indexDirectory.deleteOnExit( );
+
+ List<IndexCreator> indexCreators =
+ new ArrayList<IndexCreator>( getContainer( ).lookupList( IndexCreator.class ) );
+
+ System.out.println( "indexCreators: " + indexCreators );
+
+ FileUtils.deleteDirectory( indexDirectory );
+ context =
+ nexusIndexer.addIndexingContext( "id", "id", repo, indexDirectory, repo.toURI( ).toURL( ).toExternalForm( ),
+ indexDirectory.toURI( ).toURL( ).toString( ), indexCreators );
+
+ final Wagon httpWagon = lookup( Wagon.class, "http" );
+
+ httpWagon.connect( new Repository( "central", "http://repo1.maven.org/maven2/.index" ) );
+
+ ResourceFetcher resourceFetcher = new ResourceFetcher( )
+ {
+ public void connect( String id, String url )
+ throws IOException
+ {
+ //no op
+ }
+
+ public void disconnect( )
+ throws IOException
+ {
+ // no op
+ }
+
+ public InputStream retrieve( String name )
+ throws IOException, FileNotFoundException
+ {
+ try
+ {
+ System.out.println( "index update retrieve file, name: " + name );
+ File file = new File( tempIndexDirectory, name );
+ if ( file.exists( ) )
+ {
+ file.delete( );
+ }
+ file.deleteOnExit( );
+ httpWagon.get( name, file );
+ return new FileInputStream( file );
+ }
+ catch ( AuthorizationException e )
+ {
+ throw new IOException( e.getMessage( ) );
+ }
+ catch ( TransferFailedException e )
+ {
+ throw new IOException( e.getMessage( ) );
+ }
+ catch ( ResourceDoesNotExistException e )
+ {
+ throw new FileNotFoundException( e.getMessage( ) );
+ }
+ }
+ };
+
+ IndexUpdateRequest request = new IndexUpdateRequest( context, resourceFetcher );
+ File indexCacheDir = new File( getBasedir( ), "target/indexCacheDir" );
+ indexCacheDir.mkdirs( );
+ request.setLocalIndexCacheDir( indexCacheDir );
+ request.setForceFullUpdate( false );
+
+ IndexUpdater indexUpdater = lookup( IndexUpdater.class );
+
+ indexUpdater.fetchAndUpdateIndex( request );
+ }
+
+ public void testSearchArtifactId( )
+ throws Exception
+ {
+
+ NexusIndexer indexer = lookup( NexusIndexer.class );
+ BooleanQuery q = new BooleanQuery( );
+ q.add( indexer.constructQuery( MAVEN.ARTIFACT_ID, new StringSearchExpression( "commons-lang" ) ),
+ BooleanClause.Occur.MUST );
+
+ FlatSearchRequest searchRequest = new FlatSearchRequest( q );
+ searchRequest.setContexts( Arrays.asList( context ) );
+ FlatSearchResponse response = indexer.searchFlat( searchRequest );
+ System.out.println(
+ "artifactId commons-lang response getReturnedHitsCount : " + response.getReturnedHitsCount( ) );
+ assertTrue( response.getReturnedHitsCount( ) > 0 );
+
+
+ }
+
+ // org/apache/karaf/features/org.apache.karaf.features.command/2.2.2/org.apache.karaf.features.command-2.2.2.jar
+ public void testSearchWithSymbolicName( )
+ throws Exception
+ {
+
+ NexusIndexer indexer = lookup( NexusIndexer.class );
+ BooleanQuery q = new BooleanQuery( );
+ q.add( indexer.constructQuery( OSGI.SYMBOLIC_NAME,
+ new StringSearchExpression( "org.apache.karaf.features.command" ) ),
+ BooleanClause.Occur.MUST );
+
+ FlatSearchRequest searchRequest = new FlatSearchRequest( q );
+ searchRequest.setContexts( Arrays.asList( context ) );
+ FlatSearchResponse response = indexer.searchFlat( searchRequest );
+ System.out.println( "symbolic name org.apache.karaf.features.command response getReturnedHitsCount : "
+ + response.getReturnedHitsCount( ) );
+ assertTrue( response.getReturnedHitsCount( ) > 0 );
+ }
+
+ public void testSearchWithExportService( )
+ throws Exception
+ {
+
+ NexusIndexer indexer = lookup( NexusIndexer.class );
+ BooleanQuery q = new BooleanQuery( );
+ q.add( indexer.constructQuery( OSGI.EXPORT_SERVICE, new StringSearchExpression(
+ "org.apache.felix.bundlerepository.RepositoryAdmin" ) ), BooleanClause.Occur.MUST );
+
+ FlatSearchRequest searchRequest = new FlatSearchRequest( q );
+ searchRequest.setContexts( Arrays.asList( context ) );
+ FlatSearchResponse response = indexer.searchFlat( searchRequest );
+ System.out.println(
+ "export service org.apache.felix.bundlerepository.RepositoryAdmin response getReturnedHitsCount : "
+ + response.getReturnedHitsCount( ) );
+ assertTrue( response.getReturnedHitsCount( ) > 0 );
+ }
+}
Propchange: maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/sandbox/trunk/central-indexer-test/src/test/java/org/apache/maven/indexer/test/OsgiTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision