Example usage for org.apache.solr.common SolrDocumentList setNumFound

List of usage examples for org.apache.solr.common SolrDocumentList setNumFound

Introduction

In this page you can find the example usage for org.apache.solr.common SolrDocumentList setNumFound.

Prototype

public void setNumFound(long numFound) 

Source Link

Usage

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testSetRuleParams2NullRules() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false,
            solrDocumentList);/*from   w  w  w. j a  v a2s.  c o m*/
    SolrDocument rule = new SolrDocument();
    rule.addField("description", "description facetRule2");
    rule.addField("id", "facetRule2");
    solrDocumentList.add(rule);
    setUpRuleData(null, "description boostRule3", "boostRule3", boostRule, boostRuleItem1, false,
            solrDocumentList);

    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);

    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    RepositoryItem catalog = mock(RepositoryItem.class);
    when(catalog.getRepositoryId()).thenReturn("bobcatalog");
    SolrQuery query = mock(SolrQuery.class);
    when(query.getQuery()).thenReturn("jackets");

    mgr.setRuleParams(query, true, false, null, null, catalog, false, null);
    verify(query).setFacetPrefix("category", "1.bobcatalog.");
    verify(query).addFilterQuery("category:0.bobcatalog");
    verify(query).getQuery();
    verify(query, times(2)).getSortFields();
    verify(query).setSortField("isToos", ORDER.asc);
    verify(query).addSortField("score", ORDER.desc);
    verify(query).addSortField("_version_", ORDER.desc);
    verify(query).getParams("includeRules");
    verify(query).getParams("excludeRules");
    verifyNoMoreInteractions(query);
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testRankingRuleForRuleBasedCategories() throws RepositoryException, SolrServerException {
    RuleManager mgr = new RuleManager(repository, builder, server);
    SolrDocumentList ruleList = new SolrDocumentList();
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false, ruleList);
    SolrDocument rule = new SolrDocument();
    rule.addField("description", "description facetRule2");
    rule.addField("id", "facetRule2");
    ruleList.add(rule);/*from   ww  w. j  a  va2 s .  co m*/
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, false, ruleList);
    List<String> categories = new ArrayList<String>();
    categories.add("myCatalog.ruleBasedCategory");
    categories.add("__all__");
    setUpRuleData(categories, "description boostRule2", "boostRule2", boostRule, boostRuleItem2, false,
            ruleList);
    ruleList.setNumFound(ruleList.size());
    ruleList.setStart(0L);
    when(queryResponse.getResults()).thenReturn(ruleList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);
    mgr.loadRules("", "myCatalog.ruleBasedCategory", null, false, true, cataA, false, null,
            new HashSet<String>(), new HashSet<String>());
    assertEquals(mgr.getRules().size(), 2);
    mgr.loadRules("", null, null, false, true, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());
    assertEquals(mgr.getRules().size(), 2);
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testLoadRulesNullRule() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    // ---------- set up docs with a rule type -----------
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false,
            solrDocumentList);/*w w w . j a va  2 s  .c  o m*/
    // note that we do NOT add this into the Repository so that we have a null rule in loadRules, this causes this document to not go into the rules
    SolrDocument rule = new SolrDocument();
    rule.addField("description", "description facetRule2");
    rule.addField("id", "facetRule2");
    solrDocumentList.add(rule);
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, false,
            solrDocumentList);

    // ----------- set up doclist attributes ----------
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);
    //        solrDocumentList.setMaxScore(1000.0);
    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    // ----------- set up rule manager -------------

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    // ------------ make the call to load the rules etc -------------
    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());

    // ------------ assertions about the rules that were generated ---------
    assertNotNull(mgr.getRules());

    Map<String, List<RepositoryItem>> rules = mgr.getRules();

    assertEquals(2, rules.size());
    assertThat(rules.keySet(), hasItem(facetRule));
    assertThat(rules.keySet(), hasItem(boostRule));

    List<RepositoryItem> facetItems = rules.get(facetRule);
    List<RepositoryItem> boostItems = rules.get(boostRule);

    assertEquals(1, facetItems.size());
    assertEquals(1, boostItems.size());

    assertThat(facetItems, hasItem(facetRuleItem1));
    assertThat(boostItems, hasItem(boostRuleItem1));
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testLoadRulesMixedTypes() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    // ---------- set up docs with a rule type -----------
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false,
            solrDocumentList);/* w w  w .j a  v a  2s  .c om*/
    setUpRuleData(null, "description blockRule1", "blockRule1", blockRule, blockRuleItem1, false,
            solrDocumentList);
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, false,
            solrDocumentList);

    // ----------- set up doclist attributes ----------
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);
    //        solrDocumentList.setMaxScore(1000.0);
    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    // ----------- set up rule manager -------------

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    // ------------ make the call to load the rules etc -------------
    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());

    // ------------ assertions about the rules that were generated ---------
    assertNotNull(mgr.getRules());

    Map<String, List<RepositoryItem>> rules = mgr.getRules();

    assertEquals(3, rules.size());
    assertThat(rules.keySet(), hasItem(facetRule));
    assertThat(rules.keySet(), hasItem(boostRule));
    assertThat(rules.keySet(), hasItem(blockRule));

    List<RepositoryItem> facetItems = rules.get(facetRule);
    List<RepositoryItem> boostItems = rules.get(boostRule);
    List<RepositoryItem> blockItems = rules.get(blockRule);
    assertEquals(1, facetItems.size());
    assertEquals(1, boostItems.size());
    assertEquals(1, blockItems.size());
    assertThat(facetItems, hasItem(facetRuleItem1));
    assertThat(boostItems, hasItem(boostRuleItem1));
    assertThat(blockItems, hasItem(blockRuleItem1));
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testLoadRulesPaging() throws RepositoryException, SolrServerException {
    // test paging over batches of results
    SolrDocumentList docList1 = new SolrDocumentList();
    SolrDocumentList docList2 = new SolrDocumentList();

    RepositoryItem bikeItem = mock(RepositoryItem.class);
    RepositoryItem sledItem = mock(RepositoryItem.class);
    RepositoryItem carItem = mock(RepositoryItem.class);
    RepositoryItem heliItem = mock(RepositoryItem.class);
    RepositoryItem coatItem = mock(RepositoryItem.class);
    RepositoryItem snowItem = mock(RepositoryItem.class);
    RepositoryItem farmItem = mock(RepositoryItem.class);
    RepositoryItem steakItem = mock(RepositoryItem.class);
    RepositoryItem pillowItem = mock(RepositoryItem.class);

    // ---------- set up docs with a rule type -----------
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false, docList1); // SKIPPING due to setStart
    setUpRuleData(null, "description blockRule1", "blockRule1", blockRule, blockRuleItem1, false, docList1);
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, false, docList1);
    setUpRuleData(null, "biking?  fun!", "tallboy", boostRule, bikeItem, false, docList1);
    setUpRuleData(null, "sleds are lame", "suzuki", facetRule, sledItem, false, docList1);
    setUpRuleData(null, "cars are lame", "vw", facetRule, carItem, false, docList1);
    setUpRuleData(null, "fly in a heli", "heli", boostRule, heliItem, false, docList2); // SKIPPING due to setStart
    setUpRuleData(null, "snow is fun", "snow", boostRule, snowItem, false, docList2);
    setUpRuleData(null, "good for food", "farm", blockRule, farmItem, false, docList2);
    setUpRuleData(null, "cows are food", "steak", facetRule, steakItem, false, docList2);
    setUpRuleData(null, "coatItem", "patagonia", boostRule, coatItem, false, docList2);
    setUpRuleData(null, "sleeping", "pillow", boostRule, pillowItem, false, docList2);

    // ----------- set up doclist attributes ----------
    docList1.setNumFound(docList1.size() + docList2.size()); // set numfound to be both pagefuls...
    docList2.setNumFound(docList1.size() + docList2.size()); // set numfound to be both pagefuls...
    docList1.setStart(0L);/*w  w w .  j a v  a  2 s .co m*/
    docList2.setStart(0L);
    //        solrDocumentList.setMaxScore(1000.0);
    QueryResponse queryResponse1 = mock(QueryResponse.class);
    QueryResponse queryResponse2 = mock(QueryResponse.class);

    when(queryResponse1.getResults()).thenReturn(docList1);
    when(queryResponse2.getResults()).thenReturn(docList2);
    //        when(server.query(any(SolrParams.class))).thenReturn(queryResponse);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse1, queryResponse2);

    // ----------- set up rule manager -------------        
    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    // ------------ make the call to load the rules etc -------------
    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());

    // ------------ assertions about the rules that were generated ---------
    assertNotNull(mgr.getRules());

    Map<String, List<RepositoryItem>> rules = mgr.getRules();

    assertEquals(3, rules.size());
    assertThat(rules.keySet(), hasItem(facetRule));
    assertThat(rules.keySet(), hasItem(boostRule));
    assertThat(rules.keySet(), hasItem(blockRule));

    List<RepositoryItem> facetItems = rules.get(facetRule);
    List<RepositoryItem> boostItems = rules.get(boostRule);
    List<RepositoryItem> blockItems = rules.get(blockRule);

    assertEquals(4, facetItems.size());
    assertEquals(6, boostItems.size());
    assertEquals(2, blockItems.size());

    // test facets...
    for (RepositoryItem item : new RepositoryItem[] { sledItem, carItem, steakItem, }) {
        assertThat(facetItems, hasItem(item));
    }

    // test boosts...
    for (RepositoryItem item : new RepositoryItem[] { boostRuleItem1, bikeItem, snowItem, coatItem,
            pillowItem, }) {
        assertThat(boostItems, hasItem(item));
    }

    // test blocks...
    for (RepositoryItem item : new RepositoryItem[] { blockRuleItem1, farmItem, }) {
        assertThat(blockItems, hasItem(item));
    }
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testLoadRulesFacets() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    // ---------- set up docs with a rule type -----------
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false,
            solrDocumentList);/* w  ww  .jav a2  s.c o m*/
    setUpRuleData(null, "description facetRule2", "facetRule2", facetRule, blockRuleItem1, false,
            solrDocumentList);
    setUpRuleData(null, "description facetRule3", "facetRule3", facetRule, boostRuleItem1, false,
            solrDocumentList);

    // ----------- set up doclist attributes ----------
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);
    //        solrDocumentList.setMaxScore(1000.0);
    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    // ----------- set up rule manager -------------

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    // ------------ make the call to load the rules etc -------------
    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());

    // ------------ assertions about the rules that were generated ---------
    assertNotNull(mgr.getRules());
    Map<String, List<RepositoryItem>> rules = mgr.getRules();
    assertEquals(1, rules.size());
    assertEquals(facetRule, rules.keySet().iterator().next());
    List<RepositoryItem> facetItems = rules.get(facetRule);
    assertEquals(3, facetItems.size());
    assertThat(facetItems, hasItem(facetRuleItem1));
    assertThat(facetItems, hasItem(blockRuleItem1));
    assertThat(facetItems, hasItem(boostRuleItem1));
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testIncludeRulesExperimental() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, true,
            solrDocumentList);/*from  ww w .  jav  a  2s  .  c  o m*/
    setUpRuleData(null, "description blockRule1", "blockRule1", blockRule, blockRuleItem1, true,
            solrDocumentList);
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, true,
            solrDocumentList);
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);

    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    Set<String> includeRules = new HashSet<String>();
    includeRules.add("facetRule1");
    includeRules.add("blockRule1");

    Set<String> excludeRules = new HashSet<String>();
    excludeRules.add("boostRule1");

    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, includeRules,
            excludeRules);

    assertNotNull(mgr.getRules());
    Map<String, List<RepositoryItem>> rules = mgr.getRules();
    assertEquals(2, rules.size());
    List<RepositoryItem> blockItems = rules.get(blockRule);
    assertEquals(1, blockItems.size());
    assertThat(blockItems, hasItem(blockRuleItem1));

    List<RepositoryItem> facetItems = rules.get(facetRule);
    assertEquals(1, facetItems.size());
    assertThat(facetItems, hasItem(facetRuleItem1));

}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testIncludeRulesNotExperimental() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, false,
            solrDocumentList);//from   w w  w  . j av  a 2s  .c  o  m
    setUpRuleData(null, "description facetRule2", "facetRule2", facetRule, facetRuleItem2, false,
            solrDocumentList);
    setUpRuleData(null, "description facetRule3", "facetRule3", facetRule, facetRuleItem3, true,
            solrDocumentList);
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);

    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());

    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            new HashSet<String>());

    assertNotNull(mgr.getRules());
    Map<String, List<RepositoryItem>> rules = mgr.getRules();
    assertEquals(1, rules.size());
    assertEquals(facetRule, rules.keySet().iterator().next());
    List<RepositoryItem> facetItems = rules.get(facetRule);
    assertEquals(2, facetItems.size());
    assertThat(facetItems, hasItem(facetRuleItem1));
    assertThat(facetItems, hasItem(facetRuleItem2));
}

