Populate data/ hierarchy
[yangtools.git] / data / yang-data-impl / src / test / java / org / opendaylight / yangtools / yang / data / impl / schema / tree / NormalizedNodePrettyTreeTest.java
1 /*
2  * Copyright (c) 2021 PANTHEON.tech s.r.o. All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.yangtools.yang.data.impl.schema.tree;
9
10 import static org.junit.Assert.assertEquals;
11
12 import org.junit.Test;
13
14 public class NormalizedNodePrettyTreeTest extends AbstractPrettyTreeTest {
15     @Test
16     public void testMapNodePrettyTree() {
17         assertEquals(String.join("\n",
18             "systemMapNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)list-a = {",
19             "    mapEntryNode list-a = {",
20             "        leafNode leaf-a = \"bar\"",
21             "        systemMapNode list-b = {",
22             "            mapEntryNode list-b = {",
23             "                leafNode leaf-b = \"two\"",
24             "            }",
25             "            mapEntryNode list-b = {",
26             "                leafNode leaf-b = \"one\"",
27             "            }",
28             "        }",
29             "    }",
30             "    mapEntryNode list-a = {",
31             "        leafNode leaf-a = \"foo\"",
32             "    }",
33             "}"), createMapNode().prettyTree().get());
34     }
35
36     @Test
37     public void testMapEntryPrettyTree() {
38         assertEquals(String.join("\n",
39             "mapEntryNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)list-a = {",
40             "    leafNode leaf-a = \"bar\"",
41             "    systemMapNode list-b = {",
42             "        mapEntryNode list-b = {",
43             "            leafNode leaf-b = \"two\"",
44             "        }",
45             "        mapEntryNode list-b = {",
46             "            leafNode leaf-b = \"one\"",
47             "        }",
48             "    }",
49             "}"), createMapEntryNode().prettyTree().get());
50     }
51
52     @Test
53     public void testChoicePrettyTree() {
54         assertEquals(String.join("\n",
55             "choiceNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)choice = {",
56             "    augmentationNode = {",
57             "        leafNode augment = \"Augmented leaf value\"",
58             "    }",
59             "}"), createChoiceNode().prettyTree().get());
60     }
61
62     @Test
63     public void testAugmentationPrettyTree() {
64         assertEquals(String.join("\n",
65             "augmentationNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13) = {",
66             "    leafNode augment = \"Augmented leaf value\"",
67             "}"), createAugmentationNode().prettyTree().get());
68     }
69
70     @Test
71     public void testLeafPrettyTree() {
72         assertEquals("leafNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)leaf = \"Leaf value\"",
73             createLeafNode().prettyTree().get());
74     }
75
76     @Test
77     public void testLeafSetPrettyTree() {
78         assertEquals(String.join("\n",
79             "systemLeafSetNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)leaf-set = {",
80             "    leafSetEntryNode leaf-set = \"Leaf set value\"",
81             "}"), createLeafSetNode().prettyTree().get());
82     }
83
84     @Test
85     public void testUserLeafSetPrettyTree() {
86         assertEquals(String.join("\n",
87             "userLeafSetNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)user-leaf-set = {",
88             "    leafSetEntryNode user-leaf-set = \"User leaf set value\"",
89             "}"), createUserLeafSetNode().prettyTree().get());
90     }
91
92     @Test
93     public void testUserMapPrettyTree() {
94         assertEquals(String.join("\n",
95             "userMapNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)user-map = {",
96             "    mapEntryNode user-map = {",
97             "        leafNode user-map-entry = \"User map entry value\"",
98             "    }",
99             "}"), createUserMapNode().prettyTree().get());
100     }
101
102     @Test
103     public void testUserMapEntryPrettyTree() {
104         assertEquals(String.join("\n",
105             "mapEntryNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)user-map = {",
106             "    leafNode user-map-entry = \"User map entry value\"",
107             "}"), createUserMapEntryNode().prettyTree().get());
108     }
109
110     @Test
111     public void testUnkeyedListPrettyTree() {
112         assertEquals(String.join("\n",
113             "unkeyedListNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)unkeyed-list = {",
114             "    unkeyedListEntryNode unkeyed-list-entry = {",
115             "        leafNode unkeyed-list-leaf = \"Unkeyed list leaf value\"",
116             "    }",
117             "}"), createUnkeyedListNode().prettyTree().get());
118     }
119
120     @Test
121     public void testUnkeyedListEntryPrettyTree() {
122         assertEquals(String.join("\n",
123             "unkeyedListEntryNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)unkeyed-list-entry = {",
124             "    leafNode unkeyed-list-leaf = \"Unkeyed list leaf value\"",
125             "}"), createUnkeyedListEntryNode().prettyTree().get());
126     }
127
128     @Test
129     public void testAnyDataPrettyTree() {
130         assertEquals(String.join("\n",
131             "anydataNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)any-data = (java.lang.String)"),
132             createAnyDataNode().prettyTree().get());
133     }
134
135     @Test
136     public void testContainerPrettyTree() {
137         assertEquals(String.join("\n",
138             "containerNode (urn:opendaylight:controller:sal:dom:store:test@2014-03-13)root = {",
139             "    userMapNode user-map = {",
140             "        mapEntryNode user-map = {",
141             "            leafNode user-map-entry = \"User map entry value\"",
142             "        }",
143             "    }",
144             "    userLeafSetNode user-leaf-set = {",
145             "        leafSetEntryNode user-leaf-set = \"User leaf set value\"",
146             "    }",
147             "    systemMapNode list-a = {",
148             "        mapEntryNode list-a = {",
149             "            leafNode leaf-a = \"bar\"",
150             "            systemMapNode list-b = {",
151             "                mapEntryNode list-b = {",
152             "                    leafNode leaf-b = \"two\"",
153             "                }",
154             "                mapEntryNode list-b = {",
155             "                    leafNode leaf-b = \"one\"",
156             "                }",
157             "            }",
158             "        }",
159             "        mapEntryNode list-a = {",
160             "            leafNode leaf-a = \"foo\"",
161             "        }",
162             "    }",
163             "    containerNode (urn:opendaylight:controller:sal:dom:store:another)another = {",
164             "        systemMapNode list-from-another-namespace = {",
165             "            mapEntryNode list-from-another-namespace = {",
166             "                leafNode leaf-from-another-namespace = \"Leaf from another namespace value\"",
167             "            }",
168             "        }",
169             "    }",
170             "    choiceNode choice = {",
171             "        augmentationNode = {",
172             "            leafNode augment = \"Augmented leaf value\"",
173             "        }",
174             "    }",
175             "    anydataNode any-data = (java.lang.String)",
176             "    unkeyedListNode unkeyed-list = {",
177             "        unkeyedListEntryNode unkeyed-list-entry = {",
178             "            leafNode unkeyed-list-leaf = \"Unkeyed list leaf value\"",
179             "        }",
180             "    }",
181             "    leafNode leaf = \"Leaf value\"",
182             "    systemLeafSetNode leaf-set = {",
183             "        leafSetEntryNode leaf-set = \"Leaf set value\"",
184             "    }",
185             "}"), createContainerNode().prettyTree().get());
186     }
187 }