X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fimpl%2Ftest%2FBrokerFacadeTest.java;h=19ca812f8e9a90c1aad698be0df347b2b651b26f;hb=b2e6c299fad844633c8b40a2e180780f5774a4ae;hp=18199de8c63ca056ed8aacbf947fe0d36f2afa0d;hpb=803d525860fbb1974b65ba5605ba5a9dfe1928a4;p=controller.git 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 18199de8c6..19ca812f8e 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 @@ -7,20 +7,20 @@ */ package org.opendaylight.controller.sal.restconf.impl.test; - import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertSame; +import static org.mockito.Matchers.any; import static org.mockito.Mockito.inOrder; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; import static org.mockito.Mockito.when; +import com.google.common.collect.ImmutableMap; +import com.google.common.util.concurrent.Futures; import java.util.Map; import java.util.concurrent.Future; - -import javax.ws.rs.core.Response.Status; - import org.junit.Before; import org.junit.Test; import org.mockito.InOrder; @@ -34,7 +34,8 @@ import org.opendaylight.controller.sal.core.api.data.DataModificationTransaction import org.opendaylight.controller.sal.core.api.mount.MountInstance; import org.opendaylight.controller.sal.rest.impl.XmlToCompositeNodeProvider; import org.opendaylight.controller.sal.restconf.impl.BrokerFacade; -import org.opendaylight.controller.sal.restconf.impl.ResponseException; +import org.opendaylight.controller.sal.restconf.impl.RestconfDocumentedException; +import org.opendaylight.controller.sal.restconf.impl.RestconfError; import org.opendaylight.controller.sal.streams.listeners.ListenerAdapter; import org.opendaylight.controller.sal.streams.listeners.Notificator; import org.opendaylight.yangtools.concepts.ListenerRegistration; @@ -42,9 +43,7 @@ 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.InstanceIdentifier; - -import com.google.common.collect.ImmutableMap; -import com.google.common.util.concurrent.Futures; +import org.opendaylight.yangtools.yang.data.impl.ImmutableCompositeNode; /** * Unit tests for BrokerFacade. @@ -120,7 +119,7 @@ public class BrokerFacadeTest { assertSame( "readOperationalDataBehindMountPoint", dataNode, actualNode ); } - @Test(expected=ResponseException.class) + @Test(expected=RestconfDocumentedException.class) public void testReadOperationalDataWithNoDataBroker() { brokerFacade.setDataService( null ); @@ -129,26 +128,19 @@ public class BrokerFacadeTest { @SuppressWarnings("unchecked") @Test - public void testInvokeRpc() { + public void testInvokeRpc() throws Exception { RpcResult expResult = mock( RpcResult.class ); Future> future = Futures.immediateFuture( expResult ); when( mockConsumerSession.rpc( qname, dataNode ) ).thenReturn( future ); - RpcResult actualResult = brokerFacade.invokeRpc( qname, dataNode ); + Future> actualFuture = brokerFacade.invokeRpc( qname, dataNode ); + assertNotNull( "Future is null", actualFuture ); + RpcResult actualResult = actualFuture.get(); assertSame( "invokeRpc", expResult, actualResult ); } - @Test(expected=ResponseException.class) - public void testInvokeRpcWithException() { - Exception mockEx = new Exception( "mock" ); - Future> future = Futures.immediateFailedFuture( mockEx ); - when( mockConsumerSession.rpc( qname, dataNode ) ).thenReturn( future ); - - brokerFacade.invokeRpc( qname, dataNode ); - } - - @Test(expected=ResponseException.class) + @Test(expected=RestconfDocumentedException.class) public void testInvokeRpcWithNoConsumerSession() { brokerFacade.setContext( null ); @@ -218,7 +210,7 @@ public class BrokerFacadeTest { inOrder.verify( mockTransaction ).commit(); } - @Test(expected=ResponseException.class) + @Test(expected=RestconfDocumentedException.class) public void testCommitConfigurationDataPostAlreadyExists() { when( dataBroker.beginTransaction() ).thenReturn( mockTransaction ); mockTransaction.putConfigurationData( instanceID, dataNode ); @@ -226,10 +218,10 @@ public class BrokerFacadeTest { .thenReturn( dataNode ); try { brokerFacade.commitConfigurationDataPost( instanceID, dataNode ); - } catch (ResponseException e) { - assertEquals("Unexpect Exception Status -> " - + "http://tools.ietf.org/html/draft-bierman-netconf-restconf-03#page-48", - (e.getResponse().getStatus()), Status.CONFLICT.getStatusCode()); + } + catch (RestconfDocumentedException e) { + assertEquals("getErrorTag", + RestconfError.ErrorTag.DATA_EXISTS, e.getErrors().get( 0 ).getErrorTag()); throw e; } } @@ -259,7 +251,7 @@ public class BrokerFacadeTest { inOrder.verify( mockTransaction ).commit(); } - @Test(expected=ResponseException.class) + @Test(expected=RestconfDocumentedException.class) public void testCommitConfigurationDataPostBehindMountPointAlreadyExists() { when( mockMountInstance.beginTransaction() ).thenReturn( mockTransaction ); @@ -269,10 +261,10 @@ public class BrokerFacadeTest { try { brokerFacade.commitConfigurationDataPostBehindMountPoint( mockMountInstance, instanceID, dataNode ); - } catch (ResponseException e) { - assertEquals("Unexpect Exception Status -> " - + "http://tools.ietf.org/html/draft-bierman-netconf-restconf-03#page-48", - e.getResponse().getStatus(), Status.CONFLICT.getStatusCode()); + } + catch (RestconfDocumentedException e) { + assertEquals("getErrorTag", + RestconfError.ErrorTag.DATA_EXISTS, e.getErrors().get( 0 ).getErrorTag()); throw e; } } @@ -282,6 +274,8 @@ public class BrokerFacadeTest { Future> expFuture = Futures.immediateFuture( null ); when( dataBroker.beginTransaction() ).thenReturn( mockTransaction ); + when(mockTransaction.readConfigurationData(any(InstanceIdentifier.class))).thenReturn( + ImmutableCompositeNode.builder().toInstance()); mockTransaction.removeConfigurationData( instanceID ); when( mockTransaction.commit() ).thenReturn( expFuture ); @@ -301,6 +295,8 @@ public class BrokerFacadeTest { Future> expFuture = Futures.immediateFuture( null ); when( mockMountInstance.beginTransaction() ).thenReturn( mockTransaction ); + when(mockTransaction.readConfigurationData(any(InstanceIdentifier.class))).thenReturn( + ImmutableCompositeNode.builder().toInstance()); mockTransaction.removeConfigurationData( instanceID ); when( mockTransaction.commit() ).thenReturn( expFuture );