Get_Searchers accessor for PolySearcher Fixes LUCY-255.
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/751c3b39 Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/751c3b39 Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/751c3b39 Branch: refs/heads/master Commit: 751c3b39d921096884fb4d19a33dba42b215059e Parents: fc66f67 Author: Nick Wellnhofer <[email protected]> Authored: Sat Dec 24 17:36:16 2016 +0100 Committer: Nick Wellnhofer <[email protected]> Committed: Mon Jan 2 16:33:57 2017 +0100 ---------------------------------------------------------------------- core/Lucy/Search/PolySearcher.c | 5 +++++ core/Lucy/Search/PolySearcher.cfh | 5 +++++ perl/t/509-poly_searcher.t | 3 ++- test/Lucy/Test/Search/TestPolySearcher.c | 5 ++++- 4 files changed, 16 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucy/blob/751c3b39/core/Lucy/Search/PolySearcher.c ---------------------------------------------------------------------- diff --git a/core/Lucy/Search/PolySearcher.c b/core/Lucy/Search/PolySearcher.c index efa9321..002b736 100644 --- a/core/Lucy/Search/PolySearcher.c +++ b/core/Lucy/Search/PolySearcher.c @@ -83,6 +83,11 @@ PolySearcher_Destroy_IMP(PolySearcher *self) { SUPER_DESTROY(self, POLYSEARCHER); } +Vector* +PolySearcher_Get_Searchers_IMP(PolySearcher *self) { + return PolySearcher_IVARS(self)->searchers; +} + HitDoc* PolySearcher_Fetch_Doc_IMP(PolySearcher *self, int32_t doc_id) { PolySearcherIVARS *const ivars = PolySearcher_IVARS(self); http://git-wip-us.apache.org/repos/asf/lucy/blob/751c3b39/core/Lucy/Search/PolySearcher.cfh ---------------------------------------------------------------------- diff --git a/core/Lucy/Search/PolySearcher.cfh b/core/Lucy/Search/PolySearcher.cfh index 19427a6..ad7065e 100644 --- a/core/Lucy/Search/PolySearcher.cfh +++ b/core/Lucy/Search/PolySearcher.cfh @@ -48,6 +48,11 @@ public class Lucy::Search::PolySearcher public void Destroy(PolySearcher *self); + /** Accessor for searchers. + */ + public Vector* + Get_Searchers(PolySearcher *self); + public int32_t Doc_Max(PolySearcher *self); http://git-wip-us.apache.org/repos/asf/lucy/blob/751c3b39/perl/t/509-poly_searcher.t ---------------------------------------------------------------------- diff --git a/perl/t/509-poly_searcher.t b/perl/t/509-poly_searcher.t index 13dee4d..2728d42 100644 --- a/perl/t/509-poly_searcher.t +++ b/perl/t/509-poly_searcher.t @@ -17,7 +17,7 @@ use strict; use warnings; use lib 'buildlib'; -use Test::More tests => 8; +use Test::More tests => 9; use Lucy::Test; use Lucy::Test::TestUtils qw( create_index ); @@ -31,6 +31,7 @@ my $poly_searcher = Lucy::Search::PolySearcher->new( searchers => [ $searcher_a, $searcher_b ], ); +is( scalar @{ $poly_searcher->get_searchers }, 2, 'get_searchers' ); is( $poly_searcher->doc_freq( field => 'content', term => 'b' ), 2, 'doc_freq' ); is( $poly_searcher->doc_max, 6, 'doc_max' ); http://git-wip-us.apache.org/repos/asf/lucy/blob/751c3b39/test/Lucy/Test/Search/TestPolySearcher.c ---------------------------------------------------------------------- diff --git a/test/Lucy/Test/Search/TestPolySearcher.c b/test/Lucy/Test/Search/TestPolySearcher.c index f511116..ed0082e 100644 --- a/test/Lucy/Test/Search/TestPolySearcher.c +++ b/test/Lucy/Test/Search/TestPolySearcher.c @@ -63,6 +63,9 @@ static void test_poly_searcher(TestBatchRunner *runner) { PolySearcher *poly_searcher = S_create_poly_searcher(); + Vector *searchers = PolySearcher_Get_Searchers(poly_searcher); + TEST_UINT_EQ(runner, Vec_Get_Size(searchers), 2, "Get_Searchers"); + TEST_UINT_EQ(runner, PolySearcher_Doc_Freq(poly_searcher, SSTR_WRAP_C("content"), (Obj*)SSTR_WRAP_C("b")), @@ -121,6 +124,6 @@ test_poly_searcher(TestBatchRunner *runner) { void TestPolySearcher_Run_IMP(TestPolySearcher *self, TestBatchRunner *runner) { - TestBatchRunner_Plan(runner, (TestBatch*)self, 10); + TestBatchRunner_Plan(runner, (TestBatch*)self, 11); test_poly_searcher(runner); }
