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;
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));
}
.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(),
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)));
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);
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();
}