Switch default stream output to Sodium SR1
[controller.git] / opendaylight / md-sal / sal-clustering-commons / src / test / java / org / opendaylight / controller / cluster / datastore / node / utils / stream / SerializationUtilsTest.java
index ad548340e398480e0e5b1ea3017521378ff1ed2d..610a2328f367590cf04af176cad64d28dc853056 100644 (file)
@@ -29,6 +29,7 @@ import org.junit.Test;
 import org.opendaylight.yangtools.util.xml.UntrustedXML;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.AnyXmlNode;
 import org.opendaylight.yangtools.yang.data.api.schema.AugmentationNode;
 import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode;
@@ -53,7 +54,7 @@ public class SerializationUtilsTest {
     public void testSerializeDeserializeNodes() throws IOException {
         final NormalizedNode<?, ?> normalizedNode = createNormalizedNode();
         final byte[] bytes = serializeNormalizedNode(normalizedNode);
-        assertEquals(10774, bytes.length);
+        assertEquals(10564, bytes.length);
         assertEquals(normalizedNode, deserializeNormalizedNode(bytes));
     }
 
@@ -67,7 +68,7 @@ public class SerializationUtilsTest {
                 .withValue(new DOMSource(parse))
                 .build();
         final byte[] bytes = serializeNormalizedNode(anyXmlNode);
-        assertEquals(115, bytes.length);
+        assertEquals(113, bytes.length);
         final NormalizedNode<?, ?> deserialized = deserializeNormalizedNode(bytes);
         final DOMSource value = (DOMSource) deserialized.getValue();
         final Diff diff = XMLUnit.compareXML((Document) anyXmlNode.getValue().getNode(),
@@ -88,7 +89,7 @@ public class SerializationUtilsTest {
         SerializationUtils.writePath(out, path);
 
         final byte[] bytes = bos.toByteArray();
-        assertEquals(150, bytes.length);
+        assertEquals(119, bytes.length);
 
         final YangInstanceIdentifier deserialized =
                 SerializationUtils.readPath(new DataInputStream(new ByteArrayInputStream(bytes)));
@@ -104,7 +105,7 @@ public class SerializationUtilsTest {
         SerializationUtils.writeNodeAndPath(out, path, node);
 
         final byte[] bytes = bos.toByteArray();
-        assertEquals(10783, bytes.length);
+        assertEquals(10566, bytes.length);
 
         final DataInputStream in = new DataInputStream(new ByteArrayInputStream(bytes));
         final AtomicBoolean applierCalled = new AtomicBoolean(false);
@@ -116,6 +117,25 @@ public class SerializationUtilsTest {
         assertTrue(applierCalled.get());
     }
 
+    @Test
+    public void testSerializeDeserializeAugmentNoref() throws IOException {
+        final YangInstanceIdentifier expected = YangInstanceIdentifier.create(
+            AugmentationIdentifier.create(ImmutableSet.of(
+                QName.create("foo", "leaf1"),
+                QName.create("bar", "leaf2"))));
+
+        final ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        final DataOutput out = new DataOutputStream(bos);
+        SerializationUtils.writePath(out, expected);
+
+        final byte[] bytes = bos.toByteArray();
+        assertEquals(37, bytes.length);
+
+        final DataInputStream in = new DataInputStream(new ByteArrayInputStream(bytes));
+        final YangInstanceIdentifier read = SerializationUtils.readPath(in);
+        assertEquals(expected, read);
+    }
+
     private static NormalizedNode<?, ?> deserializeNormalizedNode(final byte[] bytes) throws IOException {
         return SerializationUtils.readNormalizedNode(new DataInputStream(new ByteArrayInputStream(bytes))).get();
     }