diff options
Diffstat (limited to 'searchsummary/src/tests/docsummary/positionsdfw_test.cpp')
-rw-r--r-- | searchsummary/src/tests/docsummary/positionsdfw_test.cpp | 49 |
1 files changed, 11 insertions, 38 deletions
diff --git a/searchsummary/src/tests/docsummary/positionsdfw_test.cpp b/searchsummary/src/tests/docsummary/positionsdfw_test.cpp index f2e949cbddf..f23bd2f0437 100644 --- a/searchsummary/src/tests/docsummary/positionsdfw_test.cpp +++ b/searchsummary/src/tests/docsummary/positionsdfw_test.cpp @@ -1,17 +1,16 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -// Unit tests for positionsdfw. +#include <vespa/juniper/rpinterface.h> #include <vespa/searchlib/attribute/extendableattributes.h> #include <vespa/searchlib/attribute/iattributemanager.h> #include <vespa/searchlib/common/matching_elements.h> #include <vespa/searchsummary/docsummary/docsum_field_writer.h> -#include <vespa/searchsummary/docsummary/positionsdfw.h> -#include <vespa/searchsummary/docsummary/idocsumenvironment.h> #include <vespa/searchsummary/docsummary/docsumstate.h> +#include <vespa/searchsummary/docsummary/idocsumenvironment.h> +#include <vespa/searchsummary/docsummary/positionsdfw.h> #include <vespa/searchsummary/test/slime_value.h> -#include <vespa/vespalib/testkit/testapp.h> #include <vespa/vespalib/data/slime/slime.h> -#include <vespa/juniper/rpinterface.h> +#include <vespa/vespalib/gtest/gtest.h> #include <vespa/log/log.h> LOG_SETUP("positionsdfw_test"); @@ -29,33 +28,6 @@ namespace search::docsummary { namespace { -class Test : public vespalib::TestApp { - void requireThat2DPositionFieldIsWritten(); - -public: - int Main() override; -}; - -int -Test::Main() -{ - TEST_INIT("positionsdfw_test"); - - TEST_DO(requireThat2DPositionFieldIsWritten()); - - TEST_DONE(); -} - -struct MyEnvironment : IDocsumEnvironment { - IAttributeManager *attribute_man; - - MyEnvironment() : attribute_man(0) {} - - const IAttributeManager *getAttributeManager() const override { return attribute_man; } - string lookupIndex(const string &s) const override { return s; } - const juniper::Juniper *getJuniper() const override { return nullptr; } -}; - class MyAttributeContext : public IAttributeContext { const IAttributeVector &_attr; public: @@ -132,20 +104,22 @@ void checkWritePositionField(AttrType &attr, MyAttributeManager attribute_man(attr); PositionsDFW::UP writer = PositionsDFW::create(attr.getName().c_str(), &attribute_man, false); ASSERT_TRUE(writer.get()); - ResType res_type = RES_JSONSTRING; MyGetDocsumsStateCallback callback; GetDocsumsState state(callback); state._attributes.push_back(&attr); vespalib::Slime target; vespalib::slime::SlimeInserter inserter(target); - writer->insertField(doc_id, &state, res_type, inserter); + writer->insertField(doc_id, state, inserter); test::SlimeValue expected(expect_json); - EXPECT_EQUAL(expected.slime, target); + EXPECT_EQ(expected.slime, target); } -void Test::requireThat2DPositionFieldIsWritten() { +} // namespace + +TEST(PositionsDFWTest, require_that_2D_position_field_is_written) +{ SingleInt64ExtAttribute attr("foo"); checkWritePositionField(attr, 0x3e, "{x:6,y:7,latlong:'N0.000007;E0.000006'}"); checkWritePositionField(attr, 007, "{x:-1,y:-1,latlong:'S0.000001;W0.000001'}"); @@ -154,7 +128,6 @@ void Test::requireThat2DPositionFieldIsWritten() { checkWritePositionField(attr, 42, "null"); } -} // namespace } -TEST_APPHOOK(search::docsummary::Test); +GTEST_MAIN_RUN_ALL_TESTS() |