X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcompatibility%2Fsal-compatibility%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcompatibility%2Ftest%2FNodeMappingTest.java;fp=opendaylight%2Fmd-sal%2Fcompatibility%2Fsal-compatibility%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcompatibility%2Ftest%2FNodeMappingTest.java;h=b9a2f5bff0154418b102504173c1eed30b5d5673;hb=d3e6c92c1f8bf92d60c4a0ec2ee8fc734806ff5d;hp=0000000000000000000000000000000000000000;hpb=a31a4448ea6665317f4af41ae26d804829418c04;p=controller.git diff --git a/opendaylight/md-sal/compatibility/sal-compatibility/src/test/java/org/opendaylight/controller/sal/compatibility/test/NodeMappingTest.java b/opendaylight/md-sal/compatibility/sal-compatibility/src/test/java/org/opendaylight/controller/sal/compatibility/test/NodeMappingTest.java new file mode 100644 index 0000000000..b9a2f5bff0 --- /dev/null +++ b/opendaylight/md-sal/compatibility/sal-compatibility/src/test/java/org/opendaylight/controller/sal/compatibility/test/NodeMappingTest.java @@ -0,0 +1,58 @@ +/** + * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +package org.opendaylight.controller.sal.compatibility.test; + +import org.junit.Assert; +import org.junit.Test; +import org.opendaylight.controller.sal.compatibility.NodeMapping; +import org.opendaylight.controller.sal.core.MacAddress; +import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId; + +/** + * test of {@link NodeMapping} utility class + */ +public class NodeMappingTest { + + /** + * Test method for + * {@link org.opendaylight.controller.sal.compatibility.NodeMapping#toADMacAddress(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId)} + * . + */ + @Test + public void testToADMacAddress() { + NodeId[] nodeIds = new NodeId[] { + // 0x0000|0000 0000002a (answer to the ultimate question of life, universe and everything) + new NodeId("42"), + // 0x7fff|ffff ffffffff (max long -> 2**63 - 1) + new NodeId("9223372036854775807"), + // 0x7fff|7fff ffffffff + new NodeId("9223231299366420479"), + // 0x8fff|7fff ffffffff (more than biggest positive long) + new NodeId("10376152803973267455"), + // 0xca13|764a e9ace65a (BUG-770) + new NodeId("14561112084339025498") + }; + + byte[][] expectedMacs = new byte[][] { + {0, 0, 0, 0, 0, 0x2a}, + {(byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff}, + {(byte) 0x7f, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff}, + {(byte) 0x7f, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff}, + {(byte) 0x76, (byte) 0x4a, (byte) 0xe9, (byte) 0xac, (byte) 0xe6, (byte) 0x5a} + }; + + Assert.assertEquals(expectedMacs.length, nodeIds.length); + + for (int i = 0; i < expectedMacs.length; i++) { + NodeId nodeId = nodeIds[i]; + MacAddress mac = NodeMapping.toADMacAddress(nodeId); + Assert.assertArrayEquals(expectedMacs[i], mac.getMacAddress()); + } + } + +}