summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Musum <musum@yahooinc.com>2024-03-26 18:33:43 +0100
committerHarald Musum <musum@yahooinc.com>2024-03-26 18:33:43 +0100
commit4570c410fd4e9730d80a5e43e78953a09894280e (patch)
treecb5f3b4b002dc970f57f0071e91e367d75d10e66
parent04879cf9b250af7bf79b663b691bdee5d0a1fc4f (diff)
Add (failing) unit test of document update of weighted set serialization
-rw-r--r--document/src/test/java/com/yahoo/document/json/DocumentUpdateJsonSerializerTest.java31
1 files changed, 25 insertions, 6 deletions
diff --git a/document/src/test/java/com/yahoo/document/json/DocumentUpdateJsonSerializerTest.java b/document/src/test/java/com/yahoo/document/json/DocumentUpdateJsonSerializerTest.java
index 2981b09f418..abb31891739 100644
--- a/document/src/test/java/com/yahoo/document/json/DocumentUpdateJsonSerializerTest.java
+++ b/document/src/test/java/com/yahoo/document/json/DocumentUpdateJsonSerializerTest.java
@@ -25,10 +25,10 @@ import org.junit.Test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
import static com.yahoo.test.json.JsonTestHelper.assertJsonEquals;
import static com.yahoo.test.json.JsonTestHelper.inputJson;
+import static java.nio.charset.StandardCharsets.UTF_8;
/**
* Tests roundtrip serialization (JSON -> DocumentUpdate -> Buffer -> DocumentUpdate -> JSON) of document updates.
@@ -104,11 +104,7 @@ public class DocumentUpdateJsonSerializerTest {
DocumentUpdateJsonSerializer serializer = new DocumentUpdateJsonSerializer(outputStream);
serializer.serialize(update);
- try {
- return new String(outputStream.toByteArray(), "UTF-8");
- } catch (UnsupportedEncodingException e) {
- throw new RuntimeException(e);
- }
+ return outputStream.toString(UTF_8);
}
private static void roundtripSerializeJsonAndMatch(String jsonDoc, String expectedJsonDoc) {
@@ -196,6 +192,29 @@ public class DocumentUpdateJsonSerializerTest {
}
@Test
+ public void testAddWeightedSet() {
+ roundtripSerializeJsonAndMatch(inputJson(
+ "{",
+ " 'update': 'DOCUMENT_ID',",
+ " 'fields': {",
+ " 'int_set': {",
+ " 'add': {",
+ " '123': 2,",
+ " '789': 3",
+ " }",
+ " },",
+ " 'string_set': {",
+ " 'add': {",
+ " 'meow': 4,",
+ " 'slurp': 5",
+ " }",
+ " }",
+ " }",
+ "}"
+ ));
+ }
+
+ @Test
public void testAddUpdate() {
roundtripSerializeJsonAndMatch(inputJson(
"{",