@Test public void createConfigurationDataTest() throws UnsupportedEncodingException, ParseException { initMocking(); RpcResult<TransactionStatus> rpcResult = new DummyRpcResult.Builder<TransactionStatus>().result(TransactionStatus.COMMITED).build(); when(brokerFacade.commitConfigurationDataPost( any(YangInstanceIdentifier.class), any(NormalizedNode.class))) .thenReturn(mock(CheckedFuture.class)); ArgumentCaptor<YangInstanceIdentifier> instanceIdCaptor = ArgumentCaptor.forClass(YangInstanceIdentifier.class); ArgumentCaptor<NormalizedNode> compNodeCaptor = ArgumentCaptor.forClass(NormalizedNode.class); String URI_1 = "/config"; assertEquals(204, post(URI_1, Draft02.MediaTypes.DATA + XML, xmlTestInterface)); verify(brokerFacade) .commitConfigurationDataPost(instanceIdCaptor.capture(), compNodeCaptor.capture()); String identifier = "[(urn:ietf:params:xml:ns:yang:test-interface?revision=2014-07-01)interfaces]"; assertEquals(identifier, instanceIdCaptor.getValue().getPath().toString()); String URI_2 = "/config/test-interface:interfaces"; assertEquals(204, post(URI_2, Draft02.MediaTypes.DATA + XML, xmlBlockData)); verify(brokerFacade, times(2)) .commitConfigurationDataPost(instanceIdCaptor.capture(), compNodeCaptor.capture()); 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, instanceIdCaptor.getValue().getPath().toString()); }
@Test public void createConfigurationDataNullTest() throws UnsupportedEncodingException { initMocking(); when(brokerFacade.commitConfigurationDataPost( any(YangInstanceIdentifier.class), any(NormalizedNode.class))) .thenReturn(null); String URI_1 = "/config"; assertEquals(204, post(URI_1, Draft02.MediaTypes.DATA + XML, xmlTestInterface)); String URI_2 = "/config/test-interface:interfaces"; assertEquals(204, post(URI_2, Draft02.MediaTypes.DATA + XML, xmlBlockData)); }
@Test public void postDataViaUrlMountPoint() throws UnsupportedEncodingException { controllerContext.setSchemas(schemaContextYangsIetf); when(brokerFacade.commitConfigurationDataPost( any(DOMMountPoint.class), any(YangInstanceIdentifier.class), any(NormalizedNode.class))) .thenReturn(mock(CheckedFuture.class)); DOMMountPoint mountInstance = mock(DOMMountPoint.class); when(mountInstance.getSchemaContext()).thenReturn(schemaContextTestModule); DOMMountPointService mockMountService = mock(DOMMountPointService.class); when(mockMountService.getMountPoint(any(YangInstanceIdentifier.class))) .thenReturn(Optional.of(mountInstance)); ControllerContext.getInstance().setMountService(mockMountService); String uri = "/config/ietf-interfaces:interfaces/interface/0/"; assertEquals(204, post(uri, Draft02.MediaTypes.DATA + XML, xmlData4)); uri = "/config/ietf-interfaces:interfaces/interface/0/yang-ext:mount/test-module:cont"; assertEquals(204, post(uri, Draft02.MediaTypes.DATA + XML, xmlData3)); assertEquals(400, post(uri, MediaType.APPLICATION_JSON, "")); }