summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorGeir Storli <geirst@verizonmedia.com>2019-06-28 07:36:32 +0000
committerGeir Storli <geirst@verizonmedia.com>2019-06-28 07:36:32 +0000
commit6cbb4bc99757cca762ce795006f643d0f6243821 (patch)
treea55c4cdcf37fd17b160f9396b774e968dfdb7847 /searchlib
parent1ae930e0fc1c6e93faa226274d48dc3f8f51db7e (diff)
Rewrite document inverter tests to gtest.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/tests/memoryindex/document_inverter/CMakeLists.txt1
-rw-r--r--searchlib/src/tests/memoryindex/document_inverter/document_inverter_test.cpp273
2 files changed, 126 insertions, 148 deletions
diff --git a/searchlib/src/tests/memoryindex/document_inverter/CMakeLists.txt b/searchlib/src/tests/memoryindex/document_inverter/CMakeLists.txt
index 1058a19d0ce..ecf33ee48fd 100644
--- a/searchlib/src/tests/memoryindex/document_inverter/CMakeLists.txt
+++ b/searchlib/src/tests/memoryindex/document_inverter/CMakeLists.txt
@@ -5,5 +5,6 @@ vespa_add_executable(searchlib_document_inverter_test_app TEST
DEPENDS
searchlib_test
searchlib
+ gtest
)
vespa_add_test(NAME searchlib_document_inverter_test_app COMMAND searchlib_document_inverter_test_app)
diff --git a/searchlib/src/tests/memoryindex/document_inverter/document_inverter_test.cpp b/searchlib/src/tests/memoryindex/document_inverter/document_inverter_test.cpp
index 08645f38712..38862dfe94b 100644
--- a/searchlib/src/tests/memoryindex/document_inverter/document_inverter_test.cpp
+++ b/searchlib/src/tests/memoryindex/document_inverter/document_inverter_test.cpp
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-/* -*- mode: C++; coding: utf-8; -*- */
-
+#include <vespa/searchlib/common/sequencedtaskexecutor.h>
#include <vespa/searchlib/index/docbuilder.h>
#include <vespa/searchlib/index/field_length_calculator.h>
#include <vespa/searchlib/memoryindex/document_inverter.h>
@@ -10,8 +9,7 @@
#include <vespa/searchlib/memoryindex/i_field_index_collection.h>
#include <vespa/searchlib/memoryindex/word_store.h>
#include <vespa/searchlib/test/memoryindex/ordered_field_index_inserter.h>
-#include <vespa/searchlib/common/sequencedtaskexecutor.h>
-#include <vespa/vespalib/testkit/testapp.h>
+#include <vespa/vespalib/gtest/gtest.h>
namespace search {
@@ -37,7 +35,6 @@ makeDoc10(DocBuilder &b)
return b.endDocument();
}
-
Document::UP
makeDoc11(DocBuilder &b)
{
@@ -51,7 +48,6 @@ makeDoc11(DocBuilder &b)
return b.endDocument();
}
-
Document::UP
makeDoc12(DocBuilder &b)
{
@@ -62,7 +58,6 @@ makeDoc12(DocBuilder &b)
return b.endDocument();
}
-
Document::UP
makeDoc13(DocBuilder &b)
{
@@ -73,7 +68,6 @@ makeDoc13(DocBuilder &b)
return b.endDocument();
}
-
Document::UP
makeDoc14(DocBuilder &b)
{
@@ -84,7 +78,6 @@ makeDoc14(DocBuilder &b)
return b.endDocument();
}
-
Document::UP
makeDoc15(DocBuilder &b)
{
@@ -94,8 +87,7 @@ makeDoc15(DocBuilder &b)
}
-class MockFieldIndexCollection : public IFieldIndexCollection
-{
+class MockFieldIndexCollection : public IFieldIndexCollection {
FieldIndexRemover &_remover;
test::OrderedFieldIndexInserter &_inserter;
FieldLengthCalculator &_calculator;
@@ -122,8 +114,7 @@ public:
};
-struct Fixture
-{
+struct DocumentInverterTest : public ::testing::Test {
Schema _schema;
DocBuilder _b;
SequencedTaskExecutor _invertThreads;
@@ -135,9 +126,7 @@ struct Fixture
MockFieldIndexCollection _fic;
DocumentInverter _inv;
- static Schema
- makeSchema()
- {
+ static Schema makeSchema() {
Schema schema;
schema.addIndexField(Schema::IndexField("f0", DataType::STRING));
schema.addIndexField(Schema::IndexField("f1", DataType::STRING));
@@ -146,7 +135,7 @@ struct Fixture
return schema;
}
- Fixture()
+ DocumentInverterTest()
: _schema(makeSchema()),
_b(_schema),
_invertThreads(2),
@@ -160,9 +149,7 @@ struct Fixture
{
}
- void
- pushDocuments()
- {
+ void pushDocuments() {
_invertThreads.sync();
uint32_t fieldId = 0;
for (auto &inverter : _inv.getInverters()) {
@@ -174,153 +161,143 @@ struct Fixture
}
};
-
-TEST_F("requireThatFreshInsertWorks", Fixture)
+TEST_F(DocumentInverterTest, require_that_fresh_insert_works)
{
- f._inv.invertDocument(10, *makeDoc10(f._b));
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,"
- "w=b,a=10,"
- "w=c,a=10,"
- "w=d,a=10",
- f._inserter.toStr());
+ _inv.invertDocument(10, *makeDoc10(_b));
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,"
+ "w=b,a=10,"
+ "w=c,a=10,"
+ "w=d,a=10",
+ _inserter.toStr());
}
-
-TEST_F("requireThatMultipleDocsWork", Fixture)
+TEST_F(DocumentInverterTest, require_that_multiple_docs_work)
{
- f._inv.invertDocument(10, *makeDoc10(f._b));
- f._inv.invertDocument(11, *makeDoc11(f._b));
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,a=11,"
- "w=b,a=10,a=11,"
- "w=c,a=10,w=d,a=10,"
- "w=e,a=11,"
- "w=f,a=11,"
- "f=1,w=a,a=11,"
- "w=g,a=11",
- f._inserter.toStr());
+ _inv.invertDocument(10, *makeDoc10(_b));
+ _inv.invertDocument(11, *makeDoc11(_b));
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,a=11,"
+ "w=b,a=10,a=11,"
+ "w=c,a=10,w=d,a=10,"
+ "w=e,a=11,"
+ "w=f,a=11,"
+ "f=1,w=a,a=11,"
+ "w=g,a=11",
+ _inserter.toStr());
}
-
-TEST_F("requireThatRemoveWorks", Fixture)
+TEST_F(DocumentInverterTest, require_that_remove_works)
{
- f._inv.getInverter(0)->remove("b", 10);
- f._inv.getInverter(0)->remove("a", 10);
- f._inv.getInverter(0)->remove("b", 11);
- f._inv.getInverter(2)->remove("c", 12);
- f._inv.getInverter(1)->remove("a", 10);
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,r=10,"
- "w=b,r=10,r=11,"
- "f=1,w=a,r=10,"
- "f=2,w=c,r=12",
- f._inserter.toStr());
+ _inv.getInverter(0)->remove("b", 10);
+ _inv.getInverter(0)->remove("a", 10);
+ _inv.getInverter(0)->remove("b", 11);
+ _inv.getInverter(2)->remove("c", 12);
+ _inv.getInverter(1)->remove("a", 10);
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,r=10,"
+ "w=b,r=10,r=11,"
+ "f=1,w=a,r=10,"
+ "f=2,w=c,r=12",
+ _inserter.toStr());
}
-
-TEST_F("requireThatReputWorks", Fixture)
+TEST_F(DocumentInverterTest, require_that_reput_works)
{
- f._inv.invertDocument(10, *makeDoc10(f._b));
- f._inv.invertDocument(10, *makeDoc11(f._b));
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,"
- "w=b,a=10,"
- "w=e,a=10,"
- "w=f,a=10,"
- "f=1,w=a,a=10,"
- "w=g,a=10",
- f._inserter.toStr());
+ _inv.invertDocument(10, *makeDoc10(_b));
+ _inv.invertDocument(10, *makeDoc11(_b));
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,"
+ "w=b,a=10,"
+ "w=e,a=10,"
+ "w=f,a=10,"
+ "f=1,w=a,a=10,"
+ "w=g,a=10",
+ _inserter.toStr());
}
-
-TEST_F("requireThatAbortPendingDocWorks", Fixture)
+TEST_F(DocumentInverterTest, require_that_abort_pending_doc_works)
{
- Document::UP doc10 = makeDoc10(f._b);
- Document::UP doc11 = makeDoc11(f._b);
- Document::UP doc12 = makeDoc12(f._b);
- Document::UP doc13 = makeDoc13(f._b);
- Document::UP doc14 = makeDoc14(f._b);
-
- f._inv.invertDocument(10, *doc10);
- f._inv.invertDocument(11, *doc11);
- f._inv.removeDocument(10);
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=11,"
- "w=b,a=11,"
- "w=e,a=11,"
- "w=f,a=11,"
- "f=1,w=a,a=11,"
- "w=g,a=11",
- f._inserter.toStr());
-
- f._inv.invertDocument(10, *doc10);
- f._inv.invertDocument(11, *doc11);
- f._inv.invertDocument(12, *doc12);
- f._inv.invertDocument(13, *doc13);
- f._inv.invertDocument(14, *doc14);
- f._inv.removeDocument(11);
- f._inv.removeDocument(13);
- f._inserter.reset();
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,"
- "w=b,a=10,"
- "w=c,a=10,"
- "w=d,a=10,"
- "w=doc12,a=12,"
- "w=doc14,a=14,"
- "w=h,a=12,"
- "w=j,a=14",
- f._inserter.toStr());
-
- f._inv.invertDocument(10, *doc10);
- f._inv.invertDocument(11, *doc11);
- f._inv.invertDocument(12, *doc12);
- f._inv.invertDocument(13, *doc13);
- f._inv.invertDocument(14, *doc14);
- f._inv.removeDocument(11);
- f._inv.removeDocument(12);
- f._inv.removeDocument(13);
- f._inv.removeDocument(14);
- f._inserter.reset();
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,"
- "w=b,a=10,"
- "w=c,a=10,"
- "w=d,a=10",
- f._inserter.toStr());
-
-
+ auto doc10 = makeDoc10(_b);
+ auto doc11 = makeDoc11(_b);
+ auto doc12 = makeDoc12(_b);
+ auto doc13 = makeDoc13(_b);
+ auto doc14 = makeDoc14(_b);
+
+ _inv.invertDocument(10, *doc10);
+ _inv.invertDocument(11, *doc11);
+ _inv.removeDocument(10);
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=11,"
+ "w=b,a=11,"
+ "w=e,a=11,"
+ "w=f,a=11,"
+ "f=1,w=a,a=11,"
+ "w=g,a=11",
+ _inserter.toStr());
+
+ _inv.invertDocument(10, *doc10);
+ _inv.invertDocument(11, *doc11);
+ _inv.invertDocument(12, *doc12);
+ _inv.invertDocument(13, *doc13);
+ _inv.invertDocument(14, *doc14);
+ _inv.removeDocument(11);
+ _inv.removeDocument(13);
+ _inserter.reset();
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,"
+ "w=b,a=10,"
+ "w=c,a=10,"
+ "w=d,a=10,"
+ "w=doc12,a=12,"
+ "w=doc14,a=14,"
+ "w=h,a=12,"
+ "w=j,a=14",
+ _inserter.toStr());
+
+ _inv.invertDocument(10, *doc10);
+ _inv.invertDocument(11, *doc11);
+ _inv.invertDocument(12, *doc12);
+ _inv.invertDocument(13, *doc13);
+ _inv.invertDocument(14, *doc14);
+ _inv.removeDocument(11);
+ _inv.removeDocument(12);
+ _inv.removeDocument(13);
+ _inv.removeDocument(14);
+ _inserter.reset();
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,"
+ "w=b,a=10,"
+ "w=c,a=10,"
+ "w=d,a=10",
+ _inserter.toStr());
}
-
-TEST_F("requireThatMixOfAddAndRemoveWorks", Fixture)
+TEST_F(DocumentInverterTest, require_that_mix_of_add_and_remove_works)
{
- f._inv.getInverter(0)->remove("a", 11);
- f._inv.getInverter(0)->remove("c", 9);
- f._inv.getInverter(0)->remove("d", 10);
- f._inv.getInverter(0)->remove("z", 12);
- f._inv.invertDocument(10, *makeDoc10(f._b));
- f.pushDocuments();
- EXPECT_EQUAL("f=0,w=a,a=10,r=11,"
- "w=b,a=10,"
- "w=c,r=9,a=10,"
- "w=d,r=10,a=10,"
- "w=z,r=12",
- f._inserter.toStr());
+ _inv.getInverter(0)->remove("a", 11);
+ _inv.getInverter(0)->remove("c", 9);
+ _inv.getInverter(0)->remove("d", 10);
+ _inv.getInverter(0)->remove("z", 12);
+ _inv.invertDocument(10, *makeDoc10(_b));
+ pushDocuments();
+ EXPECT_EQ("f=0,w=a,a=10,r=11,"
+ "w=b,a=10,"
+ "w=c,r=9,a=10,"
+ "w=d,r=10,a=10,"
+ "w=z,r=12",
+ _inserter.toStr());
}
-
-TEST_F("require that empty document can be inverted", Fixture)
+TEST_F(DocumentInverterTest, require_that_empty_document_can_be_inverted)
{
- f._inv.invertDocument(15, *makeDoc15(f._b));
- f.pushDocuments();
- EXPECT_EQUAL("",
- f._inserter.toStr());
+ _inv.invertDocument(15, *makeDoc15(_b));
+ pushDocuments();
+ EXPECT_EQ("",
+ _inserter.toStr());
}
+}
+}
-} // namespace memoryindex
-} // namespace search
-
-TEST_MAIN() { TEST_RUN_ALL(); }
+GTEST_MAIN_RUN_ALL_TESTS()