diff options
Diffstat (limited to 'searchlib/src/tests/features')
-rw-r--r-- | searchlib/src/tests/features/prod_features_test.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/searchlib/src/tests/features/prod_features_test.cpp b/searchlib/src/tests/features/prod_features_test.cpp index 22105533895..fb00b4ff5e6 100644 --- a/searchlib/src/tests/features/prod_features_test.cpp +++ b/searchlib/src/tests/features/prod_features_test.cpp @@ -33,6 +33,7 @@ #include <vespa/searchlib/features/random_normal_stable_feature.h> #include <vespa/searchlib/features/randomfeature.h> #include <vespa/searchlib/features/rankingexpressionfeature.h> +#include <vespa/searchlib/features/second_phase_feature.h> #include <vespa/searchlib/features/setup.h> #include <vespa/searchlib/features/termfeature.h> #include <vespa/searchlib/features/utils.h> @@ -614,6 +615,32 @@ TEST_F(ProdFeaturesTest, test_first_phase) } } +TEST_F(ProdFeaturesTest, test_second_phase) +{ + { // Test blueprint. + SecondPhaseBlueprint pt; + + EXPECT_TRUE(assertCreateInstance(pt, "secondPhase")); + + FtIndexEnvironment ie; + ie.getProperties().add(indexproperties::rank::SecondPhase::NAME, "random"); + + StringList params, in, out; + FT_SETUP_OK(pt, ie, params, in.add("random"), out.add("score")); + FT_SETUP_FAIL(pt, params.add("foo")); + params.clear(); + + FT_DUMP_EMPTY(_factory, "secondPhase", ie); + } + + { // Test executor. + FtFeatureTest ft(_factory, "secondPhase"); + ft.getIndexEnv().getProperties().add(indexproperties::rank::SecondPhase::NAME, "value(11)"); + ASSERT_TRUE(ft.setup()); + ASSERT_TRUE(ft.execute(11.0f)); + } +} + TEST_F(ProdFeaturesTest, test_foreach) { { // Test blueprint. |