2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.ccsdk.sli.plugins.yangserializers.dfserializer;
24 * Unit test case utilities for data format serializer and restconf api call
27 public final class DataFormatUtilsTest {
29 static final String ENCODE_TO_JSON_ID = "{\n" +
30 " \"identity-test:con1\": {\n" +
31 " \"interfaces\": {\n" +
32 " \"int-list\": [\n" +
34 " \"iden\": \"optical\",\n" +
35 " \"available\": {\n" +
38 " \"identity-types:Loopback\",\n" +
39 " \"identity-types-second:Ethernet" +
42 " \"leaf1\": \"58\",\n" +
43 " \"leaf2\": \"identity-types-second:iden" +
48 " \"iden\": \"214748364\",\n" +
49 " \"available\": {\n" +
52 " \"identity-types:Loopback\",\n" +
53 " \"identity-types-second:Ethernet" +
56 " \"leaf1\": \"8888\",\n" +
57 " \"leaf2\": \"identity-types-second:ide" +
63 " \"interface\": \"identity-types:physical\"\n" +
65 " \"identity-test:l\": \"abc\"\n" +
68 static final String ENCODE_TO_XML_ID = "<?xml version=\"1.0\" encoding=" +
69 "\"UTF-8\" standalone=\"no\"?>\n" +
70 "<con1 xmlns=\"identity:ns:test:json:ser\">\n" +
73 " <iden>optical</iden>\n" +
76 " <ll xmlns:yangid=\"identity:list:ns:test:json:se" +
77 "r\">yangid:Loopback</ll>\n" +
78 " <ll xmlns:yangid=\"identity:list:second:ns:test" +
79 ":json:ser\">yangid:Ethernet</ll>\n" +
80 " <leaf1>58</leaf1>\n" +
81 " <leaf2 xmlns:yangid=\"identity:list:second:ns:t" +
82 "est:json:ser\">yangid:iden2</leaf2>\n" +
86 " <iden>214748364</iden>\n" +
89 " <ll xmlns:yangid=\"identity:list:ns:test:json:s" +
90 "er\">yangid:Loopback</ll>\n" +
91 " <ll xmlns:yangid=\"identity:list:second:ns:test" +
92 ":json:ser\">yangid:Ethernet</ll>\n" +
93 " <leaf1>8888</leaf1>\n" +
94 " <leaf2 xmlns:yangid=\"identity:list:second:ns:t" +
95 "est:json:ser\">yangid:iden2</leaf2>\n" +
99 " <interface xmlns:yangid=\"identity:list:ns:test:json:ser\">" +
100 "yangid:physical</interface>\n" +
103 static final String ENCODE_TO_JSON_YANG = "{\n" +
104 " \"test-yang:cont2\": {\n" +
111 " \"leaf1\": \"true\",\n" +
118 " \"leaf9\": \"abc\"\n" +
121 " \"leaf9\": \"abc\"\n" +
124 " \"leaf3\": \"abc\",\n" +
125 " \"leaf2\": \"abc\",\n" +
128 " \"leaf8\": \"abc\"\n" +
131 " \"leaf8\": \"abc\"\n" +
135 " \"leaf11\": \"abc\"\n" +
143 " \"leaf1\": \"true\",\n" +
148 " \"leaf3\": \"abc\",\n" +
151 " \"leaf9\": \"abc\"\n" +
154 " \"leaf9\": \"abc\"\n" +
159 " \"leaf8\": \"abc\"\n" +
162 " \"leaf8\": \"abc\"\n" +
165 " \"leaf2\": \"abc\",\n" +
167 " \"leaf11\": \"abc\"\n" +
180 " \"leaf10\": \"abc\",\n" +
181 " \"test-augment:cont13\": {\n" +
188 " \"leaf27\": \"abc\"\n" +
191 " \"leaf27\": \"abc\"\n" +
194 " \"leaf28\": \"abc\",\n" +
196 " \"leaf26\": \"abc\"\n" +
199 " \"test-augment:list7\": [\n" +
201 " \"leaf14\": \"test\"\n" +
204 " \"leaf14\": \"create\"\n" +
207 " \"test-augment:leaf15\": \"abc\",\n" +
208 " \"test-augment:ll6\": [\n" +
209 " \"unbounded\",\n" +
212 " \"test-augment:cont5\": {\n" +
213 " \"leaf13\": \"true\"\n" +
221 " \"leaf10\": \"abc\"\n" +
223 " \"leaf5\": \"abc\",\n" +
226 " \"leaf4\": \"abc\"\n" +
229 " \"leaf4\": \"abc\"\n" +
232 " \"leaf12\": \"abc\",\n" +
233 " \"leaf6\": \"abc\",\n" +
236 " \"leaf11\": \"abc\"\n" +
239 " \"leaf11\": \"abc\"\n" +
245 static final String ENCODE_TO_XML_YANG = "<?xml version=\"1.0\" encoding" +
246 "=\"UTF-8\" standalone=\"no\"?>\n" +
247 "<cont2 xmlns=\"urn:opendaylight:params:xml:ns:yang:test\">\n" +
249 " <ll1>abc</ll1>\n" +
250 " <ll1>abc</ll1>\n" +
251 " <leaf1>true</leaf1>\n" +
252 " <ll2>abc</ll2>\n" +
253 " <ll2>abc</ll2>\n" +
255 " <leaf9>abc</leaf9>\n" +
258 " <leaf9>abc</leaf9>\n" +
260 " <leaf3>abc</leaf3>\n" +
261 " <leaf2>abc</leaf2>\n" +
263 " <leaf8>abc</leaf8>\n" +
266 " <leaf8>abc</leaf8>\n" +
269 " <leaf11>abc</leaf11>\n" +
273 " <ll1>abc</ll1>\n" +
274 " <ll1>abc</ll1>\n" +
275 " <leaf1>true</leaf1>\n" +
276 " <ll2>abc</ll2>\n" +
277 " <ll2>abc</ll2>\n" +
278 " <leaf3>abc</leaf3>\n" +
280 " <leaf9>abc</leaf9>\n" +
283 " <leaf9>abc</leaf9>\n" +
286 " <leaf8>abc</leaf8>\n" +
289 " <leaf8>abc</leaf8>\n" +
291 " <leaf2>abc</leaf2>\n" +
293 " <leaf11>abc</leaf11>\n" +
296 " <ll3>abc</ll3>\n" +
297 " <ll3>abc</ll3>\n" +
298 " <ll5>abc</ll5>\n" +
299 " <ll5>abc</ll5>\n" +
301 " <leaf10>abc</leaf10>\n" +
302 " <cont13 xmlns=\"urn:opendaylight:params:xml:ns:yang:" +
304 " <ll9>abc</ll9>\n" +
305 " <ll9>abc</ll9>\n" +
307 " <leaf27>abc</leaf27>\n" +
310 " <leaf27>abc</leaf27>\n" +
312 " <leaf28>abc</leaf28>\n" +
314 " <leaf26>abc</leaf26>\n" +
317 " <list7 xmlns=\"urn:opendaylight:params:xml:ns:yang:a" +
319 " <leaf14>test</leaf14>\n" +
321 " <list7 xmlns=\"urn:opendaylight:params:xml:ns:yang:a" +
323 " <leaf14>create</leaf14>\n" +
325 " <leaf15 xmlns=\"urn:opendaylight:params:xml:ns:yang:" +
326 "augment\">abc</leaf15>\n" +
327 " <ll6 xmlns=\"urn:opendaylight:params:xml:ns:yang:aug" +
328 "ment\">unbounded</ll6>\n" +
329 " <ll6 xmlns=\"urn:opendaylight:params:xml:ns:yang:aug" +
331 " <cont5 xmlns=\"urn:opendaylight:params:xml:ns:yang:a" +
333 " <leaf13>true</leaf13>\n" +
336 " <ll4>abc</ll4>\n" +
337 " <ll4>abc</ll4>\n" +
339 " <leaf10>abc</leaf10>\n" +
341 " <leaf5>abc</leaf5>\n" +
343 " <leaf4>abc</leaf4>\n" +
346 " <leaf4>abc</leaf4>\n" +
348 " <leaf12>abc</leaf12>\n" +
349 " <leaf6>abc</leaf6>\n" +
351 " <leaf11>abc</leaf11>\n" +
354 " <leaf11>abc</leaf11>\n" +
359 static final String ENCODE_TO_JSON_RPC = "{\n" +
360 " \"test-yang:input\": {\n" +
361 " \"leaf30\": \"abc\",\n" +
364 " \"leaf29\": \"abc\"\n" +
367 " \"leaf29\": \"abc\"\n" +
371 " \"leaf31\": \"abc\"\n" +
374 " \"leaf28\": \"abc\"\n" +
379 " \"leaf27\": \"abc\"\n" +
382 " \"leaf27\": \"abc\"\n" +
389 " \"leaf28\": \"abc\"\n" +
398 static final String DECODE_FROM_JSON_RPC = "{\n" +
399 " \"test-yang:output\": {\n" +
401 " \"leaf32\": \"abc\"\n" +
405 " \"leaf33\": \"abc\"\n" +
408 " \"leaf33\": \"abc\"\n" +
411 " \"leaf34\": \"abc\",\n" +
417 " \"leaf35\": \"abc\"\n" +
421 " \"leaf26\": \"abc\"\n" +
425 " \"leaf27\": \"abc\"\n" +
428 " \"leaf27\": \"abc\"\n" +
435 " \"leaf28\": \"abc\"\n" +
440 static final String ENCODE_TO_XML_RPC = "<?xml version=\"1.0\" encoding" +
441 "=\"UTF-8\" standalone=\"no\"?>\n" +
442 "<input xmlns=\"urn:opendaylight:params:xml:ns:yang:test\">\n" +
443 " <leaf30>abc</leaf30>\n" +
445 " <leaf29>abc</leaf29>\n" +
448 " <leaf29>abc</leaf29>\n" +
451 " <leaf31>abc</leaf31>\n" +
454 " <leaf28>abc</leaf28>\n" +
458 " <leaf27>abc</leaf27>\n" +
461 " <leaf27>abc</leaf27>\n" +
463 " <ll9>abc</ll9>\n" +
464 " <ll9>abc</ll9>\n" +
465 " <leaf28>abc</leaf28>\n" +
467 " <ll10>abc</ll10>\n" +
468 " <ll10>abc</ll10>\n" +
471 static final String DECODE_FROM_XML_RPC = "<?xml version=\"1.0\" encodi" +
472 "ng=\"UTF-8\" standalone=\"no\"?>\n" +
473 "<output xmlns=\"urn:opendaylight:params:xml:ns:yang:test\">\n" +
475 " <leaf32>abc</leaf32>\n" +
478 " <leaf33>abc</leaf33>\n" +
481 " <leaf33>abc</leaf33>\n" +
483 " <leaf34>abc</leaf34>\n" +
484 " <ll11>abc</ll11>\n" +
485 " <ll11>abc</ll11>\n" +
487 " <leaf35>abc</leaf35>\n" +
491 " <leaf26>abc</leaf26>\n" +
494 " <leaf27>abc</leaf27>\n" +
497 " <leaf27>abc</leaf27>\n" +
499 " <ll9>abc</ll9>\n" +
500 " <ll9>abc</ll9>\n" +
501 " <leaf28>abc</leaf28>\n" +