Exemplo n.º 1
0
        public void TestWithSingleCommit()
        {
            string text = "text";

            Document doc1 = new Document();

            doc1.Add(new TextField(text, "Foo1", Field.Store.YES));
            m_indexWriter.AddDocument(doc1);

            Document doc2 = new Document();

            doc2.Add(new TextField(text, "Foo2", Field.Store.YES));
            m_indexWriter.AddDocument(doc2);

            Document doc3 = new Document();

            doc3.Add(new TextField(text, "Foo3", Field.Store.YES));
            m_indexWriter.AddDocument(doc3);

            m_indexWriter.Commit();

            List <IFacetHandler> handlerList = new List <IFacetHandler>();

            DirectoryReader reader          = BoboMultiReader.Open(m_indexWriter, true);
            BoboMultiReader boboMultiReader = BoboMultiReader.GetInstance(reader,
                                                                          handlerList);

            BrowseRequest br = new BrowseRequest();

            br.Count  = (10);
            br.Offset = (0);

            QueryParser parser = new QueryParser(LuceneVersion.LUCENE_48, "text",
                                                 new StandardAnalyzer(LuceneVersion.LUCENE_48));

            Lucene.Net.Search.Query q = parser.Parse("Foo*");
            br.Query = (q);

            BoboBrowser  browser = new BoboBrowser(boboMultiReader);
            BrowseResult result  = browser.Browse(br);

            int totalHits = result.NumHits;

            BrowseHit[] hits = result.Hits;

            Assert.AreEqual(3, totalHits, "should be 3 hits");
            Assert.AreEqual(0, hits[0].DocId, "should be doc 0");
            Assert.AreEqual(1, hits[1].DocId, "should be doc 1");
            Assert.AreEqual(2, hits[2].DocId, "should be doc 2");

            result.Dispose();
        }