diff options
Diffstat (limited to 'controlloop/common/model-impl/appclcm/src')
14 files changed, 835 insertions, 158 deletions
diff --git a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMRequest.java b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMRequest.java index 51db7fef0..83442d9bf 100644 --- a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMRequest.java +++ b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMRequest.java @@ -42,7 +42,7 @@ public class LCMRequest implements Serializable { private String payload; public LCMRequest() { - + // Create a default LCM request } public LCMCommonHeader getCommonHeader() { diff --git a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseCode.java b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseCode.java index 85427c468..8a7c36d2b 100644 --- a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseCode.java +++ b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseCode.java @@ -33,10 +33,10 @@ public class LCMResponseCode { private Integer code; - private LCMResponseCode(int code) { - this.code = code; + protected LCMResponseCode(final int code) { + this.code = code; } - + public int getCode() { return this.code; } diff --git a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseStatus.java b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseStatus.java index 131e331bf..1db4e8ef7 100644 --- a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseStatus.java +++ b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMResponseStatus.java @@ -25,83 +25,83 @@ import java.io.Serializable; public class LCMResponseStatus implements Serializable { - private static final long serialVersionUID = 974891505135467199L; - - @SerializedName(value="code") - private int code; - - @SerializedName(value="message") - private String message; - - public LCMResponseStatus() { - - } + private static final long serialVersionUID = 974891505135467199L; - /** - * @return the code - */ - public int getCode() { - return code; - } - - /** - * @param code the code to set - */ - public void setCode(int code) { - this.code = code; - } + @SerializedName(value="code") + private int code; - /** - * @return the message - */ - public String getMessage() { - return message; - } + @SerializedName(value="message") + private String message; - /** - * @param message the message to set - */ - public void setMessage(String message) { - this.message = message; - } + public LCMResponseStatus() { + // Create a default LCMResponseStatus instance + } - @Override - public String toString() { - return "ResponseStatus [code=" + code + ", message=" + message + "]"; - } + /** + * @return the code + */ + public int getCode() { + return code; + } - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + code; - result = prime * result + ((message == null) ? 0 : message.hashCode()); - return result; - } + /** + * @param code the code to set + */ + public void setCode(int code) { + this.code = code; + } - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - LCMResponseStatus other = (LCMResponseStatus) obj; - if (code != other.code) { - return false; - } - if (message == null) { - if (other.message != null) { - return false; - } - } else if (!message.equals(other.message)) { - return false; - } - return true; - } + /** + * @return the message + */ + public String getMessage() { + return message; + } + + /** + * @param message the message to set + */ + public void setMessage(String message) { + this.message = message; + } + + @Override + public String toString() { + return "ResponseStatus [code=" + code + ", message=" + message + "]"; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + code; + result = prime * result + ((message == null) ? 0 : message.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + LCMResponseStatus other = (LCMResponseStatus) obj; + if (code != other.code) { + return false; + } + if (message == null) { + if (other.message != null) { + return false; + } + } else if (!message.equals(other.message)) { + return false; + } + return true; + } } diff --git a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMWrapper.java b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMWrapper.java index c9f72c2e2..c70e7423a 100644 --- a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMWrapper.java +++ b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/LCMWrapper.java @@ -43,7 +43,7 @@ public class LCMWrapper implements Serializable { private String type; public LCMWrapper() { - + // Create a default LCMWrapper instance } /** diff --git a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java index e41fa3653..5a5e2e2e6 100644 --- a/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java +++ b/controlloop/common/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java @@ -32,88 +32,83 @@ import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonDeserializer; import com.google.gson.JsonElement; import com.google.gson.JsonObject; -import com.google.gson.JsonParseException; import com.google.gson.JsonPrimitive; import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; public final class Serialization { + private Serialization() { + } - public static class RequestAdapter implements JsonSerializer<LCMRequest>, JsonDeserializer<LCMRequest> { - - @Override - public JsonElement serialize(LCMRequest src, Type typeOfSrc, JsonSerializationContext context) { - JsonElement requestJson = gsonPretty.toJsonTree(src, LCMRequest.class); - JsonObject input = new JsonObject(); - input.add("input", requestJson); - - return input; - } - - @Override - public LCMRequest deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) - throws JsonParseException { - LCMRequest request = gsonPretty.fromJson(json.getAsJsonObject().get("input"), LCMRequest.class); - return request; - } - } - - public static class ResponseAdapter implements JsonSerializer<LCMResponse>, JsonDeserializer<LCMResponse> { - - @Override - public JsonElement serialize(LCMResponse src, Type typeOfSrc, JsonSerializationContext context) { - JsonElement responseJson = gsonPretty.toJsonTree(src, LCMResponse.class); - JsonObject output = new JsonObject(); - output.add("output", responseJson); - return output; - } - - @Override - public LCMResponse deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) - throws JsonParseException { - LCMResponse response = gsonPretty.fromJson(json.getAsJsonObject().get("output"), LCMResponse.class); - return response; - } - } - - public static class InstantAdapter implements JsonSerializer<Instant>, JsonDeserializer<Instant> { - - @Override - public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) - throws JsonParseException { - return Instant.parse(json.getAsString()); - } - - @Override - public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) { - return new JsonPrimitive(src.toString()); - } - - } - - public static class InstantJunitAdapter implements JsonSerializer<Instant>, JsonDeserializer<Instant> { - - @Override - public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) - throws JsonParseException { - return Instant.ofEpochMilli(json.getAsLong()); - } - - @Override - public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) { - return new JsonPrimitive(src.toEpochMilli()); - } - - } - - public static final Gson gsonPretty = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() - .registerTypeAdapter(Instant.class, new InstantAdapter()).create(); - - public static final Gson gson = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() - .registerTypeAdapter(LCMRequest.class, new RequestAdapter()) - .registerTypeAdapter(LCMResponse.class, new ResponseAdapter()).create(); - - public static final Gson gsonJunit = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() - .registerTypeAdapter(Instant.class, new InstantJunitAdapter()).create(); + public static class RequestAdapter implements JsonSerializer<LCMRequest>, JsonDeserializer<LCMRequest> { + + @Override + public JsonElement serialize(LCMRequest src, Type typeOfSrc, JsonSerializationContext context) { + JsonElement requestJson = gsonPretty.toJsonTree(src, LCMRequest.class); + JsonObject input = new JsonObject(); + input.add("input", requestJson); + + return input; + } + + @Override + public LCMRequest deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { + return gsonPretty.fromJson(json.getAsJsonObject().get("input"), LCMRequest.class); + } + } + + public static class ResponseAdapter implements JsonSerializer<LCMResponse>, JsonDeserializer<LCMResponse> { + + @Override + public JsonElement serialize(LCMResponse src, Type typeOfSrc, JsonSerializationContext context) { + JsonElement responseJson = gsonPretty.toJsonTree(src, LCMResponse.class); + JsonObject output = new JsonObject(); + output.add("output", responseJson); + return output; + } + + @Override + public LCMResponse deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { + return gsonPretty.fromJson(json.getAsJsonObject().get("output"), LCMResponse.class); + } + } + + public static class InstantAdapter implements JsonSerializer<Instant>, JsonDeserializer<Instant> { + + @Override + public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { + return Instant.parse(json.getAsString()); + } + + @Override + public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) { + return new JsonPrimitive(src.toString()); + } + + } + + public static class InstantJunitAdapter implements JsonSerializer<Instant>, JsonDeserializer<Instant> { + + @Override + public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { + return Instant.ofEpochMilli(json.getAsLong()); + } + + @Override + public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) { + return new JsonPrimitive(src.toEpochMilli()); + } + + } + + public static final Gson gsonPretty = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() + .registerTypeAdapter(Instant.class, new InstantAdapter()).create(); + + public static final Gson gson = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() + .registerTypeAdapter(LCMRequest.class, new RequestAdapter()) + .registerTypeAdapter(LCMResponse.class, new ResponseAdapter()).create(); + + public static final Gson gsonJunit = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() + .registerTypeAdapter(Instant.class, new InstantJunitAdapter()).create(); } diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/AppcLcmTest.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/AppcLcmTest.java index 41bafe498..2d58bfd99 100644 --- a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/AppcLcmTest.java +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/AppcLcmTest.java @@ -140,7 +140,7 @@ public class AppcLcmTest { /* * The type of the DMAAP wrapper should be request */ - assertEquals(dmaapRequest.getType(), "request"); + assertEquals("request", dmaapRequest.getType()); /* * The DMAAP wrapper must have a body as that is @@ -160,7 +160,7 @@ public class AppcLcmTest { * set to restart */ assertNotNull(appcRequest.getAction()); - assertEquals(appcRequest.getAction(), "restart"); + assertEquals("restart", appcRequest.getAction()); /* * The action-identifiers should not be null @@ -217,7 +217,7 @@ public class AppcLcmTest { /* * The type of the DMAAP wrapper should be response */ - assertEquals(dmaapResponse.getType(), "response"); + assertEquals("response", dmaapResponse.getType()); /* * The DMAAP wrapper must have a body as that is @@ -237,7 +237,7 @@ public class AppcLcmTest { * status code should be 400 */ assertNotNull(appcResponse.getStatus()); - assertEquals(appcResponse.getStatus().getCode(), 400); + assertEquals(400, appcResponse.getStatus().getCode()); logger.debug("Response as a Java Object: \n" + appcResponse.toString() + "\n\n"); } diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMCommonHeader.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMCommonHeader.java new file mode 100644 index 000000000..6921068e5 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMCommonHeader.java @@ -0,0 +1,159 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import java.time.Instant; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +import org.junit.Test; + +public class TestLCMCommonHeader { + + @Test + public void testLCMLCMCommonHeader() { + LCMCommonHeader commonHeader = new LCMCommonHeader(); + assertNotNull(commonHeader); + assertNotNull(new LCMCommonHeader(commonHeader)); + assertNotEquals(0, commonHeader.hashCode()); + + commonHeader.setApiVer("Kansas"); + assertEquals("Kansas", commonHeader.getApiVer()); + + Map<String, String> flagMap = new HashMap<>(); + commonHeader.setFlags(flagMap); + assertEquals(flagMap, commonHeader.getFlags()); + + commonHeader.setOriginatorId("Dorothy"); + assertEquals("Dorothy", commonHeader.getOriginatorId()); + + UUID requestId = UUID.randomUUID(); + commonHeader.setRequestId(requestId); + assertEquals(requestId, commonHeader.getRequestId()); + + commonHeader.setSubRequestId("Can I go home?"); + assertEquals("Can I go home?", commonHeader.getSubRequestId()); + + Instant timestamp = Instant.now(); + commonHeader.setTimeStamp(timestamp); + assertEquals(timestamp, commonHeader.getTimeStamp()); + + assertNotEquals(0, commonHeader.hashCode()); + + assertEquals("CommonHeader [timeStamp=", commonHeader.toString().substring(0, 24)); + + LCMCommonHeader copiedLCMCommonHeader = new LCMCommonHeader(); + copiedLCMCommonHeader.setApiVer(commonHeader.getApiVer()); + copiedLCMCommonHeader.setFlags(commonHeader.getFlags()); + copiedLCMCommonHeader.setOriginatorId(commonHeader.getOriginatorId()); + copiedLCMCommonHeader.setRequestId(commonHeader.getRequestId()); + copiedLCMCommonHeader.setSubRequestId(commonHeader.getSubRequestId()); + copiedLCMCommonHeader.setTimeStamp(commonHeader.getTimeStamp()); + + assertTrue(commonHeader.equals(commonHeader)); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + assertFalse(commonHeader.equals(null)); + assertFalse(commonHeader.equals("Hello")); + + LCMCommonHeader clonedLCMCommonHeader = new LCMCommonHeader(commonHeader); + clonedLCMCommonHeader.setApiVer(commonHeader.getApiVer()); + clonedLCMCommonHeader.setTimeStamp(commonHeader.getTimeStamp()); + + assertTrue(commonHeader.equals(clonedLCMCommonHeader)); + + commonHeader.setApiVer(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setApiVer(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setApiVer("Kansas"); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setApiVer("Kansas"); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + + commonHeader.setFlags(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setFlags(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setFlags(flagMap); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setFlags(flagMap); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + + commonHeader.setOriginatorId(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setOriginatorId(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setOriginatorId("Dorothy"); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setOriginatorId("Dorothy"); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + + commonHeader.setRequestId(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setRequestId(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setRequestId(requestId); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setRequestId(requestId); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + + commonHeader.setSubRequestId(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setSubRequestId(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setSubRequestId("Can I go home?"); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setSubRequestId("Can I go home?"); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + + commonHeader.setTimeStamp(null); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setTimeStamp(null); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + commonHeader.setTimeStamp(timestamp); + assertFalse(commonHeader.equals(copiedLCMCommonHeader)); + copiedLCMCommonHeader.setTimeStamp(timestamp); + assertTrue(commonHeader.equals(copiedLCMCommonHeader)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequest.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequest.java new file mode 100644 index 000000000..223e50147 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequest.java @@ -0,0 +1,107 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import java.util.HashMap; +import java.util.Map; + +import org.junit.Test; + +public class TestLCMRequest { + + @Test + public void testLCMRequest() { + LCMRequest request = new LCMRequest(); + assertNotNull(request); + assertNotEquals(0, request.hashCode()); + + LCMCommonHeader commonHeader = new LCMCommonHeader(); + + request.setCommonHeader(commonHeader); + assertEquals(commonHeader, request.getCommonHeader()); + + request.setAction("Go to Oz"); + assertEquals("Go to Oz", request.getAction()); + + Map<String, String> actionIdentifiers = new HashMap<>(); + actionIdentifiers.put("North", "Good Witch"); + actionIdentifiers.put("West", "Bad Witch"); + + request.setActionIdentifiers(actionIdentifiers); + assertEquals(actionIdentifiers, request.getActionIdentifiers()); + + request.setPayload("The Emerald City"); + assertEquals("The Emerald City", request.getPayload()); + + assertNotEquals(0, request.hashCode()); + + assertEquals("Request [commonHeader=CommonHeader [timeStamp=", request.toString().substring(0, 46)); + + LCMRequest copiedLCMRequest = new LCMRequest(); + copiedLCMRequest.setCommonHeader(request.getCommonHeader()); + copiedLCMRequest.setAction(request.getAction()); + copiedLCMRequest.setActionIdentifiers(request.getActionIdentifiers()); + copiedLCMRequest.setPayload(request.getPayload()); + + assertTrue(request.equals(request)); + assertTrue(request.equals(copiedLCMRequest)); + assertFalse(request.equals(null)); + assertFalse(request.equals("Hello")); + + request.setCommonHeader(null); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setCommonHeader(null); + assertTrue(request.equals(copiedLCMRequest)); + request.setCommonHeader(commonHeader); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setCommonHeader(commonHeader); + assertTrue(request.equals(copiedLCMRequest)); + + request.setAction(null); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setAction(null); + assertTrue(request.equals(copiedLCMRequest)); + request.setAction("Go to Oz"); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setAction("Go to Oz"); + assertTrue(request.equals(copiedLCMRequest)); + + request.setActionIdentifiers(null); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setActionIdentifiers(null); + assertTrue(request.equals(copiedLCMRequest)); + request.setActionIdentifiers(actionIdentifiers); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setActionIdentifiers(actionIdentifiers); + assertTrue(request.equals(copiedLCMRequest)); + + request.setPayload(null); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setPayload(null); + assertTrue(request.equals(copiedLCMRequest)); + request.setPayload("The Emerald City"); + assertFalse(request.equals(copiedLCMRequest)); + copiedLCMRequest.setPayload("The Emerald City"); + assertTrue(request.equals(copiedLCMRequest)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequestWrapper.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequestWrapper.java new file mode 100644 index 000000000..0a5205509 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMRequestWrapper.java @@ -0,0 +1,62 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class TestLCMRequestWrapper { + + @Test + public void testLCMRequestWrapperWrapper() { + assertNotNull(new LCMRequestWrapper(new LCMRequest())); + LCMRequestWrapper requestWrapper = new LCMRequestWrapper(); + assertNotNull(requestWrapper); + assertNotEquals(0, requestWrapper.hashCode()); + + LCMRequest request = new LCMRequest(); + + requestWrapper.setBody(request); + assertEquals(request, requestWrapper.getBody()); + + assertNotEquals(0, requestWrapper.hashCode()); + + assertEquals("RequestWrapper [body=Request [commonHeader=nul", requestWrapper.toString().substring(0, 46)); + + LCMRequestWrapper copiedLCMRequestWrapper = new LCMRequestWrapper(); + copiedLCMRequestWrapper.setBody(requestWrapper.getBody()); + + assertTrue(requestWrapper.equals(requestWrapper)); + assertTrue(requestWrapper.equals(copiedLCMRequestWrapper)); + assertFalse(requestWrapper.equals(null)); + assertFalse(requestWrapper.equals("Hello")); + + requestWrapper.setBody(null); + assertFalse(requestWrapper.equals(copiedLCMRequestWrapper)); + copiedLCMRequestWrapper.setBody(null); + assertTrue(requestWrapper.equals(copiedLCMRequestWrapper)); + requestWrapper.setBody(request); + assertFalse(requestWrapper.equals(copiedLCMRequestWrapper)); + copiedLCMRequestWrapper.setBody(request); + assertTrue(requestWrapper.equals(copiedLCMRequestWrapper)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResonseCode.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResonseCode.java new file mode 100644 index 000000000..59606f8b4 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResonseCode.java @@ -0,0 +1,54 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class TestLCMResonseCode { + + @Test + public void testLCMResponseCode() { + assertNull(LCMResponseCode.toResponseValue(0)); + + assertEquals(LCMResponseCode.ACCEPTED, LCMResponseCode.toResponseValue(100)); + assertEquals(LCMResponseCode.ERROR, LCMResponseCode.toResponseValue(200)); + assertEquals(LCMResponseCode.REJECT, LCMResponseCode.toResponseValue(300)); + assertEquals(LCMResponseCode.SUCCESS, LCMResponseCode.toResponseValue(400)); + assertEquals(LCMResponseCode.FAILURE, LCMResponseCode.toResponseValue(450)); + assertEquals(LCMResponseCode.FAILURE, LCMResponseCode.toResponseValue(401)); + assertEquals(LCMResponseCode.FAILURE, LCMResponseCode.toResponseValue(406)); + assertEquals(LCMResponseCode.PARTIAL_SUCCESS, LCMResponseCode.toResponseValue(500)); + assertEquals(LCMResponseCode.PARTIAL_FAILURE, LCMResponseCode.toResponseValue(501)); + assertEquals(LCMResponseCode.PARTIAL_FAILURE, LCMResponseCode.toResponseValue(599)); + + assertEquals("100", new LCMResponseCode(100).toString()); + assertEquals("200", new LCMResponseCode(200).toString()); + assertEquals("300", new LCMResponseCode(300).toString()); + assertEquals("400", new LCMResponseCode(400).toString()); + assertEquals("450", new LCMResponseCode(450).toString()); + assertEquals("500", new LCMResponseCode(500).toString()); + assertEquals("510", new LCMResponseCode(510).toString()); + + assertEquals(300, new LCMResponseCode(300).getCode()); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseStatus.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseStatus.java new file mode 100644 index 000000000..0b6cbcf22 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseStatus.java @@ -0,0 +1,70 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class TestLCMResponseStatus { + + @Test + public void testResonseStatus() { + LCMResponseStatus status = new LCMResponseStatus(); + assertNotNull(status); + assertNotEquals(0, status.hashCode()); + + status.setCode(1234); + assertEquals(1234, status.getCode()); + + status.setMessage("The wonderful land of Oz"); + assertEquals("The wonderful land of Oz", status.getMessage()); + + assertEquals("ResponseStatus [code=1234, message=The wonderfu", status.toString().substring(0, 47)); + + LCMResponseStatus copiedStatus = new LCMResponseStatus(); + copiedStatus.setCode(status.getCode()); + copiedStatus.setMessage(status.getMessage()); + + assertTrue(status.equals(status)); + assertTrue(status.equals(copiedStatus)); + assertFalse(status.equals(null)); + assertFalse(status.equals("Hello")); + + status.setCode(-1); + assertFalse(status.equals(copiedStatus)); + copiedStatus.setCode(-1); + assertTrue(status.equals(copiedStatus)); + status.setCode(1234); + assertFalse(status.equals(copiedStatus)); + copiedStatus.setCode(1234); + assertTrue(status.equals(copiedStatus)); + + status.setMessage(null); + assertFalse(status.equals(copiedStatus)); + copiedStatus.setMessage(null); + assertTrue(status.equals(copiedStatus)); + status.setMessage("The wonderful land of Oz"); + assertFalse(status.equals(copiedStatus)); + copiedStatus.setMessage("The wonderful land of Oz"); + assertTrue(status.equals(copiedStatus)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseWrapper.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseWrapper.java new file mode 100644 index 000000000..d27fbaff3 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMResponseWrapper.java @@ -0,0 +1,61 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class TestLCMResponseWrapper { + + @Test + public void testLCMResponseWrapperWrapper() { + LCMResponseWrapper responseWrapper = new LCMResponseWrapper(); + assertNotNull(responseWrapper); + assertNotEquals(0, responseWrapper.hashCode()); + + LCMResponse response = new LCMResponse(); + + responseWrapper.setBody(response); + assertEquals(response, responseWrapper.getBody()); + + assertNotEquals(0, responseWrapper.hashCode()); + + assertEquals("ResponseWrapper [body=Response [commonHeader=n", responseWrapper.toString().substring(0, 46)); + + LCMResponseWrapper copiedLCMResponseWrapper = new LCMResponseWrapper(); + copiedLCMResponseWrapper.setBody(responseWrapper.getBody()); + + assertTrue(responseWrapper.equals(responseWrapper)); + assertTrue(responseWrapper.equals(copiedLCMResponseWrapper)); + assertFalse(responseWrapper.equals(null)); + assertFalse(responseWrapper.equals("Hello")); + + responseWrapper.setBody(null); + assertFalse(responseWrapper.equals(copiedLCMResponseWrapper)); + copiedLCMResponseWrapper.setBody(null); + assertTrue(responseWrapper.equals(copiedLCMResponseWrapper)); + responseWrapper.setBody(response); + assertFalse(responseWrapper.equals(copiedLCMResponseWrapper)); + copiedLCMResponseWrapper.setBody(response); + assertTrue(responseWrapper.equals(copiedLCMResponseWrapper)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMWrapper.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMWrapper.java new file mode 100644 index 000000000..20baf154d --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/appclcm/TestLCMWrapper.java @@ -0,0 +1,111 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.appclcm; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class TestLCMWrapper { + + @Test + public void testLCMWrapper() { + LCMWrapper wrapper = new LCMWrapper(); + assertNotNull(wrapper); + assertNotEquals(0, wrapper.hashCode()); + + wrapper.setVersion("19.3.9"); + assertEquals("19.3.9", wrapper.getVersion()); + + wrapper.setCambriaPartition("The Emerald City"); + assertEquals("The Emerald City", wrapper.getCambriaPartition()); + + wrapper.setRpcName("Tornado"); + assertEquals("Tornado", wrapper.getRpcName()); + + wrapper.setCorrelationId("YellowBrickRoad"); + assertEquals("YellowBrickRoad", wrapper.getCorrelationId()); + + wrapper.setType("Munchkin"); + assertEquals("Munchkin", wrapper.getType()); + + assertNotEquals(0, wrapper.hashCode()); + + assertEquals("Wrapper [version=19.3.9, cambriaPartition=The ", wrapper.toString().substring(0, 46)); + + LCMWrapper copiedLCMWrapper = new LCMWrapper(); + copiedLCMWrapper.setVersion(wrapper.getVersion()); + copiedLCMWrapper.setCambriaPartition(wrapper.getCambriaPartition()); + copiedLCMWrapper.setRpcName(wrapper.getRpcName()); + copiedLCMWrapper.setCorrelationId(wrapper.getCorrelationId()); + copiedLCMWrapper.setType(wrapper.getType()); + + assertTrue(wrapper.equals(wrapper)); + assertTrue(wrapper.equals(copiedLCMWrapper)); + assertFalse(wrapper.equals(null)); + assertFalse(wrapper.equals("Hello")); + + wrapper.setVersion(null); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setVersion(null); + assertTrue(wrapper.equals(copiedLCMWrapper)); + wrapper.setVersion("19.3.9"); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setVersion("19.3.9"); + assertTrue(wrapper.equals(copiedLCMWrapper)); + + wrapper.setCambriaPartition(null); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setCambriaPartition(null); + assertTrue(wrapper.equals(copiedLCMWrapper)); + wrapper.setCambriaPartition("The Emerald City"); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setCambriaPartition("The Emerald City"); + assertTrue(wrapper.equals(copiedLCMWrapper)); + + wrapper.setRpcName(null); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setRpcName(null); + assertTrue(wrapper.equals(copiedLCMWrapper)); + wrapper.setRpcName("Tornado"); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setRpcName("Tornado"); + assertTrue(wrapper.equals(copiedLCMWrapper)); + + wrapper.setCorrelationId(null); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setCorrelationId(null); + assertTrue(wrapper.equals(copiedLCMWrapper)); + wrapper.setCorrelationId("YellowBrickRoad"); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setCorrelationId("YellowBrickRoad"); + assertTrue(wrapper.equals(copiedLCMWrapper)); + + wrapper.setType(null); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setType(null); + assertTrue(wrapper.equals(copiedLCMWrapper)); + wrapper.setType("Munchkin"); + assertFalse(wrapper.equals(copiedLCMWrapper)); + copiedLCMWrapper.setType("Munchkin"); + assertTrue(wrapper.equals(copiedLCMWrapper)); + } +} diff --git a/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/applcm/util/TestSerialization.java b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/applcm/util/TestSerialization.java new file mode 100644 index 000000000..c7167f509 --- /dev/null +++ b/controlloop/common/model-impl/appclcm/src/test/java/org/onap/policy/applcm/util/TestSerialization.java @@ -0,0 +1,58 @@ +/*- + * ============LICENSE_START======================================================= + * appc + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.applcm.util; + +import static org.junit.Assert.*; + +import java.time.Instant; +import java.time.ZoneId; +import java.time.ZonedDateTime; + +import org.junit.Test; +import org.onap.policy.appclcm.util.Serialization; + +public class TestSerialization { + + @Test + public void test() { + String nameString = "Dorothy"; + String jsonName = Serialization.gsonPretty.toJson(nameString, String.class); + assertEquals("\"Dorothy\"", jsonName); + String jsonInOutName = Serialization.gsonPretty.fromJson(jsonName, String.class); + assertEquals("Dorothy", jsonInOutName); + + Instant instant0 = Instant.ofEpochMilli(1516127215000L); + String instantString0 = Serialization.gsonPretty.toJson(instant0, Instant.class); + assertEquals("\"2018-01-16T18:26:55Z\"", instantString0); + Instant outInstant0 = Serialization.gsonPretty.fromJson(instantString0, Instant.class); + assertEquals(instant0, outInstant0); + + Instant instant1 = Instant.ofEpochMilli(1516127215000L); + String instantString1 = Serialization.gsonJunit.toJson(instant1, Instant.class); + assertEquals("1516127215000", instantString1); + Instant outInstant1 = Serialization.gsonJunit.fromJson(instantString1, Instant.class); + assertEquals(instant1, outInstant1); + + ZonedDateTime zdt = ZonedDateTime.ofInstant(instant0, ZoneId.of("UTC")); + String zdtString = Serialization.gsonPretty.toJson(zdt, ZonedDateTime.class); + assertEquals("{\n \"dateTime\": {\n \"date\":", zdtString.substring(0, 29)); + } +} |