X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=restconf%2Frestconf-nb-bierman02%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fimpl%2Ftest%2FRestPostOperationTest.java;h=3aa6a9c8cbff7276aae39c69579f091110a37cc1;hb=09c1d18add7cfc310f3d190a1a02a523159162ce;hp=d9c9f55299fa7c8b7cd4e8da5bbaba9b4ab2f9f3;hpb=26910f0052a4ac3022067f33ceccf4b056004691;p=netconf.git diff --git a/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPostOperationTest.java b/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPostOperationTest.java index d9c9f55299..3aa6a9c8cb 100644 --- a/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPostOperationTest.java +++ b/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPostOperationTest.java @@ -8,7 +8,9 @@ package org.opendaylight.controller.sal.restconf.impl.test; import static org.junit.Assert.assertEquals; -import static org.mockito.Matchers.any; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.isNull; +import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -16,12 +18,12 @@ import static org.mockito.Mockito.when; import static org.opendaylight.controller.sal.restconf.impl.test.RestOperationUtils.XML; import com.google.common.collect.ImmutableList; -import com.google.common.util.concurrent.CheckedFuture; -import com.google.common.util.concurrent.Futures; +import com.google.common.util.concurrent.FluentFuture; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URISyntaxException; import java.text.ParseException; +import java.util.Optional; import javax.ws.rs.client.Entity; import javax.ws.rs.core.Application; import javax.ws.rs.core.MediaType; @@ -31,10 +33,11 @@ import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; import org.mockito.ArgumentCaptor; -import org.mockito.Mockito; -import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException; -import org.opendaylight.controller.md.sal.dom.api.DOMMountPoint; import org.opendaylight.controller.md.sal.rest.common.TestRestconfUtils; +import org.opendaylight.mdsal.common.api.CommitInfo; +import org.opendaylight.mdsal.dom.api.DOMMountPoint; +import org.opendaylight.mdsal.dom.api.DOMSchemaService; +import org.opendaylight.mdsal.dom.spi.FixedDOMSchemaService; import org.opendaylight.netconf.sal.rest.api.Draft02; import org.opendaylight.netconf.sal.rest.impl.JsonNormalizedNodeBodyReader; import org.opendaylight.netconf.sal.rest.impl.NormalizedNodeJsonBodyWriter; @@ -46,8 +49,7 @@ import org.opendaylight.netconf.sal.restconf.impl.ControllerContext; import org.opendaylight.netconf.sal.restconf.impl.RestconfImpl; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; -import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; +import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class RestPostOperationTest extends JerseyTest { @@ -55,9 +57,9 @@ public class RestPostOperationTest extends JerseyTest { private static String xmlData3; private static String xmlData4; - private static SchemaContext schemaContextYangsIetf; - private static SchemaContext schemaContextTestModule; - private static SchemaContext schemaContext; + private static EffectiveModelContext schemaContextYangsIetf; + private static EffectiveModelContext schemaContextTestModule; + private static EffectiveModelContext schemaContext; private BrokerFacade brokerFacade; private RestconfImpl restconfImpl; @@ -65,7 +67,7 @@ public class RestPostOperationTest extends JerseyTest { private DOMMountPoint mountInstance; @BeforeClass - public static void init() throws URISyntaxException, IOException, ReactorException { + public static void init() throws URISyntaxException, IOException { schemaContextYangsIetf = TestUtils.loadSchemaContext("/full-versions/yangs"); schemaContextTestModule = TestUtils.loadSchemaContext("/full-versions/test-module"); schemaContext = TestUtils.loadSchemaContext("/test-config-data/yang1"); @@ -93,7 +95,7 @@ public class RestPostOperationTest extends JerseyTest { return resourceConfig; } - private void setSchemaControllerContext(final SchemaContext schema) { + private void setSchemaControllerContext(final EffectiveModelContext schema) { controllerContext.setSchemas(schema); } @@ -103,9 +105,10 @@ public class RestPostOperationTest extends JerseyTest { public void postDataViaUrlMountPoint() throws UnsupportedEncodingException { setSchemaControllerContext(schemaContextYangsIetf); when(brokerFacade.commitConfigurationDataPost(any(DOMMountPoint.class), any(YangInstanceIdentifier.class), - any(NormalizedNode.class), null, null)).thenReturn(mock(CheckedFuture.class)); + any(NormalizedNode.class), null, null)).thenReturn(mock(FluentFuture.class)); - when(mountInstance.getSchemaContext()).thenReturn(schemaContextTestModule); + when(mountInstance.getService(DOMSchemaService.class)) + .thenReturn(Optional.of(FixedDOMSchemaService.of(schemaContextTestModule))); String uri = "/config/ietf-interfaces:interfaces/interface/0/"; assertEquals(204, post(uri, Draft02.MediaTypes.DATA + XML, xmlData4)); @@ -120,13 +123,12 @@ public class RestPostOperationTest extends JerseyTest { @Ignore //jenkins has problem with JerseyTest // - we expecting problems with singletons ControllerContext as schemaContext holder public void createConfigurationDataTest() throws UnsupportedEncodingException, ParseException { - when(brokerFacade.commitConfigurationDataPost((SchemaContext) null, any(YangInstanceIdentifier.class), + when(brokerFacade.commitConfigurationDataPost((EffectiveModelContext) null, any(YangInstanceIdentifier.class), any(NormalizedNode.class), null, null)) - .thenReturn(mock(CheckedFuture.class)); + .thenReturn(mock(FluentFuture.class)); final ArgumentCaptor instanceIdCaptor = ArgumentCaptor.forClass(YangInstanceIdentifier.class); - @SuppressWarnings("rawtypes") final ArgumentCaptor compNodeCaptor = ArgumentCaptor.forClass(NormalizedNode.class); @@ -142,8 +144,8 @@ public class RestPostOperationTest extends JerseyTest { // FIXME : NEVER test a nr. of call some service in complex test suite // verify(brokerFacade, times(2)) verify(brokerFacade, times(1)) - .commitConfigurationDataPost((SchemaContext) null, instanceIdCaptor.capture(), compNodeCaptor.capture(), - null, null); + .commitConfigurationDataPost((EffectiveModelContext) null, instanceIdCaptor.capture(), + compNodeCaptor.capture(), null, null); // identifier = "[(urn:ietf:params:xml:ns:yang:test-interface?revision=2014-07-01)interfaces," + // "(urn:ietf:params:xml:ns:yang:test-interface?revision=2014-07-01)block]"; assertEquals(identifier, ImmutableList.copyOf(instanceIdCaptor.getValue().getPathArguments()).toString()); @@ -151,9 +153,9 @@ public class RestPostOperationTest extends JerseyTest { @Test public void createConfigurationDataNullTest() throws UnsupportedEncodingException { - when(brokerFacade.commitConfigurationDataPost(any(SchemaContext.class), any(YangInstanceIdentifier.class), - any(NormalizedNode.class), Mockito.anyString(), Mockito.anyString())) - .thenReturn(Futures.immediateCheckedFuture(null)); + doReturn(CommitInfo.emptyFluentFuture()).when(brokerFacade).commitConfigurationDataPost( + any(EffectiveModelContext.class), any(YangInstanceIdentifier.class), any(NormalizedNode.class), isNull(), + isNull()); //FIXME : find who is set schemaContext // final String URI_1 = "/config";