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%2FRestPutConfigTest.java;fp=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fimpl%2Ftest%2FRestPutConfigTest.java;h=634b63c8fe20585db74e24163a85bc80c37edc78;hb=0319e44734fb4f201f01d166d456a51d3d25410b;hp=0df6a46311038f3e59396279d0fa5dc5ddc5e216;hpb=a0ae3e3e46a6c26f3f42e758b3d738d293a2290e;p=controller.git diff --git a/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPutConfigTest.java b/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPutConfigTest.java index 0df6a46311..634b63c8fe 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPutConfigTest.java +++ b/opendaylight/md-sal/sal-rest-connector/src/test/java/org/opendaylight/controller/sal/restconf/impl/test/RestPutConfigTest.java @@ -13,7 +13,6 @@ import com.google.common.util.concurrent.Futures; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.Matchers; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; @@ -27,6 +26,7 @@ import org.opendaylight.controller.sal.restconf.impl.RestconfDocumentedException import org.opendaylight.controller.sal.restconf.impl.RestconfImpl; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.model.api.SchemaContext; @@ -66,8 +66,10 @@ public class RestPutConfigTest { final InstanceIdentifierContext iiCx = controllerCx.toInstanceIdentifier(identifier); final MapEntryNode data = Mockito.mock(MapEntryNode.class); final QName qName = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "interface"); + final QName qNameKey = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "name"); + final NodeIdentifierWithPredicates identWithPredicates = new NodeIdentifierWithPredicates(qName, qNameKey, "key"); Mockito.when(data.getNodeType()).thenReturn(qName); - Mockito.when(data.getAttributeValue(Matchers.any(QName.class))).thenReturn("key"); + Mockito.when(data.getIdentifier()).thenReturn(identWithPredicates); final NormalizedNodeContext payload = new NormalizedNodeContext(iiCx, data); mockingBrokerPut(iiCx.getInstanceIdentifier(), data); @@ -75,14 +77,16 @@ public class RestPutConfigTest { restconfService.updateConfigurationData(identifier, payload); } - @Test(expected=RestconfDocumentedException.class) - public void testPutConfigDataNull() { - final String identifier = "test-interface:interfaces/interface/key"; + @Test + public void testPutConfigDataCheckOnlyLastElement() { + final String identifier = "test-interface:interfaces/interface/key/sub-interface/subkey"; final InstanceIdentifierContext iiCx = controllerCx.toInstanceIdentifier(identifier); final MapEntryNode data = Mockito.mock(MapEntryNode.class); - final QName qName = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "interface"); + final QName qName = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "sub-interface"); + final QName qNameSubKey = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "sub-name"); + final NodeIdentifierWithPredicates identWithPredicates = new NodeIdentifierWithPredicates(qName, qNameSubKey, "subkey"); Mockito.when(data.getNodeType()).thenReturn(qName); - Mockito.when(data.getAttributeValue(Matchers.any(QName.class))).thenReturn(null); + Mockito.when(data.getIdentifier()).thenReturn(identWithPredicates); final NormalizedNodeContext payload = new NormalizedNodeContext(iiCx, data); mockingBrokerPut(iiCx.getInstanceIdentifier(), data); @@ -90,14 +94,22 @@ public class RestPutConfigTest { restconfService.updateConfigurationData(identifier, payload); } + @Test(expected=RestconfDocumentedException.class) + public void testPutConfigDataMissingUriKey() { + final String identifier = "test-interface:interfaces/interface"; + controllerCx.toInstanceIdentifier(identifier); + } + @Test(expected=RestconfDocumentedException.class) public void testPutConfigDataDiferentKey() { final String identifier = "test-interface:interfaces/interface/key"; final InstanceIdentifierContext iiCx = controllerCx.toInstanceIdentifier(identifier); final MapEntryNode data = Mockito.mock(MapEntryNode.class); final QName qName = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "interface"); + final QName qNameKey = QName.create("urn:ietf:params:xml:ns:yang:test-interface", "2014-07-01", "name"); + final NodeIdentifierWithPredicates identWithPredicates = new NodeIdentifierWithPredicates(qName, qNameKey, "notSameKey"); Mockito.when(data.getNodeType()).thenReturn(qName); - Mockito.when(data.getAttributeValue(Matchers.any(QName.class))).thenReturn("notSameKey"); + Mockito.when(data.getIdentifier()).thenReturn(identWithPredicates); final NormalizedNodeContext payload = new NormalizedNodeContext(iiCx, data); mockingBrokerPut(iiCx.getInstanceIdentifier(), data);