From source file:org.opencommercesearch.RuleManagerTest.java

License:Apache License

@Test
public void testExcludeRules() throws RepositoryException, SolrServerException {
    SolrDocumentList solrDocumentList = new SolrDocumentList();
    setUpRuleData(null, "description facetRule1", "facetRule1", facetRule, facetRuleItem1, true,
            solrDocumentList);//from   w  ww.  j a va2s .c  o m
    setUpRuleData(null, "description blockRule1", "blockRule1", blockRule, blockRuleItem1, true,
            solrDocumentList);
    setUpRuleData(null, "description boostRule1", "boostRule1", boostRule, boostRuleItem1, true,
            solrDocumentList);
    solrDocumentList.setNumFound(solrDocumentList.size());
    solrDocumentList.setStart(0L);

    when(queryResponse.getResults()).thenReturn(solrDocumentList);
    when(server.query(any(SolrParams.class))).thenReturn(queryResponse);

    RuleManager mgr = new RuleManager(repository, builder, server);
    assertEquals(null, mgr.getRules());
    HashSet<String> excludeRules = new HashSet<String>();
    excludeRules.add("facetRule1");
    excludeRules.add("facetRule2");
    excludeRules.add("facetRule3");
    mgr.loadRules("jackets", null, "Men's Clothing", true, false, cataA, false, null, new HashSet<String>(),
            excludeRules);

    assertNotNull(mgr.getRules());
    Map<String, List<RepositoryItem>> rules = mgr.getRules();
    assertEquals(0, rules.size());

}

