From f74c992c1ad8471303df62066ab5f9d778825e30 Mon Sep 17 00:00:00 2001 From: Jakub Dudycz Date: Fri, 16 Mar 2018 16:44:51 +0100 Subject: InputBody and OutputBody unit tests Improved code coverage. Change-Id: I8b083f3281f0057d14cdfa9ae3c47eb3da99614e Issue-ID: APPC-745 Signed-off-by: Jakub Dudycz --- .../appc/listener/LCM/model/InputBodyTest.java | 98 ++++++++++++++++++ .../appc/listener/LCM/model/OutputBodyTest.java | 113 +++++++++++++++++++++ 2 files changed, 211 insertions(+) create mode 100644 appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/InputBodyTest.java create mode 100644 appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/OutputBodyTest.java (limited to 'appc-event-listener/appc-event-listener-bundle/src/test') diff --git a/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/InputBodyTest.java b/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/InputBodyTest.java new file mode 100644 index 000000000..0593eb2dc --- /dev/null +++ b/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/InputBodyTest.java @@ -0,0 +1,98 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2018 Nokia Solutions and Networks + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ +package org.onap.appc.listener.LCM.model; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.util.HashMap; +import java.util.Map; +import org.junit.Before; +import org.junit.Test; + +public class InputBodyTest { + + private InputBody inputBody; + + @Before + public void setup() { + inputBody = new InputBody(); + } + + @Test + public void should_set_properties() { + + CommonHeader testCommonHeader = buildCommonHeader(); + ActionIdentifiers testActionIdentifiers = buildActionIdentifiers(); + + inputBody.setCommonHeader(testCommonHeader); + inputBody.setActionIdentifiers(testActionIdentifiers); + inputBody.setAction("test-action"); + inputBody.setPayload("{\"payload\": \"value\""); + + assertEquals(testCommonHeader, inputBody.getCommonHeader()); + assertEquals(testActionIdentifiers, inputBody.getActionIdentifiers()); + assertEquals("test-action", inputBody.getAction()); + assertEquals("{\"payload\": \"value\"", inputBody.getPayload()); + } + + @Test + public void should_verify_if_is_valid() { + + assertFalse(inputBody.isValid()); + inputBody.setCommonHeader(buildCommonHeader()); + assertTrue(inputBody.isValid()); + } + + + private CommonHeader buildCommonHeader() { + + CommonHeader commonHeader = new CommonHeader(); + commonHeader.setTimeStamp("test-timestamp"); + commonHeader.setApiVer("test-api-version"); + commonHeader.setOriginatorId("test-originator-id"); + commonHeader.setRequestID("test-request-id"); + commonHeader.setSubRequestId("test-subrequest-id"); + + Map flags = new HashMap<>(); + flags.put("key1", "flag1"); + flags.put("key2", "flag2"); + flags.put("key3", "flag3"); + + commonHeader.setFlags(flags); + return commonHeader; + } + + private ActionIdentifiers buildActionIdentifiers() { + + ActionIdentifiers actionIdentifiers = new ActionIdentifiers(); + actionIdentifiers.setServiceInstanceId("test-instance-id"); + actionIdentifiers.setVnfID("test-vnf-id"); + actionIdentifiers.setVnfcName("test-name"); + actionIdentifiers.setVserverId("test-vserver-id"); + + return actionIdentifiers; + } +} diff --git a/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/OutputBodyTest.java b/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/OutputBodyTest.java new file mode 100644 index 000000000..2d73aa5d8 --- /dev/null +++ b/appc-event-listener/appc-event-listener-bundle/src/test/java/org/onap/appc/listener/LCM/model/OutputBodyTest.java @@ -0,0 +1,113 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2018 Nokia Solutions and Networks + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ +package org.onap.appc.listener.LCM.model; + +import static junit.framework.TestCase.assertNotNull; +import static org.junit.Assert.assertEquals; + +import java.util.HashMap; +import java.util.Map; +import org.json.JSONObject; +import org.junit.Before; +import org.junit.Test; + +public class OutputBodyTest { + + private OutputBody outputBody; + + @Before + public void setup() { + outputBody = new OutputBody(); + } + + @Test + public void should_set_properties() { + + CommonHeader testCommonHeader = buildCommonHeader(); + ResponseStatus testResponseStatus = new ResponseStatus(200, "OK"); + + outputBody.setHeader(testCommonHeader); + outputBody.setStatus(testResponseStatus); + outputBody.setLocked("test-locked"); + outputBody.setPayload("{\"payload\": \"value\""); + + assertEquals(testCommonHeader, outputBody.getHeader()); + assertEquals(testResponseStatus, outputBody.getStatus()); + assertEquals("test-locked", outputBody.getLocked()); + assertEquals("{\"payload\": \"value\"", outputBody.getPayload()); + } + + + @Test + public void should_inherit_input_body_header_when_initialized_from_constructor() { + + InputBody testInputBody = new InputBody(); + CommonHeader testCommonHeader = buildCommonHeader(); + testInputBody.setCommonHeader(testCommonHeader); + + outputBody = new OutputBody(testInputBody); + + assertNotNull(outputBody.getHeader()); + assertEquals(testCommonHeader.getFlags(), outputBody.getHeader().getFlags()); + assertEquals(testCommonHeader.getSubRequestId(), outputBody.getHeader().getSubRequestId()); + assertEquals(testCommonHeader.getRequestID(), outputBody.getHeader().getRequestID()); + assertEquals(testCommonHeader.getOriginatorId(), outputBody.getHeader().getOriginatorId()); + assertEquals(testCommonHeader.getApiVer(), outputBody.getHeader().getApiVer()); + } + + @Test + public void toResponse_should_convert_to_json_object() { + CommonHeader testCommonHeader = buildCommonHeader(); + ResponseStatus testResponseStatus = new ResponseStatus(200, "OK"); + + outputBody.setHeader(testCommonHeader); + outputBody.setStatus(testResponseStatus); + outputBody.setLocked("test-locked"); + outputBody.setPayload("{\"payload\": \"value\""); + + JSONObject response = outputBody.toResponse(); + assertNotNull(response); + + assertEquals("test-locked", response.get("locked")); + assertEquals("{\"payload\": \"value\"", response.get("payload")); + } + + private CommonHeader buildCommonHeader() { + + CommonHeader commonHeader = new CommonHeader(); + commonHeader.setTimeStamp("test-timestamp"); + commonHeader.setApiVer("test-api-version"); + commonHeader.setOriginatorId("test-originator-id"); + commonHeader.setRequestID("test-request-id"); + commonHeader.setSubRequestId("test-subrequest-id"); + + Map flags = new HashMap<>(); + flags.put("key1", "flag1"); + flags.put("key2", "flag2"); + flags.put("key3", "flag3"); + + commonHeader.setFlags(flags); + return commonHeader; + } +} -- cgit 1.2.3-korg