Lucene.Net.Search.TestElevationComparator.RunTest C# (CSharp) Method

RunTest() private method

private RunTest ( IndexSearcher searcher, bool reversed ) : void
searcher IndexSearcher
reversed bool
return void
		private void  RunTest(IndexSearcher searcher, bool reversed)
		{
			
			BooleanQuery newq = new BooleanQuery(false);
			TermQuery query = new TermQuery(new Term("title", "ipod"));
			
			newq.Add(query, Occur.SHOULD);
			newq.Add(GetElevatedQuery(new System.String[]{"id", "a", "id", "x"}), Occur.SHOULD);
			
			Sort sort = new Sort(new SortField("id", new ElevationComparatorSource(priority), false), new SortField(null, SortField.SCORE, reversed));
			
			TopFieldCollector topCollector = TopFieldCollector.Create(sort, 50, false, true, true, true);
			searcher.Search(newq, null, topCollector);
			
			TopDocs topDocs = topCollector.TopDocs(0, 10);
			int nDocsReturned = topDocs.ScoreDocs.Length;
			
			Assert.AreEqual(4, nDocsReturned);
			
			// 0 & 3 were elevated
			Assert.AreEqual(0, topDocs.ScoreDocs[0].Doc);
			Assert.AreEqual(3, topDocs.ScoreDocs[1].Doc);
			
			if (reversed)
			{
				Assert.AreEqual(2, topDocs.ScoreDocs[2].Doc);
				Assert.AreEqual(1, topDocs.ScoreDocs[3].Doc);
			}
			else
			{
				Assert.AreEqual(1, topDocs.ScoreDocs[2].Doc);
				Assert.AreEqual(2, topDocs.ScoreDocs[3].Doc);
			}
			
			/*
			for (int i = 0; i < nDocsReturned; i++) {
			ScoreDoc scoreDoc = topDocs.scoreDocs[i];
			ids[i] = scoreDoc.doc;
			scores[i] = scoreDoc.score;
			documents[i] = searcher.doc(ids[i]);
			System.out.println("ids[i] = " + ids[i]);
			System.out.println("documents[i] = " + documents[i]);
			System.out.println("scores[i] = " + scores[i]);
			}
			*/
		}