add test - multiple facets with parent (#1634)

This commit is contained in:
Krunal Gandhi 2024-03-26 09:24:06 +00:00 committed by GitHub
parent 64f6d77571
commit 48de03e2f3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -2216,6 +2216,49 @@ TEST_F(CollectionFacetingTest, FacetingReturnParent) {
ASSERT_EQ("0", results["facet_counts"][1]["counts"][0]["value"]);
ASSERT_EQ("{\"b\":0,\"color\":\"red\",\"g\":0,\"r\":255}", results["facet_counts"][1]["counts"][1]["parent"].dump());
ASSERT_EQ("255", results["facet_counts"][1]["counts"][1]["value"]);
//return parent for multiple facet fields
search_op = coll1->search("*", {},"", {"value.color", "value.r", "value.g", "value.b"},
{}, {2}, 10, 1,FREQUENCY, {true},
1, spp::sparse_hash_set<std::string>(),
spp::sparse_hash_set<std::string>(),10, "",
30, 4, "",
Index::TYPO_TOKENS_THRESHOLD, "", "",{},
3, "<mark>", "</mark>", {},
UINT32_MAX, true, false, true,
"", false, 6000*1000, 4, 7,
fallback, 4, {off}, INT16_MAX, INT16_MAX,
2, 2, false, "",
true, 0, max_score, 100,
0, 0, HASH, 30000,
2, "", {"value.r", "value.g", "value.b"});
if(!search_op.ok()) {
LOG(ERROR) << search_op.error();
FAIL();
}
results = search_op.get();
ASSERT_EQ(4, results["facet_counts"].size());
ASSERT_EQ(2, results["facet_counts"][0]["counts"].size());
ASSERT_EQ("red", results["facet_counts"][0]["counts"][0]["value"]);
ASSERT_EQ("blue", results["facet_counts"][0]["counts"][1]["value"]);
ASSERT_EQ(2, results["facet_counts"][1]["counts"].size());
ASSERT_EQ("{\"b\":255,\"color\":\"blue\",\"g\":0,\"r\":0}", results["facet_counts"][1]["counts"][0]["parent"].dump());
ASSERT_EQ("0", results["facet_counts"][1]["counts"][0]["value"]);
ASSERT_EQ("{\"b\":0,\"color\":\"red\",\"g\":0,\"r\":255}", results["facet_counts"][1]["counts"][1]["parent"].dump());
ASSERT_EQ("255", results["facet_counts"][1]["counts"][1]["value"]);
ASSERT_EQ(1, results["facet_counts"][2]["counts"].size());
ASSERT_EQ("{\"b\":255,\"color\":\"blue\",\"g\":0,\"r\":0}", results["facet_counts"][2]["counts"][0]["parent"].dump());
ASSERT_EQ("0", results["facet_counts"][2]["counts"][0]["value"]);
ASSERT_EQ(2, results["facet_counts"][3]["counts"].size());
ASSERT_EQ("{\"b\":0,\"color\":\"red\",\"g\":0,\"r\":255}", results["facet_counts"][3]["counts"][0]["parent"].dump());
ASSERT_EQ("0", results["facet_counts"][3]["counts"][0]["value"]);
ASSERT_EQ("{\"b\":255,\"color\":\"blue\",\"g\":0,\"r\":0}", results["facet_counts"][3]["counts"][1]["parent"].dump());
ASSERT_EQ("255", results["facet_counts"][3]["counts"][1]["value"]);
}
TEST_F(CollectionFacetingTest, FacetingReturnParentDeepNested) {