From source file:org.springframework.data.solr.core.SolrTemplateMulticoreTests.java

License:Apache License

@Test
public void testCountQueries() throws SolrServerException, IOException {
    ArgumentCaptor<SolrQuery> captor1 = ArgumentCaptor.forClass(SolrQuery.class);
    ArgumentCaptor<SolrQuery> captor2 = ArgumentCaptor.forClass(SolrQuery.class);

    QueryResponse response1Mock = Mockito.mock(QueryResponse.class);
    SolrDocumentList resultList1 = new SolrDocumentList();
    resultList1.setNumFound(10);
    Mockito.when(response1Mock.getResults()).thenReturn(resultList1);
    QueryResponse response2Mock = Mockito.mock(QueryResponse.class);
    SolrDocumentList resultList2 = new SolrDocumentList();
    resultList2.setNumFound(10);//  w w  w  . jav a 2  s.  c om
    Mockito.when(response2Mock.getResults()).thenReturn(resultList2);

    Mockito.when(core1Client.query(Mockito.any(SolrQuery.class), Mockito.eq(SolrRequest.METHOD.GET)))
            .thenReturn(response1Mock);
    Mockito.when(core2Client.query(Mockito.any(SolrQuery.class), Mockito.eq(SolrRequest.METHOD.GET)))
            .thenReturn(response2Mock);

    long result1 = solrTemplate.count("core1", new SimpleQuery(new Criteria("field_1").is("value1")));
    long result2 = solrTemplate.count("core2", new SimpleQuery(new Criteria("field_2").is("value2")));
    assertEquals(resultList1.getNumFound(), result1);
    assertEquals(resultList2.getNumFound(), result2);

    Mockito.verify(core1Client, Mockito.times(1)).query(captor1.capture(), Mockito.eq(SolrRequest.METHOD.GET));
    Mockito.verify(core2Client, Mockito.times(1)).query(captor2.capture(), Mockito.eq(SolrRequest.METHOD.GET));
}