package org.opendaylight.transportpce.pce;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.lenient;
+import static org.mockito.Mockito.when;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.opendaylight.mdsal.binding.api.DataBroker;
import org.opendaylight.mdsal.binding.dom.codec.spi.BindingDOMCodecServices;
+import org.opendaylight.transportpce.common.mapping.PortMapping;
import org.opendaylight.transportpce.common.network.NetworkTransactionImpl;
-import org.opendaylight.transportpce.common.network.RequestProcessor;
-import org.opendaylight.transportpce.pce.gnpy.ConnectToGnpyServer;
import org.opendaylight.transportpce.pce.gnpy.JerseyServer;
+import org.opendaylight.transportpce.pce.gnpy.consumer.GnpyConsumer;
+import org.opendaylight.transportpce.pce.gnpy.consumer.GnpyConsumerImpl;
import org.opendaylight.transportpce.pce.utils.PceTestData;
import org.opendaylight.transportpce.pce.utils.PceTestUtils;
import org.opendaylight.transportpce.test.AbstractTest;
-import org.opendaylight.yangtools.yang.model.parser.api.YangParserFactory;
-
-@RunWith(MockitoJUnitRunner.class)
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.mapping.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.mapping.MappingBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.network.NodesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.network.NodesKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.network.nodes.NodeInfo;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.network.nodes.NodeInfoBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes;
+
+@ExtendWith(MockitoExtension.class)
public class PceSendingPceRPCsTest extends AbstractTest {
private PceSendingPceRPCs pceSendingPceRPCs;
private NetworkTransactionImpl networkTransaction;
- @Mock
- private YangParserFactory yangParserFactory;
+ private Mapping mapping;
@Mock
private BindingDOMCodecServices bindingDOMCodecServices;
private JerseyServer jerseyServer = new JerseyServer();
-
-
- @Before
- public void setUp() {
- networkTransaction = new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker()));
- PceTestUtils.writeNetworkInDataStore(this.getDataBroker());
- pceSendingPceRPCs = new PceSendingPceRPCs(PceTestData.getPCE_test1_request_54(),
- networkTransaction, bindingDOMCodecServices);
+ private DataBroker dataBroker;
+ private GnpyConsumer gnpyConsumer;
+ @Mock
+ private PortMapping portMapping;
+
+
+ @BeforeEach
+ void setUp() {
+ this.dataBroker = getNewDataBroker();
+ networkTransaction = new NetworkTransactionImpl(this.dataBroker);
+ PceTestUtils.writeNetworkInDataStore(this.dataBroker);
+ gnpyConsumer = new GnpyConsumerImpl(
+ "http://localhost:9998", "mylogin", "mypassword", getDataStoreContextUtil().getBindingDOMCodecServices());
+ pceSendingPceRPCs = new PceSendingPceRPCs(
+ PceTestData.getPCE_test1_request_54(), networkTransaction, gnpyConsumer, portMapping);
+ mapping = new MappingBuilder()
+ .setLogicalConnectionPoint("logicalConnectionPoint")
+ .setPortQual("xpdr-client")
+ .build();
+ NodeInfo info = new NodeInfoBuilder().setNodeType(NodeTypes.Xpdr).build();
+ Nodes node = new NodesBuilder().withKey(new NodesKey("node")).setNodeId("node").setNodeInfo(info).build();
+ lenient().when(portMapping.getMapping(anyString(), anyString())).thenReturn(mapping);
+ lenient().when(portMapping.getNode(anyString())).thenReturn(node);
}
@Test
- public void cancelResourceReserve() {
+ void cancelResourceReserve() {
pceSendingPceRPCs.cancelResourceReserve();
- Assert.assertTrue("Success should equal to true", pceSendingPceRPCs.getSuccess());
+ assertTrue(pceSendingPceRPCs.getSuccess(), "Success should equal to true");
}
@Test
- public void pathComputationTest() throws Exception {
+ void pathComputationTest() throws Exception {
jerseyServer.setUp();
- pceSendingPceRPCs =
- new PceSendingPceRPCs(PceTestData.getGnpyPCERequest("XPONDER-1", "XPONDER-2"),
- networkTransaction, null);
-
+ pceSendingPceRPCs = new PceSendingPceRPCs(PceTestData.getGnpyPCERequest("XPONDER-1", "XPONDER-2"),
+ networkTransaction, gnpyConsumer, portMapping);
+ when(portMapping.getMapping(anyString(), anyString())).thenReturn(mapping);
pceSendingPceRPCs.pathComputation();
- ConnectToGnpyServer connectToGnpy = new ConnectToGnpyServer();
- Assert.assertTrue(connectToGnpy.isGnpyURLExist());
+ assertTrue(gnpyConsumer.isAvailable());
jerseyServer.tearDown();
-
}
@Test
- public void checkMessage() {
- Assert.assertNull(pceSendingPceRPCs.getMessage());
+ void checkMessage() {
+ assertNull(pceSendingPceRPCs.getMessage());
}
@Test
- public void responseCodeTest() {
- Assert.assertNull(pceSendingPceRPCs.getResponseCode());
+ void responseCodeTest() {
+ assertNull(pceSendingPceRPCs.getResponseCode());
}
@Test
- public void gnpyAtoZ() {
- Assert.assertNull(pceSendingPceRPCs.getGnpyAtoZ());
+ void gnpyAtoZ() {
+ assertNull(pceSendingPceRPCs.getGnpyAtoZ());
}
@Test
- public void getGnpyZtoA() {
- Assert.assertNull(pceSendingPceRPCs.getGnpyZtoA());
+ void getGnpyZtoA() {
+ assertNull(pceSendingPceRPCs.getGnpyZtoA());
}
-
-
}