Bump versions to 13.0.4-SNAPSHOT
[mdsal.git] / model / ietf / rfc6991-ietf-yang-types / src / test / java / org / opendaylight / yang / gen / v1 / urn / ietf / params / xml / ns / yang / ietf / yang / types / rev130715 / IetfYangUtilTest.java
1 /*
2  * Copyright (c) 2019 PANTHEON.tech, s.r.o. and others. 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.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715;
9
10 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
11 import static org.junit.jupiter.api.Assertions.assertEquals;
12
13 import java.util.UUID;
14 import org.eclipse.jdt.annotation.NonNull;
15 import org.junit.jupiter.api.Test;
16
17 class IetfYangUtilTest {
18     private static final byte @NonNull [] BYTES = new byte[] { 1, 2, 30, 90, -5, -120 };
19     private static final String CANON = "01:02:1e:5a:fb:88";
20
21     @Test
22     void testBytesToMac() {
23         final var mac = IetfYangUtil.macAddressFor(BYTES);
24         assertEquals(CANON, mac.getValue());
25     }
26
27     @Test
28     void testMacToBytes() {
29         assertArrayEquals(BYTES, IetfYangUtil.macAddressBytes(new MacAddress(CANON)));
30         assertArrayEquals(BYTES, IetfYangUtil.macAddressBytes(new MacAddress("01:02:1E:5a:Fb:88")));
31     }
32
33     @Test
34     void testBytesToHex() {
35         final var hex = IetfYangUtil.hexStringFor(BYTES);
36         assertEquals(CANON, hex.getValue());
37     }
38
39     @Test
40     void testHexToBytes() {
41         assertArrayEquals(BYTES, IetfYangUtil.hexStringBytes(new HexString(CANON)));
42         assertArrayEquals(BYTES, IetfYangUtil.hexStringBytes(new HexString("01:02:1E:5a:Fb:88")));
43     }
44
45     @Test
46     void testPhysToBytes() {
47         assertArrayEquals(BYTES, IetfYangUtil.physAddressBytes(new PhysAddress(CANON)));
48         assertArrayEquals(BYTES, IetfYangUtil.physAddressBytes(new PhysAddress("01:02:1E:5a:Fb:88")));
49
50         assertArrayEquals(new byte[0], IetfYangUtil.physAddressBytes(new PhysAddress("")));
51         assertArrayEquals(new byte[] { (byte) 0xaa }, IetfYangUtil.physAddressBytes(new PhysAddress("aa")));
52         assertArrayEquals(new byte[] { (byte) 0xaa, (byte) 0xbb },
53             IetfYangUtil.physAddressBytes(new PhysAddress("aa:bb")));
54     }
55
56     @Test
57     void testQuadBits() {
58         assertEquals(0x01020304, IetfYangUtil.dottedQuadBits(new DottedQuad("1.2.3.4")));
59         assertEquals(0xFFFFFFFF, IetfYangUtil.dottedQuadBits(new DottedQuad("255.255.255.255")));
60     }
61
62     @Test
63     void testQuadBytes() {
64         assertArrayEquals(new byte[] { 1, 2, 3, 4 }, IetfYangUtil.dottedQuadBytes(new DottedQuad("1.2.3.4")));
65     }
66
67     @Test
68     void testQuadForBits() {
69         assertEquals("1.2.3.4", IetfYangUtil.dottedQuadFor(0x01020304).getValue());
70         assertEquals("255.255.255.255", IetfYangUtil.dottedQuadFor(0xFFFFFFFF).getValue());
71     }
72
73     @Test
74     void testQuadForBytes() {
75         assertEquals("1.2.3.4", IetfYangUtil.dottedQuadFor(new byte[] { 1, 2, 3, 4 }).getValue());
76     }
77
78     @Test
79     void testUuidFor() {
80         final var uuid = UUID.fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6");
81         assertEquals("f81d4fae-7dec-11d0-a765-00a0c91e6bf6", IetfYangUtil.uuidFor(uuid).getValue());
82     }
83
84     @Test
85     void canonizeMACTest() {
86         assertEquals(CANON, IetfYangUtil.canonizeMacAddress(new MacAddress("01:02:1E:5A:FB:88")).getValue());
87     }
88
89     @Test
90     void testDottedQuad() {
91         assertArrayEquals(new byte[] { 1, 2, 3, 4 }, IetfYangUtil.dottedQuadBytes(new DottedQuad("1.2.3.4")));
92         assertEquals(new DottedQuad("1.2.3.4"), IetfYangUtil.dottedQuadFor(new byte[] { 1, 2, 3, 4 }));
93     }
94
95     @Test
96     void testHexString() {
97         assertArrayEquals(new byte[] { 0, 1 }, IetfYangUtil.hexStringBytes(new HexString("00:01")));
98         assertEquals(new HexString("00:01"), IetfYangUtil.hexStringFor(new byte[] { 0, 1 }));
99     }
100
101     @Test
102     void testPhysAddress() {
103         assertArrayEquals(new byte[] { 0, 1} , IetfYangUtil.physAddressBytes(new PhysAddress("00:01")));
104         assertEquals(new PhysAddress("00:01"), IetfYangUtil.physAddressFor(new byte[] { 0, 1 }));
105     }
106
107     @Test
108     void testMacAddress() {
109         assertArrayEquals(new byte[] { 0, 1, 2, 3, 4, 5 },
110             IetfYangUtil.macAddressBytes(new MacAddress("00:01:02:03:04:05")));
111         assertEquals(new MacAddress("00:01:02:03:04:05"), IetfYangUtil.macAddressFor(new byte[] { 0, 1, 2, 3, 4, 5 }));
112     }
113
114     @Test
115     void testUuid() {
116         final var java = UUID.randomUUID();
117         assertEquals(new Uuid(java.toString()), IetfYangUtil.uuidFor(java));
118     }
119 }