X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fimpl%2Ftest%2FBrokerFacadeTest.java;h=dc1f968805a1f97d032d3d1b5ded964ab67c7b42;hp=f533a6360ad847a74e7f203bf32db65a0acfe995;hb=f3db96e1a7b1e416bcbd75c06cbca2fba8a152eb;hpb=dd32d3d246ebad8b7c76afb93239a4462f329a6b diff --git a/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/BrokerFacadeTest.java b/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/BrokerFacadeTest.java index f533a6360a..dc1f968805 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/BrokerFacadeTest.java +++ b/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/BrokerFacadeTest.java @@ -39,6 +39,9 @@ import org.opendaylight.controller.md.sal.dom.api.DOMDataReadOnlyTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataReadWriteTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMMountPoint; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcException; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcResult; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcService; import org.opendaylight.controller.sal.core.api.Broker.ConsumerSession; import org.opendaylight.controller.sal.restconf.impl.BrokerFacade; import org.opendaylight.controller.sal.restconf.impl.ControllerContext; @@ -48,12 +51,11 @@ import org.opendaylight.controller.sal.streams.listeners.ListenerAdapter; import org.opendaylight.controller.sal.streams.listeners.Notificator; import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.common.RpcResult; -import org.opendaylight.yangtools.yang.data.api.CompositeNode; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; +import org.opendaylight.yangtools.yang.model.api.SchemaPath; /** * Unit tests for BrokerFacade. @@ -66,21 +68,24 @@ public class BrokerFacadeTest { DOMDataBroker domDataBroker; @Mock - ConsumerSession mockConsumerSession; + ConsumerSession context; + + @Mock + DOMRpcService mockRpcService; @Mock DOMMountPoint mockMountInstance; BrokerFacade brokerFacade = BrokerFacade.getInstance(); - CompositeNode dataNode; - NormalizedNode dummyNode = createDummyNode("test:module", "2014-01-09", "interfaces"); CheckedFuture>,ReadFailedException> dummyNodeInFuture = wrapDummyNode(dummyNode); QName qname = TestUtils.buildQName("interfaces","test:module", "2014-01-09"); - YangInstanceIdentifier instanceID = YangInstanceIdentifier.builder().node(qname).toInstance(); + SchemaPath type = SchemaPath.create(true, qname); + + YangInstanceIdentifier instanceID = YangInstanceIdentifier.builder().node(qname).build(); @Mock DOMDataReadOnlyTransaction rTransaction; @@ -96,13 +101,12 @@ public class BrokerFacadeTest { MockitoAnnotations.initMocks(this); // TODO it is started before every test method brokerFacade.setDomDataBroker(domDataBroker); - brokerFacade.setContext(mockConsumerSession); + brokerFacade.setRpcService(mockRpcService); + brokerFacade.setContext(context); when(domDataBroker.newReadOnlyTransaction()).thenReturn(rTransaction); when(domDataBroker.newWriteOnlyTransaction()).thenReturn(wTransaction); when(domDataBroker.newReadWriteTransaction()).thenReturn(rwTransaction); - dataNode = TestUtils.prepareCompositeNodeWithIetfInterfacesInterfacesData(); - ControllerContext.getInstance().setSchemas(TestUtils.loadSchemaContext("/full-versions/test-module")); } @@ -111,7 +115,7 @@ public class BrokerFacadeTest { return Futures.immediateCheckedFuture(Optional.> of(dummyNode)); } - private CheckedFuture wrapExistence(Boolean exists) { + private CheckedFuture wrapExistence(final Boolean exists) { return Futures.immediateCheckedFuture(exists); } @@ -129,7 +133,7 @@ public class BrokerFacadeTest { when(rTransaction.read(any(LogicalDatastoreType.class), any(YangInstanceIdentifier.class))).thenReturn( dummyNodeInFuture); - NormalizedNode actualNode = brokerFacade.readConfigurationData(instanceID); + final NormalizedNode actualNode = brokerFacade.readConfigurationData(instanceID); assertSame("readConfigurationData", dummyNode, actualNode); } @@ -139,7 +143,7 @@ public class BrokerFacadeTest { when(rTransaction.read(any(LogicalDatastoreType.class), any(YangInstanceIdentifier.class))).thenReturn( dummyNodeInFuture); - NormalizedNode actualNode = brokerFacade.readOperationalData(instanceID); + final NormalizedNode actualNode = brokerFacade.readOperationalData(instanceID); assertSame("readOperationalData", dummyNode, actualNode); } @@ -151,39 +155,37 @@ public class BrokerFacadeTest { brokerFacade.readOperationalData(instanceID); } - @SuppressWarnings("unchecked") @Test public void testInvokeRpc() throws Exception { - RpcResult expResult = mock(RpcResult.class); - Future> future = Futures.immediateFuture(expResult); - when(mockConsumerSession.rpc(qname, dataNode)).thenReturn(future); + final DOMRpcResult expResult = mock(DOMRpcResult.class); + final CheckedFuture future = Futures.immediateCheckedFuture(expResult); + when(mockRpcService.invokeRpc(type, dummyNode)).thenReturn(future); - Future> actualFuture = brokerFacade.invokeRpc(qname, dataNode); + final CheckedFuture actualFuture = brokerFacade.invokeRpc(type, dummyNode); assertNotNull("Future is null", actualFuture); - RpcResult actualResult = actualFuture.get(); - + final DOMRpcResult actualResult = actualFuture.get(); assertSame("invokeRpc", expResult, actualResult); } @Test(expected = RestconfDocumentedException.class) public void testInvokeRpcWithNoConsumerSession() { brokerFacade.setContext(null); - - brokerFacade.invokeRpc(qname, dataNode); + brokerFacade.invokeRpc(type, dummyNode); } @Ignore @Test public void testCommitConfigurationDataPut() { - CheckedFuture expFuture = mock(CheckedFuture.class); + @SuppressWarnings("unchecked") + final CheckedFuture expFuture = mock(CheckedFuture.class); when(wTransaction.submit()).thenReturn(expFuture); - Future actualFuture = brokerFacade.commitConfigurationDataPut(instanceID, dummyNode); + final Future actualFuture = brokerFacade.commitConfigurationDataPut(instanceID, dummyNode); assertSame("commitConfigurationDataPut", expFuture, actualFuture); - InOrder inOrder = inOrder(domDataBroker, wTransaction); + final InOrder inOrder = inOrder(domDataBroker, wTransaction); inOrder.verify(domDataBroker).newWriteOnlyTransaction(); inOrder.verify(wTransaction).put(LogicalDatastoreType.CONFIGURATION, instanceID, dummyNode); inOrder.verify(wTransaction).submit(); @@ -191,9 +193,10 @@ public class BrokerFacadeTest { @Test public void testCommitConfigurationDataPost() { - CheckedFuture expFuture = mock(CheckedFuture.class); + @SuppressWarnings("unchecked") + final CheckedFuture expFuture = mock(CheckedFuture.class); - NormalizedNode dummyNode2 = createDummyNode("dummy:namespace2", "2014-07-01", "dummy local name2"); + final NormalizedNode dummyNode2 = createDummyNode("dummy:namespace2", "2014-07-01", "dummy local name2"); when(rwTransaction.read(eq(LogicalDatastoreType.CONFIGURATION), any(YangInstanceIdentifier.class))).thenReturn( wrapDummyNode(dummyNode2)); @@ -204,12 +207,12 @@ public class BrokerFacadeTest { when(rwTransaction.submit()).thenReturn(expFuture); - CheckedFuture actualFuture = brokerFacade.commitConfigurationDataPost( - instanceID, dummyNode); + final CheckedFuture actualFuture = brokerFacade.commitConfigurationDataPost( + YangInstanceIdentifier.builder().build(), dummyNode); assertSame("commitConfigurationDataPost", expFuture, actualFuture); - InOrder inOrder = inOrder(domDataBroker, rwTransaction); + final InOrder inOrder = inOrder(domDataBroker, rwTransaction); inOrder.verify(domDataBroker).newReadWriteTransaction(); inOrder.verify(rwTransaction).merge(LogicalDatastoreType.CONFIGURATION, instanceID, dummyNode); inOrder.verify(rwTransaction).submit(); @@ -221,7 +224,7 @@ public class BrokerFacadeTest { dummyNodeInFuture); try { brokerFacade.commitConfigurationDataPost(instanceID, dummyNode); - } catch (RestconfDocumentedException e) { + } catch (final RestconfDocumentedException e) { assertEquals("getErrorTag", RestconfError.ErrorTag.DATA_EXISTS, e.getErrors().get(0).getErrorTag()); throw e; } @@ -229,19 +232,17 @@ public class BrokerFacadeTest { @Test public void testCommitConfigurationDataDelete() { - CheckedFuture expFuture = mock(CheckedFuture.class); + @SuppressWarnings("unchecked") + final CheckedFuture expFuture = mock(CheckedFuture.class); when(wTransaction.submit()).thenReturn(expFuture); - NormalizedNode dummyNode2 = createDummyNode("dummy:namespace2", "2014-07-01", "dummy local name2"); - - - CheckedFuture actualFuture = brokerFacade + final CheckedFuture actualFuture = brokerFacade .commitConfigurationDataDelete(instanceID); assertSame("commitConfigurationDataDelete", expFuture, actualFuture); - InOrder inOrder = inOrder(domDataBroker, wTransaction); + final InOrder inOrder = inOrder(domDataBroker, wTransaction); inOrder.verify(domDataBroker).newWriteOnlyTransaction(); inOrder.verify(wTransaction).delete(eq(LogicalDatastoreType.CONFIGURATION), any(YangInstanceIdentifier.class)); inOrder.verify(wTransaction).submit(); @@ -250,9 +251,9 @@ public class BrokerFacadeTest { @SuppressWarnings("unchecked") @Test public void testRegisterToListenDataChanges() { - ListenerAdapter listener = Notificator.createListener(instanceID, "stream"); + final ListenerAdapter listener = Notificator.createListener(instanceID, "stream"); - ListenerRegistration mockRegistration = mock(ListenerRegistration.class); + final ListenerRegistration mockRegistration = mock(ListenerRegistration.class); when( domDataBroker.registerDataChangeListener(any(LogicalDatastoreType.class), eq(instanceID), eq(listener),