Merge "Fix the build errors due to the class change of InstanceIdentifier to YangInst...
[controller.git] / opendaylight / md-sal / sal-protocolbuffer-encoding / src / test / java / org / opendaylight / controller / cluster / datastore / node / NormalizedNodeToProtocolBufferNodeTest.java
1 package org.opendaylight.controller.cluster.datastore.node;
2
3
4 import com.google.common.collect.Lists;
5 import org.junit.Assert;
6 import org.junit.Test;
7 import org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages;
8 import org.opendaylight.controller.cluster.datastore.util.NormalizedNodeXmlConverterTest;
9 import org.opendaylight.yangtools.yang.common.QName;
10 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
11 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
12
13 import java.util.Iterator;
14
15 /**
16  * @author: syedbahm
17  * Date: 7/2/14
18  */
19 public class NormalizedNodeToProtocolBufferNodeTest {
20
21   private String instanceIdentifierToString(YangInstanceIdentifier id){
22     Iterable<YangInstanceIdentifier.PathArgument> iterable = id.getPathArguments();
23     Iterator iterator = iterable.iterator();
24     String path="";
25     while (iterator.hasNext()) {
26        path += "/"+iterator.next().toString();
27
28     }
29     return path;
30   }
31   @Test
32   public void testNormalizedNodeToNodeSerialization (){
33     NormalizedNode<?,?> nn = NormalizedNodeXmlConverterTest.augmentChoiceExpectedNode();
34     YangInstanceIdentifier id = YangInstanceIdentifier.create(
35         Lists.newArrayList(NormalizedNodeXmlConverterTest.getNodeIdentifier("container")));
36
37     NormalizedNodeToProtocolBufferNode nnn = new NormalizedNodeToProtocolBufferNode();
38     nnn.encode(instanceIdentifierToString(id), nn);
39     NormalizedNodeMessages.Node node = nnn.getContainer().getNormalizedNode();
40     Assert.assertTrue(node.getChildCount()>0);
41   }
42
43   @Test
44   public void testNormalizedNodeToNodeSerializationChoiceNode() {
45     QName CH2_QNAME = QName.create("urn:opendaylight:params:xml:ns:yang:controller:test", "2014-03-13", "ch2");
46     NormalizedNode
47         choice = NormalizedNodeXmlConverterTest.augmentChoiceExpectedNode()
48         .getChild(new YangInstanceIdentifier.NodeIdentifier(CH2_QNAME))
49         .get();
50
51     YangInstanceIdentifier id = YangInstanceIdentifier.create(
52         Lists.newArrayList(NormalizedNodeXmlConverterTest.getNodeIdentifier("ch2")));
53
54     NormalizedNodeToProtocolBufferNode nnn = new NormalizedNodeToProtocolBufferNode();
55     nnn.encode(instanceIdentifierToString(id), choice);
56
57     NormalizedNodeMessages.Node node = nnn.getContainer().getNormalizedNode();
58
59     Assert.assertTrue(node.getChildCount()==2);
60
61
62
63   }
64
65 }