ONOS-3760 Injection of mfg/hw/sw/serial in BasicDeviceConfig
Change-Id: I7f2269039e0cdabbee85cdad178c4ca27cdc2dce
diff --git a/core/api/src/test/java/org/onosproject/net/config/basics/BasicDeviceConfigTest.java b/core/api/src/test/java/org/onosproject/net/config/basics/BasicDeviceConfigTest.java
new file mode 100644
index 0000000..adb4354
--- /dev/null
+++ b/core/api/src/test/java/org/onosproject/net/config/basics/BasicDeviceConfigTest.java
@@ -0,0 +1,122 @@
+/*
+ * Copyright 2016 Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.net.config.basics;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import org.junit.Before;
+import org.junit.Test;
+import org.onosproject.net.DeviceId;
+import org.onosproject.net.config.ConfigApplyDelegate;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.onosproject.net.Device.Type.OTN;
+import static org.onosproject.net.Device.Type.SWITCH;
+
+/**
+ * Test class for BasicDeviceConfig.
+ */
+public class BasicDeviceConfigTest {
+
+ private static final String DRIVER = "fooDriver";
+ private static final String MANUFACTURER = "fooManufacturer";
+ private static final String HW_VERSION = "0.0";
+ private static final String SW_VERSION = "0.0";
+ private static final String SERIAL = "1234";
+ private static final String MANAGEMENT_ADDRESS = "12.34.56.78:99";
+ private static final String DRIVER_NEW = "barDriver";
+ private static final String MANUFACTURER_NEW = "barManufacturer";
+ private static final String HW_VERSION_NEW = "1.1";
+ private static final String SW_VERSION_NEW = "1.1";
+ private static final String SERIAL_NEW = "5678";
+ private static final String MANAGEMENT_ADDRESS_NEW = "99.87.65.43:12";
+
+ private static final String NAME1 = "fooProtocol:fooIP:fooPort";
+
+ private final ConfigApplyDelegate delegate = config -> {
+ };
+ private final ObjectMapper mapper = new ObjectMapper();
+
+ private static final BasicDeviceConfig SW_BDC = new BasicDeviceConfig();
+
+ @Before
+ public void setUp() {
+ SW_BDC.init(DeviceId.deviceId(NAME1), NAME1, JsonNodeFactory.instance.objectNode(), mapper, delegate);
+ SW_BDC.type(SWITCH).manufacturer(MANUFACTURER).hwVersion(HW_VERSION)
+ .swVersion(SW_VERSION).serial(SERIAL).managementAddress(MANAGEMENT_ADDRESS).driver(DRIVER);
+ }
+
+ @Test
+ public void testCorrectConfiguration() {
+ assertTrue("Configuration contains not valid fields", SW_BDC.isValid());
+ assertEquals("Incorrect type", SWITCH, SW_BDC.type());
+ assertEquals("Incorrect driver", DRIVER, SW_BDC.driver());
+ assertEquals("Incorrect manufacturer", MANUFACTURER, SW_BDC.manufacturer());
+ assertEquals("Incorrect HwVersion", HW_VERSION, SW_BDC.hwVersion());
+ assertEquals("Incorrect swVersion", SW_VERSION, SW_BDC.swVersion());
+ assertEquals("Incorrect serial", SERIAL, SW_BDC.serial());
+ assertEquals("Incorrect management Address", MANAGEMENT_ADDRESS, SW_BDC.managementAddress());
+ }
+
+
+ @Test
+ public void testSetType() {
+ SW_BDC.type(OTN);
+ assertEquals("Incorrect type", OTN, SW_BDC.type());
+ }
+
+
+ @Test
+ public void testSetDriver() {
+ SW_BDC.driver(DRIVER_NEW);
+ assertEquals("Incorrect driver", DRIVER_NEW, SW_BDC.driver());
+ }
+
+
+ @Test
+ public void testSetManufacturer() {
+ SW_BDC.manufacturer(MANUFACTURER_NEW);
+ assertEquals("Incorrect manufacturer", MANUFACTURER_NEW, SW_BDC.manufacturer());
+ }
+
+
+ @Test
+ public void testSetHwVersion() {
+ SW_BDC.hwVersion(HW_VERSION_NEW);
+ assertEquals("Incorrect HwVersion", HW_VERSION_NEW, SW_BDC.hwVersion());
+ }
+
+
+ @Test
+ public void testSetSwVersion() {
+ SW_BDC.swVersion(SW_VERSION_NEW);
+ assertEquals("Incorrect swVersion", SW_VERSION_NEW, SW_BDC.swVersion());
+ }
+
+ @Test
+ public void testSetSerial() {
+ SW_BDC.serial(SERIAL_NEW);
+ assertEquals("Incorrect serial", SERIAL_NEW, SW_BDC.serial());
+ }
+
+ @Test
+ public void testSetManagementAddress() {
+ SW_BDC.managementAddress(MANAGEMENT_ADDRESS_NEW);
+ assertEquals("Incorrect managementAddress", MANAGEMENT_ADDRESS_NEW, SW_BDC.managementAddress());
+ }
+}
\ No newline at end of file