diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-03-08 10:06:00 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-03-08 13:22:36 +0000 |
commit | 659032d48faba60fc59224c702d19a24a99ca1c7 (patch) | |
tree | 1baabbc2dcf8fdb14684d53e48bfa50605d1990d /searchcore/src/tests/proton/attribute/attribute_aspect_delayer | |
parent | 4d5ac042bb2e463a87f652b34ec3f5e89747240a (diff) |
Optimize updates to tensor attributes by only updating them in-memory and no longer go via the document store.
This makes tensor attributes behave as regular attributes.
Reprocessing is updated to correctly handle adding and removal of attribute aspect.
Diffstat (limited to 'searchcore/src/tests/proton/attribute/attribute_aspect_delayer')
-rw-r--r-- | searchcore/src/tests/proton/attribute/attribute_aspect_delayer/attribute_aspect_delayer_test.cpp | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/searchcore/src/tests/proton/attribute/attribute_aspect_delayer/attribute_aspect_delayer_test.cpp b/searchcore/src/tests/proton/attribute/attribute_aspect_delayer/attribute_aspect_delayer_test.cpp index a9e8cbf9675..7141dc7baf7 100644 --- a/searchcore/src/tests/proton/attribute/attribute_aspect_delayer/attribute_aspect_delayer_test.cpp +++ b/searchcore/src/tests/proton/attribute/attribute_aspect_delayer/attribute_aspect_delayer_test.cpp @@ -204,7 +204,7 @@ public: void assertAttributeConfig(const std::vector<AttributesConfig::Attribute> &exp) { auto actConfig = _delayer.getAttributesConfig(); - EXPECT_TRUE(exp == actConfig->attribute); + EXPECT_EQ(exp, actConfig->attribute); } void assertSummarymapConfig(const std::vector<SummarymapConfig::Override> &exp) { @@ -290,14 +290,24 @@ TEST_F(DelayerTest, require_that_removing_attribute_aspect_is_not_delayed_if_als assertSummarymapConfig({}); } -TEST_F(DelayerTest, require_that_removing_attribute_aspect_is_not_delayed_for_tensor) +TEST_F(DelayerTest, require_that_adding_attribute_aspect_is_delayed_for_tensor_field) { addFields({"a"}); - setup(attrCfg({make_tensor_cfg("tensor(x[10])")}), smCfg({make_attribute_override("a")}), attrCfg({}), sCfg({make_summary_field("a", "tensor")}), smCfg({})); + setup(attrCfg({}), smCfg({}), + attrCfg({make_tensor_cfg("tensor(x[10])")}), sCfg({make_summary_field("a", "tensor")}), smCfg({make_attribute_override("a")})); assertAttributeConfig({}); assertSummarymapConfig({}); } +TEST_F(DelayerTest, require_that_removing_attribute_aspect_is_delayed_for_tensor_field) +{ + addFields({"a"}); + setup(attrCfg({make_tensor_cfg("tensor(x[10])")}), smCfg({make_attribute_override("a")}), + attrCfg({}), sCfg({make_summary_field("a", "tensor")}), smCfg({})); + assertAttributeConfig({make_tensor_cfg("tensor(x[10])")}); + assertSummarymapConfig({make_attribute_override("a")}); +} + TEST_F(DelayerTest, require_that_removing_attribute_aspect_is_not_delayed_for_predicate) { addFields({"a"}); @@ -330,19 +340,21 @@ TEST_F(DelayerTest, require_that_fast_access_flag_change_is_delayed_true_false_e assertSummarymapConfig({make_attribute_override("a")}); } -TEST_F(DelayerTest, require_that_fast_access_flag_change_is_delayed_false_true_edge_on_tensor_attr) +TEST_F(DelayerTest, require_that_fast_access_flag_change_is_delayed_false_true_edge_on_tensor_attribute) { addFields({"a"}); - setup(attrCfg({make_tensor_cfg("tensor(x[10])")}), smCfg({make_attribute_override("a")}), attrCfg({make_fa(make_tensor_cfg("tensor(x[10])"))}), sCfg({make_summary_field("a", "tensor")}), smCfg({make_attribute_override("a")})); + setup(attrCfg({make_tensor_cfg("tensor(x[10])")}), smCfg({make_attribute_override("a")}), + attrCfg({make_fa(make_tensor_cfg("tensor(x[10])"))}), sCfg({make_summary_field("a", "tensor")}), smCfg({make_attribute_override("a")})); assertAttributeConfig({make_tensor_cfg("tensor(x[10])")}); assertSummarymapConfig({make_attribute_override("a")}); } -TEST_F(DelayerTest, require_that_fast_access_flag_change_is_not_delayed_true_false_edge_on_tensor_attr) +TEST_F(DelayerTest, require_that_fast_access_flag_change_is_delayed_true_false_edge_on_tensor_attribute) { addFields({"a"}); - setup(attrCfg({make_fa(make_tensor_cfg("tensor(x[10])"))}), smCfg({make_attribute_override("a")}), attrCfg({make_tensor_cfg("tensor(x[10])")}), sCfg({make_summary_field("a", "tensor")}), smCfg({make_attribute_override("a")})); - assertAttributeConfig({make_tensor_cfg("tensor(x[10])")}); + setup(attrCfg({make_fa(make_tensor_cfg("tensor(x[10])"))}), smCfg({make_attribute_override("a")}), + attrCfg({make_tensor_cfg("tensor(x[10])")}), sCfg({make_summary_field("a", "tensor")}), smCfg({make_attribute_override("a")})); + assertAttributeConfig({make_fa(make_tensor_cfg("tensor(x[10])"))}); assertSummarymapConfig({make_attribute_override("a")}); } |