summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/queryeval/blueprint
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-12-29 08:51:51 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-01-01 17:12:45 +0000
commitce77fff993f6bab999bcf70cdcc255dbeb161d19 (patch)
tree138c11d1c2bdfe793e0cb086ef9e0f745161a93d /searchlib/src/tests/queryeval/blueprint
parent1ba19f37f37d22262b32da29372e94f87f3a97f5 (diff)
Implement AndBlueprint.fetchPostings
Diffstat (limited to 'searchlib/src/tests/queryeval/blueprint')
-rw-r--r--searchlib/src/tests/queryeval/blueprint/intermediate_blueprints_test.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/searchlib/src/tests/queryeval/blueprint/intermediate_blueprints_test.cpp b/searchlib/src/tests/queryeval/blueprint/intermediate_blueprints_test.cpp
index ac0e88386e0..4aab1de06b3 100644
--- a/searchlib/src/tests/queryeval/blueprint/intermediate_blueprints_test.cpp
+++ b/searchlib/src/tests/queryeval/blueprint/intermediate_blueprints_test.cpp
@@ -91,18 +91,20 @@ TEST("test AndNot Blueprint") {
TEST("test And propagates updated histestimate") {
AndBlueprint *bp = new AndBlueprint();
bp->setSourceId(2);
- bp->setDocIdLimit(4000);
bp->addChild(ap(MyLeafSpec(20).create<RememberExecuteInfo>()->setSourceId(2)));
bp->addChild(ap(MyLeafSpec(200).create<RememberExecuteInfo>()->setSourceId(2)));
bp->addChild(ap(MyLeafSpec(2000).create<RememberExecuteInfo>()->setSourceId(2)));
bp->optimize_self();
+ bp->setDocIdLimit(5000);
bp->fetchPostings(ExecuteInfo::create(true));
EXPECT_EQUAL(3u, bp->childCnt());
for (uint32_t i = 0; i < bp->childCnt(); i++) {
const RememberExecuteInfo & child = dynamic_cast<const RememberExecuteInfo &>(bp->getChild(i));
EXPECT_EQUAL((i == 0), child.executeInfo.isStrict());
- EXPECT_EQUAL(1.0, child.executeInfo.hitRate());
}
+ EXPECT_EQUAL(1.0, dynamic_cast<const RememberExecuteInfo &>(bp->getChild(0)).executeInfo.hitRate());
+ EXPECT_EQUAL(1.0/250, dynamic_cast<const RememberExecuteInfo &>(bp->getChild(1)).executeInfo.hitRate());
+ EXPECT_EQUAL(1.0/(250*25), dynamic_cast<const RememberExecuteInfo &>(bp->getChild(2)).executeInfo.hitRate());
}
TEST("test And Blueprint") {