public virtual void TestWithScore() { Store.Directory indexDir = NewDirectory(); Store.Directory taxoDir = NewDirectory(); DirectoryTaxonomyWriter taxoWriter = new DirectoryTaxonomyWriter(taxoDir); IndexWriter iw = new IndexWriter(indexDir, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random))); FacetsConfig config = new FacetsConfig(); for (int i = 0; i < 4; i++) { Document doc = new Document(); doc.Add(new NumericDocValuesField("price", (i + 1))); doc.Add(new FacetField("a", Convert.ToString(i % 2, CultureInfo.InvariantCulture))); iw.AddDocument(config.Build(taxoWriter, doc)); } DirectoryReader r = DirectoryReader.Open(iw, true); DirectoryTaxonomyReader taxoReader = new DirectoryTaxonomyReader(taxoWriter); ValueSource valueSource = new ValueSourceAnonymousClass(this); FacetsCollector fc = new FacetsCollector(true); // score documents by their 'price' field - makes asserting the correct counts for the categories easier Query q = new FunctionQuery(new Int64FieldSource("price")); FacetsCollector.Search(NewSearcher(r), q, 10, fc); Facets facets = new TaxonomyFacetSumValueSource(taxoReader, config, fc, valueSource); Assert.AreEqual("dim=a path=[] value=10.0 childCount=2\n 1 (6.0)\n 0 (4.0)\n", facets.GetTopChildren(10, "a").ToString(CultureInfo.InvariantCulture)); IOUtils.Dispose(taxoWriter, iw, taxoReader, taxoDir, r, indexDir); }
public DoubleDocValuesAnonymousClass(ValueSourceAnonymousClass outerInstance, Scorer scorer) : base(null) //todo: value source { this.outerInstance = outerInstance; this.scorer = scorer; }