diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-02-05 15:00:38 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-02-05 15:00:38 +0000 |
commit | f1a62e537615fe2664b8a6fc1347ef7c97043d14 (patch) | |
tree | b0bcb8ad96babd931268dc2d660121d7f4c9df1f /searchcore/src/tests/proton/common/attribute_updater | |
parent | 8679b9bb4f541b64cd5148b98277a0f4a72491c4 (diff) |
Specify document type in code instead of config file.
Diffstat (limited to 'searchcore/src/tests/proton/common/attribute_updater')
-rw-r--r-- | searchcore/src/tests/proton/common/attribute_updater/attribute_updater_test.cpp | 39 | ||||
-rw-r--r-- | searchcore/src/tests/proton/common/attribute_updater/doctypes.cfg | 180 |
2 files changed, 35 insertions, 184 deletions
diff --git a/searchcore/src/tests/proton/common/attribute_updater/attribute_updater_test.cpp b/searchcore/src/tests/proton/common/attribute_updater/attribute_updater_test.cpp index bb9953e3019..9be34bc9ba2 100644 --- a/searchcore/src/tests/proton/common/attribute_updater/attribute_updater_test.cpp +++ b/searchcore/src/tests/proton/common/attribute_updater/attribute_updater_test.cpp @@ -8,6 +8,7 @@ #include <vespa/document/fieldvalue/stringfieldvalue.h> #include <vespa/document/fieldvalue/referencefieldvalue.h> #include <vespa/document/fieldvalue/weightedsetfieldvalue.h> +#include <vespa/document/repo/configbuilder.h> #include <vespa/document/repo/documenttyperepo.h> #include <vespa/document/update/addvalueupdate.h> #include <vespa/document/update/assignvalueupdate.h> @@ -25,12 +26,17 @@ LOG_SETUP("attribute_updater_test"); using namespace document; +using document::config_builder::Struct; +using document::config_builder::Wset; +using document::config_builder::Array; +using document::config_builder::Map; using search::attribute::BasicType; using search::attribute::Config; using search::attribute::CollectionType; using search::attribute::Reference; using search::attribute::ReferenceAttribute; + namespace search { //----------------------------------------------------------------------------- @@ -61,6 +67,27 @@ typedef AttributeVector::WeightedInt WeightedInt; typedef AttributeVector::WeightedFloat WeightedFloat; typedef AttributeVector::WeightedString WeightedString; +std::unique_ptr<DocumentTypeRepo> +makeDocumentTypeRepo() +{ + config_builder::DocumenttypesConfigBuilderHelper builder; + builder.document(222, "testdoc", + Struct("testdoc.header") + .addField("int", DataType::T_INT) + .addField("float", DataType::T_FLOAT) + .addField("string", DataType::T_STRING) + .addField("aint", Array(DataType::T_INT)) + .addField("afloat", Array(DataType::T_FLOAT)) + .addField("astring", Array(DataType::T_STRING)) + .addField("wsint", Wset(DataType::T_INT)) + .addField("wsfloat", Wset(DataType::T_FLOAT)) + .addField("wsstring", Wset(DataType::T_STRING)) + .addField("ref", 333), + Struct("testdoc.body")) + .referenceType(333, 222); + return std::make_unique<DocumentTypeRepo>(builder.config()); +} + class Test : public vespalib::TestApp { private: @@ -136,11 +163,12 @@ private: void requireThatArrayAttributesAreUpdated(); void requireThatWeightedSetAttributesAreUpdated(); - DocumentTypeRepo _repo; - const DocumentType* _docType; + std::unique_ptr<DocumentTypeRepo> _repo; + const DocumentType *_docType; public: Test(); + ~Test(); int Main() override; }; @@ -367,11 +395,14 @@ Test::requireThatWeightedSetAttributesAreUpdated() } Test::Test() - : _repo(readDocumenttypesConfig(TEST_PATH("doctypes.cfg"))), - _docType(_repo.getDocumentType("testdoc")) + : _repo(makeDocumentTypeRepo()), + _docType(_repo->getDocumentType("testdoc")) { } +Test::~Test() = default; + + int Test::Main() { diff --git a/searchcore/src/tests/proton/common/attribute_updater/doctypes.cfg b/searchcore/src/tests/proton/common/attribute_updater/doctypes.cfg deleted file mode 100644 index 7da997e6cc9..00000000000 --- a/searchcore/src/tests/proton/common/attribute_updater/doctypes.cfg +++ /dev/null @@ -1,180 +0,0 @@ -enablecompression false -documenttype[1] -documenttype[0].id -1175657560 -documenttype[0].name "testdoc" -documenttype[0].version 0 -documenttype[0].headerstruct -1636745577 -documenttype[0].bodystruct 1878320748 -documenttype[0].inherits[0] -documenttype[0].datatype[8] -documenttype[0].datatype[0].id 100 -documenttype[0].datatype[0].type ARRAY -documenttype[0].datatype[0].array.element.id 0 -documenttype[0].datatype[0].map.key.id 0 -documenttype[0].datatype[0].map.value.id 0 -documenttype[0].datatype[0].wset.key.id 0 -documenttype[0].datatype[0].wset.createifnonexistent false -documenttype[0].datatype[0].wset.removeifzero false -documenttype[0].datatype[0].annotationref.annotation.id 0 -documenttype[0].datatype[0].sstruct.name "" -documenttype[0].datatype[0].sstruct.version 0 -documenttype[0].datatype[0].sstruct.compression.type NONE -documenttype[0].datatype[0].sstruct.compression.level 0 -documenttype[0].datatype[0].sstruct.compression.threshold 95 -documenttype[0].datatype[0].sstruct.compression.minsize 200 -documenttype[0].datatype[0].sstruct.field[0] -documenttype[0].datatype[1].id 101 -documenttype[0].datatype[1].type ARRAY -documenttype[0].datatype[1].array.element.id 1 -documenttype[0].datatype[1].map.key.id 0 -documenttype[0].datatype[1].map.value.id 0 -documenttype[0].datatype[1].wset.key.id 0 -documenttype[0].datatype[1].wset.createifnonexistent false -documenttype[0].datatype[1].wset.removeifzero false -documenttype[0].datatype[1].annotationref.annotation.id 0 -documenttype[0].datatype[1].sstruct.name "" -documenttype[0].datatype[1].sstruct.version 0 -documenttype[0].datatype[1].sstruct.compression.type NONE -documenttype[0].datatype[1].sstruct.compression.level 0 -documenttype[0].datatype[1].sstruct.compression.threshold 95 -documenttype[0].datatype[1].sstruct.compression.minsize 200 -documenttype[0].datatype[1].sstruct.field[0] -documenttype[0].datatype[2].id 102 -documenttype[0].datatype[2].type ARRAY -documenttype[0].datatype[2].array.element.id 2 -documenttype[0].datatype[2].map.key.id 0 -documenttype[0].datatype[2].map.value.id 0 -documenttype[0].datatype[2].wset.key.id 0 -documenttype[0].datatype[2].wset.createifnonexistent false -documenttype[0].datatype[2].wset.removeifzero false -documenttype[0].datatype[2].annotationref.annotation.id 0 -documenttype[0].datatype[2].sstruct.name "" -documenttype[0].datatype[2].sstruct.version 0 -documenttype[0].datatype[2].sstruct.compression.type NONE -documenttype[0].datatype[2].sstruct.compression.level 0 -documenttype[0].datatype[2].sstruct.compression.threshold 95 -documenttype[0].datatype[2].sstruct.compression.minsize 200 -documenttype[0].datatype[2].sstruct.field[0] -documenttype[0].datatype[3].id 200 -documenttype[0].datatype[3].type WSET -documenttype[0].datatype[3].array.element.id 0 -documenttype[0].datatype[3].map.key.id 0 -documenttype[0].datatype[3].map.value.id 0 -documenttype[0].datatype[3].wset.key.id 0 -documenttype[0].datatype[3].wset.createifnonexistent false -documenttype[0].datatype[3].wset.removeifzero false -documenttype[0].datatype[3].annotationref.annotation.id 0 -documenttype[0].datatype[3].sstruct.name "" -documenttype[0].datatype[3].sstruct.version 0 -documenttype[0].datatype[3].sstruct.compression.type NONE -documenttype[0].datatype[3].sstruct.compression.level 0 -documenttype[0].datatype[3].sstruct.compression.threshold 95 -documenttype[0].datatype[3].sstruct.compression.minsize 200 -documenttype[0].datatype[3].sstruct.field[0] -documenttype[0].datatype[4].id 201 -documenttype[0].datatype[4].type WSET -documenttype[0].datatype[4].array.element.id 0 -documenttype[0].datatype[4].map.key.id 0 -documenttype[0].datatype[4].map.value.id 0 -documenttype[0].datatype[4].wset.key.id 1 -documenttype[0].datatype[4].wset.createifnonexistent false -documenttype[0].datatype[4].wset.removeifzero false -documenttype[0].datatype[4].annotationref.annotation.id 0 -documenttype[0].datatype[4].sstruct.name "" -documenttype[0].datatype[4].sstruct.version 0 -documenttype[0].datatype[4].sstruct.compression.type NONE -documenttype[0].datatype[4].sstruct.compression.level 0 -documenttype[0].datatype[4].sstruct.compression.threshold 95 -documenttype[0].datatype[4].sstruct.compression.minsize 200 -documenttype[0].datatype[4].sstruct.field[0] -documenttype[0].datatype[5].id 202 -documenttype[0].datatype[5].type WSET -documenttype[0].datatype[5].array.element.id 0 -documenttype[0].datatype[5].map.key.id 0 -documenttype[0].datatype[5].map.value.id 0 -documenttype[0].datatype[5].wset.key.id 2 -documenttype[0].datatype[5].wset.createifnonexistent false -documenttype[0].datatype[5].wset.removeifzero false -documenttype[0].datatype[5].annotationref.annotation.id 0 -documenttype[0].datatype[5].sstruct.name "" -documenttype[0].datatype[5].sstruct.version 0 -documenttype[0].datatype[5].sstruct.compression.type NONE -documenttype[0].datatype[5].sstruct.compression.level 0 -documenttype[0].datatype[5].sstruct.compression.threshold 95 -documenttype[0].datatype[5].sstruct.compression.minsize 200 -documenttype[0].datatype[5].sstruct.field[0] -documenttype[0].datatype[6].id -1636745577 -documenttype[0].datatype[6].type STRUCT -documenttype[0].datatype[6].array.element.id 0 -documenttype[0].datatype[6].map.key.id 0 -documenttype[0].datatype[6].map.value.id 0 -documenttype[0].datatype[6].wset.key.id 0 -documenttype[0].datatype[6].wset.createifnonexistent false -documenttype[0].datatype[6].wset.removeifzero false -documenttype[0].datatype[6].annotationref.annotation.id 0 -documenttype[0].datatype[6].sstruct.name "testdoc.header" -documenttype[0].datatype[6].sstruct.version 0 -documenttype[0].datatype[6].sstruct.compression.type NONE -documenttype[0].datatype[6].sstruct.compression.level 0 -documenttype[0].datatype[6].sstruct.compression.threshold 90 -documenttype[0].datatype[6].sstruct.compression.minsize 0 -documenttype[0].datatype[6].sstruct.field[10] -documenttype[0].datatype[6].sstruct.field[0].name "afloat" -documenttype[0].datatype[6].sstruct.field[0].id 401182245 -documenttype[0].datatype[6].sstruct.field[0].id_v6 303812879 -documenttype[0].datatype[6].sstruct.field[0].datatype 101 -documenttype[0].datatype[6].sstruct.field[1].name "aint" -documenttype[0].datatype[6].sstruct.field[1].id 19542829 -documenttype[0].datatype[6].sstruct.field[1].id_v6 764769238 -documenttype[0].datatype[6].sstruct.field[1].datatype 100 -documenttype[0].datatype[6].sstruct.field[2].name "astring" -documenttype[0].datatype[6].sstruct.field[2].id 1494118564 -documenttype[0].datatype[6].sstruct.field[2].id_v6 1745177607 -documenttype[0].datatype[6].sstruct.field[2].datatype 102 -documenttype[0].datatype[6].sstruct.field[3].name "float" -documenttype[0].datatype[6].sstruct.field[3].id 151686688 -documenttype[0].datatype[6].sstruct.field[3].id_v6 827904364 -documenttype[0].datatype[6].sstruct.field[3].datatype 1 -documenttype[0].datatype[6].sstruct.field[4].name "int" -documenttype[0].datatype[6].sstruct.field[4].id 123383020 -documenttype[0].datatype[6].sstruct.field[4].id_v6 2014709351 -documenttype[0].datatype[6].sstruct.field[4].datatype 0 -documenttype[0].datatype[6].sstruct.field[5].name "string" -documenttype[0].datatype[6].sstruct.field[5].id 1572342091 -documenttype[0].datatype[6].sstruct.field[5].id_v6 1847335717 -documenttype[0].datatype[6].sstruct.field[5].datatype 2 -documenttype[0].datatype[6].sstruct.field[6].name "wsfloat" -documenttype[0].datatype[6].sstruct.field[6].id 821634779 -documenttype[0].datatype[6].sstruct.field[6].id_v6 1168403784 -documenttype[0].datatype[6].sstruct.field[6].datatype 201 -documenttype[0].datatype[6].sstruct.field[7].name "wsint" -documenttype[0].datatype[6].sstruct.field[7].id 1160390473 -documenttype[0].datatype[6].sstruct.field[7].id_v6 1177062897 -documenttype[0].datatype[6].sstruct.field[7].datatype 200 -documenttype[0].datatype[6].sstruct.field[8].name "wsstring" -documenttype[0].datatype[6].sstruct.field[8].id 981031285 -documenttype[0].datatype[6].sstruct.field[8].id_v6 682978193 -documenttype[0].datatype[6].sstruct.field[8].datatype 202 -documenttype[0].datatype[6].sstruct.field[9].name "ref" -documenttype[0].datatype[6].sstruct.field[9].id 981031286 -documenttype[0].datatype[6].sstruct.field[9].id_v6 682978194 -documenttype[0].datatype[6].sstruct.field[9].datatype -1895788438 -documenttype[0].datatype[7].id 1878320748 -documenttype[0].datatype[7].type STRUCT -documenttype[0].datatype[7].array.element.id 0 -documenttype[0].datatype[7].map.key.id 0 -documenttype[0].datatype[7].map.value.id 0 -documenttype[0].datatype[7].wset.key.id 0 -documenttype[0].datatype[7].wset.createifnonexistent false -documenttype[0].datatype[7].wset.removeifzero false -documenttype[0].datatype[7].annotationref.annotation.id 0 -documenttype[0].datatype[7].sstruct.name "testdoc.body" -documenttype[0].datatype[7].sstruct.version 0 -documenttype[0].datatype[7].sstruct.compression.type NONE -documenttype[0].datatype[7].sstruct.compression.level 0 -documenttype[0].datatype[7].sstruct.compression.threshold 90 -documenttype[0].datatype[7].sstruct.compression.minsize 0 -documenttype[0].datatype[7].sstruct.field[0] -documenttype[0].annotationtype[0] -documenttype[0].referencetype[0].id -1895788438 -documenttype[0].referencetype[0].target_type_id -1175657560 |