}
{
// an implicit class name wildcard
Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "Logger", SearchType.SCORED );
GroupedSearchRequest request = new GroupedSearchRequest( q, new GGrouping() );
GroupedSearchResponse response = nexusIndexer.searchGrouped( request );
Map<String, ArtifactInfoGroup> r = response.getResults();
assertEquals( r.toString(), 2, r.size() );
Iterator<ArtifactInfoGroup> it = r.values().iterator();
ArtifactInfoGroup ig1 = it.next();
assertEquals( r.toString(), "org.slf4j", ig1.getGroupKey() );
ArtifactInfoGroup ig2 = it.next();
assertEquals( r.toString(), "org.testng", ig2.getGroupKey() );
}
{
// a lower case search
Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "logger", SearchType.SCORED );
GroupedSearchRequest request = new GroupedSearchRequest( q, new GGrouping() );
GroupedSearchResponse response = nexusIndexer.searchGrouped( request );
Map<String, ArtifactInfoGroup> r = response.getResults();
assertEquals( r.toString(), 2, r.size() );
Iterator<ArtifactInfoGroup> it = r.values().iterator();
ArtifactInfoGroup ig1 = it.next();
assertEquals( r.toString(), "org.slf4j", ig1.getGroupKey() );
ArtifactInfoGroup ig2 = it.next();
assertEquals( r.toString(), "org.testng", ig2.getGroupKey() );
}
{
// explicit class name wildcard without terminator
// Since 4.0 query starting with * is illegal
// Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "*.Logger", SearchType.SCORED );
Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, ".Logger", SearchType.SCORED );
GroupedSearchRequest request = new GroupedSearchRequest( q, new GGrouping() );
GroupedSearchResponse response = nexusIndexer.searchGrouped( request );
Map<String, ArtifactInfoGroup> r = response.getResults();
assertEquals( r.toString(), 2, r.size() );
Iterator<ArtifactInfoGroup> it = r.values().iterator();
ArtifactInfoGroup ig1 = it.next();
assertEquals( r.toString(), "org.slf4j", ig1.getGroupKey() );
ArtifactInfoGroup ig2 = it.next();
assertEquals( r.toString(), "org.testng", ig2.getGroupKey() );
}
{
// explicit class name wildcard with terminator
// Since 4.0 query starting with * is illegal
// Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "*.Logger ", SearchType.SCORED );
Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, ".Logger ", SearchType.SCORED );
GroupedSearchRequest request = new GroupedSearchRequest( q, new GGrouping() );
GroupedSearchResponse response = nexusIndexer.searchGrouped( request );
Map<String, ArtifactInfoGroup> r = response.getResults();
assertEquals( r.toString(), 2, r.size() );
Iterator<ArtifactInfoGroup> it = r.values().iterator();
ArtifactInfoGroup ig1 = it.next();
assertEquals( r.toString(), "org.slf4j", ig1.getGroupKey() );
ArtifactInfoGroup ig2 = it.next();
assertEquals( r.toString(), "org.testng", ig2.getGroupKey() );
}
{
// a class name wildcard
// Since 4.0 query starting with * is illegal
// Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "*Logger", SearchType.SCORED );
Query q = nexusIndexer.constructQuery( MAVEN.CLASSNAMES, "Logger", SearchType.SCORED );
GroupedSearchRequest request = new GroupedSearchRequest( q, new GGrouping() );
GroupedSearchResponse response = nexusIndexer.searchGrouped( request );
Map<String, ArtifactInfoGroup> r = response.getResults();
// Results are less, since no PREFIX searches anymore!
// assertEquals( r.toString(), 3, r.size() );
assertEquals( r.toString(), 2, r.size() );