X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=renderer%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Frenderer%2Fprovisiondevice%2Ftransaction%2FConnectionTest.java;fp=renderer%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Frenderer%2Fprovisiondevice%2Ftransaction%2FConnectionTest.java;h=a3ba1e7cbb7e6f40a177f4dcd59abff746a35af7;hb=0a5e92dab0c7a79e3c7b446802d4551e53f943dc;hp=0000000000000000000000000000000000000000;hpb=56e494764739075a80f9b00f84145e0093081bb8;p=transportpce.git diff --git a/renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/transaction/ConnectionTest.java b/renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/transaction/ConnectionTest.java new file mode 100644 index 000000000..a3ba1e7cb --- /dev/null +++ b/renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/transaction/ConnectionTest.java @@ -0,0 +1,86 @@ +/* + * Copyright © 2024 Smartoptics 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.transportpce.renderer.provisiondevice.transaction; + +import java.util.ArrayList; +import java.util.List; +import org.junit.Assert; +import org.junit.jupiter.api.Test; +import org.mockito.Mockito; +import org.opendaylight.transportpce.renderer.provisiondevice.transaction.delete.Delete; + +class ConnectionTest { + + @Test + void rollback() { + Delete delete = Mockito.mock(Delete.class); + Mockito.when(delete.deleteCrossConnect("ROADM-A", "DEG1", false)) + .thenReturn(List.of("Interface1")); + + Connection n1 = new Connection("ROADM-A", "DEG1", false); + + Assert.assertTrue(n1.rollback(delete)); + + Mockito.verify(delete, Mockito.times(1)) + .deleteCrossConnect("ROADM-A", "DEG1", false); + } + + @Test + void testTwoObjectsWithSameInformationIsEqual() { + Connection n1 = new Connection("ROADM-A", "DEG1", false); + Connection n2 = new Connection("ROADM-A", "DEG1", false); + + Assert.assertTrue(n1.equals(n2)); + } + + @Test + void testTwoObjectsWithDifferentInformationIsNotEqual() { + Connection n1 = new Connection("ROADM-A", "DEG1", true); + Connection n2 = new Connection("ROADM-A", "DEG1", false); + + Assert.assertFalse(n1.equals(n2)); + } + + @Test + void testTwoDifferentRoadmNodesAreNotEqual() { + Connection n1 = new Connection("ROADM-A", "DEG1", false); + Connection n2 = new Connection("ROADM-B", "DEG1", false); + + Assert.assertFalse(n1.equals(n2)); + } + + + @Test + void deleteReturnNull() { + Delete delete = Mockito.mock(Delete.class); + Mockito.when(delete.deleteCrossConnect("ROADM-A", "DEG1", false)) + .thenReturn(null); + + Connection n1 = new Connection("ROADM-A", "DEG1", false); + + Assert.assertFalse(n1.rollback(delete)); + + Mockito.verify(delete, Mockito.times(1)) + .deleteCrossConnect("ROADM-A", "DEG1", false); + } + + @Test + void deleteReturnEmptyList() { + Delete delete = Mockito.mock(Delete.class); + Mockito.when(delete.deleteCrossConnect("ROADM-A", "DEG1", false)) + .thenReturn(new ArrayList<>()); + + Connection n1 = new Connection("ROADM-A", "DEG1", false); + + Assert.assertFalse(n1.rollback(delete)); + + Mockito.verify(delete, Mockito.times(1)) + .deleteCrossConnect("ROADM-A", "DEG1", false); + } +} \ No newline at end of file