aboutsummaryrefslogtreecommitdiffstats
path: root/document/src/tests/documentupdatetestcase.cpp
diff options
context:
space:
mode:
authorGeir Storli <geirst@verizonmedia.com>2019-02-26 14:24:34 +0000
committerGeir Storli <geirst@verizonmedia.com>2019-02-26 14:24:34 +0000
commit4e59ff8ddb8432dbb3e90a2b05c5e435bd36d31b (patch)
tree8675c46a28080b3e4613563af3a0692001cf3463 /document/src/tests/documentupdatetestcase.cpp
parent81452a7f3bfa30ec2282eb6b616155ad797b24c0 (diff)
More testing of roundtrip serialization of tensor modify update.
Diffstat (limited to 'document/src/tests/documentupdatetestcase.cpp')
-rw-r--r--document/src/tests/documentupdatetestcase.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/document/src/tests/documentupdatetestcase.cpp b/document/src/tests/documentupdatetestcase.cpp
index 382d6f9a83b..b2a9426a502 100644
--- a/document/src/tests/documentupdatetestcase.cpp
+++ b/document/src/tests/documentupdatetestcase.cpp
@@ -32,6 +32,7 @@
using namespace document::config_builder;
using vespalib::eval::TensorSpec;
+using vespalib::eval::ValueType;
using vespalib::tensor::DefaultTensorEngine;
using vespalib::tensor::Tensor;
using vespalib::nbostream;
@@ -998,6 +999,15 @@ TEST(DocumentUpdateTest, tensor_modify_update_can_be_roundtrip_serialized)
f.assertRoundtripSerialize(TensorModifyUpdate(TensorModifyUpdate::Operation::MULTIPLY, f.makeBaselineTensor()));
}
+TEST(DocumentUpdateTest, tensor_modify_update_on_dense_tensor_can_be_roundtrip_serialized)
+{
+ TensorUpdateFixture f("dense_tensor");
+ vespalib::string sparseType("tensor(x{})");
+ TensorDataType sparseTensorType(ValueType::from_spec(sparseType));
+ auto sparseTensor = makeTensorFieldValue(TensorSpec(sparseType).add({{"x","0"}}, 2), sparseTensorType);
+ f.assertRoundtripSerialize(TensorModifyUpdate(TensorModifyUpdate::Operation::REPLACE, std::move(sparseTensor)));
+}
+
TEST(DocumentUpdateTest, tensor_add_update_throws_on_non_tensor_field)
{
TensorUpdateFixture f;