1 package org.apache.maven.index;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.IOException;
23 import java.util.Collection;
24 import org.apache.lucene.index.Term;
25 import org.apache.lucene.search.PrefixQuery;
26 import org.apache.lucene.store.ByteBuffersDirectory;
27 import org.apache.lucene.store.Directory;
28 import org.apache.maven.index.context.IndexingContext;
29
30 public abstract class AbstractNexusIndexerTest
31 extends AbstractIndexCreatorHelper
32 {
33 protected NexusIndexer nexusIndexer;
34
35 protected Directory indexDir = new ByteBuffersDirectory();
36
37 protected IndexingContext context;
38
39 @Override
40 protected void setUp()
41 throws Exception
42 {
43
44 super.setUp();
45
46 nexusIndexer = lookup( NexusIndexer.class );
47 prepareNexusIndexer( nexusIndexer );
48 }
49
50 @Override
51 protected void tearDown()
52 throws Exception
53 {
54 unprepareNexusIndexer( nexusIndexer );
55 super.tearDown();
56
57
58 }
59
60 protected abstract void prepareNexusIndexer( NexusIndexer nexusIndexer )
61 throws Exception;
62
63 protected void unprepareNexusIndexer( NexusIndexer nexusIndexer )
64 throws Exception
65 {
66 nexusIndexer.removeIndexingContext( context, false );
67 }
68
69 protected void assertGroup( int expected, String group, IndexingContext context )
70 throws IOException
71 {
72
73
74
75 Term term = new Term( ArtifactInfo.GROUP_ID, group );
76 PrefixQuery pq = new PrefixQuery( term );
77
78
79
80
81
82
83 FlatSearchResponse response = nexusIndexer.searchFlat( new FlatSearchRequest( pq, context ) );
84 Collection<ArtifactInfo> artifacts = response.getResults();
85 assertEquals( artifacts.toString(), expected, artifacts.size() );
86 }
87
88 }