diff options
author | ning.xi <ning.xi@est.tech> | 2019-07-30 00:31:18 +0000 |
---|---|---|
committer | ning.xi <ning.xi@est.tech> | 2019-07-30 00:31:18 +0000 |
commit | 015691cae16b4c6913cf7caf727011280308ac8b (patch) | |
tree | 213955a3143e9834b1c3569a4ec4d517ac26268b /testsuites/integration/integration-uservice-test/src/test | |
parent | 2c6b9c5524c8a0d829555fea2bc685efa8d12085 (diff) |
integration test for execution property rest API
Issue-ID: POLICY-1936
Change-Id: Ifc720cd320f5eced2f3c039b2ce6442387de240b
Signed-off-by: ning.xi <ning.xi@est.tech>
Diffstat (limited to 'testsuites/integration/integration-uservice-test/src/test')
10 files changed, 736 insertions, 7 deletions
diff --git a/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestExecutionPropertyRest.java b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestExecutionPropertyRest.java new file mode 100644 index 000000000..0ba41db81 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestExecutionPropertyRest.java @@ -0,0 +1,233 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2019 Nordix Foundation. + * ================================================================================ + * 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.testsuites.integration.uservice.adapt.restclient; + +import static org.junit.Assert.assertTrue; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.net.URI; +import javax.ws.rs.client.Client; +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.core.Response; +import org.glassfish.grizzly.http.server.HttpServer; +import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory; +import org.glassfish.jersey.server.ResourceConfig; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.onap.policy.apex.auth.clieditor.ApexCommandLineEditorMain; +import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities; +import org.onap.policy.apex.service.engine.main.ApexMain; +import org.onap.policy.common.utils.network.NetworkUtil; +import org.slf4j.ext.XLogger; +import org.slf4j.ext.XLoggerFactory; + +/** + * This class runs integration tests for execution property in restClient. + */ +public class TestExecutionPropertyRest { + + private static final XLogger LOGGER = XLoggerFactory.getXLogger(TestExecutionPropertyRest.class); + + private static final String BASE_URI = "http://localhost:32801/TestExecutionRest"; + private static HttpServer server; + + private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + private final ByteArrayOutputStream errContent = new ByteArrayOutputStream(); + + private final PrintStream stdout = System.out; + private final PrintStream stderr = System.err; + + /** + * Compile the policy. + */ + @BeforeClass + public static void compilePolicy() { + // @formatter:off + final String[] cliArgs = { + "-c", + "src/test/resources/policies/executionproperties/policy/ExecutionPropertiesRestTestPolicyModel.apex", + "-l", + "target/ExecutionPropertiesRestTestPolicyModel.log", + "-o", + "target/ExecutionPropertiesRestTestPolicyModel.json" + }; + // @formatter:on + + new ApexCommandLineEditorMain(cliArgs); + } + + /** + * Sets the up. + * + * @throws Exception the exception + */ + @BeforeClass + public static void setUp() throws Exception { + final ResourceConfig rc = new ResourceConfig(TestRestClientEndpoint.class); + server = GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc); + + if (NetworkUtil.isTcpPortOpen(BASE_URI, 32801, 1, 1L)) { + throw new IllegalStateException("port " + 32801 + " is still in use"); + } + + } + + /** + * Tear down. + * + * @throws Exception the exception + */ + @AfterClass + public static void tearDown() throws Exception { + server.shutdown(); + } + + /** + * Clear relative file root environment variable. + */ + @Before + public void clearRelativeFileRoot() { + System.clearProperty("APEX_RELATIVE_FILE_ROOT"); + } + + /** + * Test Bad Url tag in Parameter . + */ + @Test + public void testBadUrl() throws Exception { + System.setOut(new PrintStream(outContent)); + System.setErr(new PrintStream(errContent)); + + final String[] args = {"src/test/resources/testdata/executionproperties/RESTEventBadUrl.json"}; + final ApexMain apexMain = new ApexMain(args); + + ThreadUtilities.sleep(500); + + apexMain.shutdown(); + + final String outString = outContent.toString(); + + System.setOut(stdout); + System.setErr(stderr); + + LOGGER.info("testReplaceUrlTag-OUTSTRING=\n" + outString + "\nEnd-TagUrl"); + assertTrue(outString.contains("no proper URL has been set for event sending on REST client")); + } + + /** + * Test Not find value for tags in Url . + */ + @Test + public void testNoValueSetForTagUrl() throws Exception { + System.setOut(new PrintStream(outContent)); + System.setErr(new PrintStream(errContent)); + + final String[] args = {"src/test/resources/testdata/executionproperties/RESTEventNoValueSetForTag.json"}; + final ApexMain apexMain = new ApexMain(args); + + ThreadUtilities.sleep(1000); + + apexMain.shutdown(); + + final String outString = outContent.toString(); + + System.setOut(stdout); + System.setErr(stderr); + + LOGGER.info("testReplaceUrlTag-OUTSTRING=\n" + outString + "\nEnd-TagUrl"); + assertTrue(outString.contains("key\"Number\"specified on url \"http://localhost:32801/TestExecutionRest/apex" + + "/event/{tagId}/{Number}\"not found in execution properties passed by the current policy")); + } + + /** + * Test Bad Http code Filter. + */ + @Test + public void testBadCodeFilter() throws Exception { + System.setOut(new PrintStream(outContent)); + System.setErr(new PrintStream(errContent)); + + final String[] args = {"src/test/resources/testdata/executionproperties/RESTEventBadHttpCodeFilter.json"}; + final ApexMain apexMain = new ApexMain(args); + + ThreadUtilities.sleep(500); + + apexMain.shutdown(); + + final String outString = outContent.toString(); + + System.setOut(stdout); + System.setErr(stderr); + + LOGGER.info("testReplaceUrlTag-OUTSTRING=\n" + outString + "\nEnd-TagUrl"); + assertTrue(outString.contains("failed with status code 500 and message \"{\"testToRun\": FetchHttpCode}")); + } + + /** + * Test Http code filter set and tag Url are transformed correctly. + */ + @Test + public void testReplaceUrlTag() throws Exception { + final Client client = ClientBuilder.newClient(); + + final String[] args = {"src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToTagUrlOK.json"}; + final ApexMain apexMain = new ApexMain(args); + ThreadUtilities.sleep(1000); + apexMain.shutdown(); + + final String outString = outContent.toString(); + System.setOut(stdout); + System.setErr(stderr); + + Response response = null; + response = client.target("http://localhost:32801/TestExecutionRest/apex/event/GetProperUrl") + .request("application/json").get(); + + LOGGER.info("testReplaceUrlTag-OUTSTRING=\n" + outString + "\nEnd-TagUrl"); + final String responseEntity = response.readEntity(String.class); + assertTrue(responseEntity.contains("\"PostProperUrl\": 1")); + } + + /** + * Test Http code filter set and multi-tag Url are transformed correctly. + */ + @Test + public void testReplaceUrlMultiTag() throws Exception { + final Client client = ClientBuilder.newClient(); + final String[] args = + {"src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToMultiTagUrlOK.json"}; + final ApexMain apexMain = new ApexMain(args); + ThreadUtilities.sleep(1500); + apexMain.shutdown(); + + System.setOut(stdout); + System.setErr(stderr); + Response response = null; + response = client.target("http://localhost:32801/TestExecutionRest/apex/event/GetProperUrl") + .request("application/json").get(); + final String responseEntity = response.readEntity(String.class); + LOGGER.info("testReplaceUrlMultiTag-OUTSTRING=\n" + responseEntity + "\nEnd-MultiTagUrl"); + assertTrue(responseEntity.contains("\"PostProperUrl\": 3")); + } + +} diff --git a/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestRestClientEndpoint.java b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestRestClientEndpoint.java index 906b20bf2..f19410fb5 100644 --- a/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestRestClientEndpoint.java +++ b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/adapt/restclient/TestRestClientEndpoint.java @@ -1,19 +1,20 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2016-2018 Ericsson. All rights reserved. + * Copyright (C) 2019 Nordix Foundation. * ================================================================================ * 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. - * + * * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ @@ -22,28 +23,26 @@ package org.onap.policy.apex.testsuites.integration.uservice.adapt.restclient; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; - import com.google.gson.Gson; - import java.util.Map; import java.util.Random; - import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.PUT; import javax.ws.rs.Path; import javax.ws.rs.core.Response; + /** * The Class TestRestClientEndpoint. */ @Path("/apex") public class TestRestClientEndpoint { - private static int postMessagesReceived = 0; private static int putMessagesReceived = 0; private static int statMessagesReceived = 0; private static int getMessagesReceived = 0; + private static int tagUrlToProperUrl = 0; /** * Service get stats. @@ -160,4 +159,83 @@ public class TestRestClientEndpoint { return Response.status(200).entity("{\"GET\": , " + getMessagesReceived + ",\"STAT\": " + statMessagesReceived + ",\"POST\": , " + postMessagesReceived + ",\"PUT\": " + putMessagesReceived + "}").build(); } + + /** + * Service put request codeFilter Set. + * + * @return the response + */ + @Path("/event/CodeFilterSet") + @PUT + public Response serviceCodeFilterSet() { + putMessagesReceived++; + tagUrlToProperUrl = 1; + return Response.status(200) + .entity("{\"GET\": " + getMessagesReceived + ",\"STAT\": " + statMessagesReceived + ",\"POST\": " + + postMessagesReceived + ",\"PUT\": " + putMessagesReceived + "PostProperUrl" + + tagUrlToProperUrl + "}") + .build(); + } + + /** + * Service put request codeFilter Default 200. + * + * @return the response + */ + @Path("/event/CodeFilterDefault") + @PUT + public Response serviceCodeFilterDefault() { + putMessagesReceived++; + tagUrlToProperUrl = 2; + return Response.status(200) + .entity("{\"GET\": " + getMessagesReceived + ",\"STAT\": " + statMessagesReceived + ",\"POST\": " + + postMessagesReceived + ",\"PUT\": " + putMessagesReceived + "PostProperUrl" + + tagUrlToProperUrl + "}") + .build(); + } + + /** + * Service put request codeFilter Set. + * + * @return the response + */ + @Path("/event/CodeFilterSet/3") + @PUT + public Response serviceCodeFilterSetForMultiTag() { + putMessagesReceived++; + tagUrlToProperUrl = 3; + return Response.status(200) + .entity("{\"GET\": " + getMessagesReceived + ",\"STAT\": " + statMessagesReceived + ",\"POST\": " + + postMessagesReceived + ",\"PUT\": " + putMessagesReceived + "PostProperUrl" + + tagUrlToProperUrl + "}") + .build(); + } + + /** + * Service get tagged Url request access status. + * + * @return the response + */ + @Path("/event/GetProperUrl") + @GET + public Response serviceGetProperUrl() { + statMessagesReceived++; + if (tagUrlToProperUrl == 1) { + return Response.status(200).entity("{\"PostProperUrl\": " + tagUrlToProperUrl + "}").build(); + } else { + return Response.status(500).entity("{\"PostProperUrl\": " + tagUrlToProperUrl + "}").build(); + } + } + + /** + * Service fetch Http Code event. + * + * @return the response + */ + @Path("/event/FetchHttpCode") + @GET + public Response serviceFetchHttpCode() { + statMessagesReceived++; + return Response.status(500).entity("{\"testToRun\": " + "FetchHttpCode" + "}").build(); + } } diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskFetchHttpCode.js b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskFetchHttpCode.js new file mode 100644 index 000000000..5916a23b2 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskFetchHttpCode.js @@ -0,0 +1,33 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2019 Nordix Foundation. + * ================================================================================ + * 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +executor.logger.info(executor.subject.id); +executor.logger.info(executor.inFields); + +executor.logger.info(executor.outFields); + +executor.logger.info("executionProperties:" + executor.getExecutionProperties()); + +if (executor.getExecutionProperties() == "{HTTP_CODE_STATUS=500}" ) + executor.outFields.put("testToRun", "CodeFilterSet"); +else + executor.outFields.put("testToRun", "CodeFilterDefault"); + +var returnValue = executor.isTrue;
\ No newline at end of file diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskTagUrl.js b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskTagUrl.js new file mode 100644 index 000000000..4a8ff30f1 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/logic/TaskTagUrl.js @@ -0,0 +1,33 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2019 Nordix Foundation. + * ================================================================================ + * 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +executor.logger.info(executor.subject.id); +executor.logger.info(executor.inFields); + +executor.logger.info(executor.outFields); + +executor.logger.info("executionProperties in:" + executor.getExecutionProperties()); + +executor.getExecutionProperties().setProperty("tagId", executor.inFields.get("testToRun")); +executor.getExecutionProperties().setProperty("value", "3"); + +executor.logger.info("executionProperties out:" + executor.getExecutionProperties()); + +var returnValue = executor.isTrue;
\ No newline at end of file diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/policy/ExecutionPropertiesRestTestPolicyModel.apex b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/policy/ExecutionPropertiesRestTestPolicyModel.apex new file mode 100644 index 000000000..053e05349 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/policies/executionproperties/policy/ExecutionPropertiesRestTestPolicyModel.apex @@ -0,0 +1,64 @@ +#------------------------------------------------------------------------------- +# ============LICENSE_START======================================================= +# Copyright (C) 2019 Nordix Foundation. +# ================================================================================ +# 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. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= +#------------------------------------------------------------------------------- + +model create name=ExecutionPropertiesRestTestPolicyModel + +schema create name=SimpleStringType flavour=Java schema=java.lang.String + +event create name=Event0200 nameSpace=org.onap.policy.apex.domains.test source=Junit target=Decide +event parameter create name=Event0200 parName=testToRun schemaName=SimpleStringType + +event create name=Event0201 nameSpace=org.onap.policy.apex.domains.test source=Decide target=OutSide +event parameter create name=Event0201 parName=testToRun schemaName=SimpleStringType + + +task create name=TaskFetchHttpCode + +task inputfield create name=TaskFetchHttpCode fieldName=testToRun schemaName=SimpleStringType +task outputfield create name=TaskFetchHttpCode fieldName=testToRun schemaName=SimpleStringType + +task logic create name=TaskFetchHttpCode logicFlavour=JAVASCRIPT logic=LS +#MACROFILE:"src/test/resources/policies/executionproperties/logic/TaskFetchHttpCode.js" +LE + +task create name=TaskTagUrl + +task inputfield create name=TaskTagUrl fieldName=testToRun schemaName=SimpleStringType +task outputfield create name=TaskTagUrl fieldName=testToRun schemaName=SimpleStringType + +task logic create name=TaskTagUrl logicFlavour=JAVASCRIPT logic=LS +#MACROFILE:"src/test/resources/policies/executionproperties/logic/TaskTagUrl.js" +LE + + +policy create name=Policy2 template=freestyle firstState=Junit + +policy state create name=Policy2 stateName=Decide triggerName=Event0201 defaultTaskName=TaskTagUrl +policy state output create name=Policy2 stateName=Decide outputName=TagUrlOut eventName=Event0201 nextState=NULL +policy state taskref create name=Policy2 stateName=Decide taskLocalName=tag taskName=TaskTagUrl outputType=DIRECT outputName=TagUrlOut + +policy state create name=Policy2 stateName=Junit triggerName=Event0200 defaultTaskName=TaskFetchHttpCode +policy state output create name=Policy2 stateName=Junit outputName=HttpCodeOut eventName=Event0201 nextState=Decide +policy state taskref create name=Policy2 stateName=Junit taskLocalName=check taskName=TaskFetchHttpCode outputType=DIRECT outputName=HttpCodeOut + + + +validate + diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadHttpCodeFilter.json b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadHttpCodeFilter.json new file mode 100644 index 000000000..5da96ae9c --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadHttpCodeFilter.json @@ -0,0 +1,52 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "target/ExecutionPropertiesRestTestPolicyModel.json", + "engineParameters": { + "executorParameters": { + "JAVASCRIPT": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "GetCodeConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/FetchHttpCode", + "httpMethod": "GET", + "httpHeaders" : [ + ], + "httpCodeFilter" : "[4][0-1][0-9]" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON", + "parameters": { + "testToRun": "FetchHttpCode" + } + }, + "eventName": "Event0200" + } + }, + "eventOutputParameters": { + "FirstProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + } + } +} diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadUrl.json b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadUrl.json new file mode 100644 index 000000000..bec3f9214 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventBadUrl.json @@ -0,0 +1,59 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "target/ExecutionPropertiesRestTestPolicyModel.json", + "engineParameters": { + "executorParameters": { + "JAVASCRIPT": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "GetCodeConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/FetchHttpCode", + "httpMethod": "GET", + "httpHeaders" : [ + ], + "httpCodeFilter" : "[1-5][0][0-5]" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON", + "parameters": { + "testToRun": "FetchHttpCode" + } + }, + "eventName": "Event0200" + } + }, + "eventOutputParameters": { + "FirstProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/tagId}", + "httpMethod": "PUT", + "httpHeaders" : [ + ["Content-Type", "application/json"], + ["Date", "Tue, 24 Jul 2019 14:57:12 GMT"] + ] + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventName": "Event0201" + } + } +} diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventNoValueSetForTag.json b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventNoValueSetForTag.json new file mode 100644 index 000000000..a765fb5b2 --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTEventNoValueSetForTag.json @@ -0,0 +1,59 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "target/ExecutionPropertiesRestTestPolicyModel.json", + "engineParameters": { + "executorParameters": { + "JAVASCRIPT": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "GetCodeConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/FetchHttpCode", + "httpMethod": "GET", + "httpHeaders" : [ + ], + "httpCodeFilter" : "[1-5][0][0-5]" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON", + "parameters": { + "testToRun": "FetchHttpCode" + } + }, + "eventName": "Event0200" + } + }, + "eventOutputParameters": { + "FirstProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/{tagId}/{Number}", + "httpMethod": "PUT", + "httpHeaders" : [ + ["Content-Type", "application/json"], + ["Date", "Tue, 24 Jul 2019 14:57:12 GMT"] + ] + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventName": "Event0201" + } + } +} diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToMultiTagUrlOK.json b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToMultiTagUrlOK.json new file mode 100644 index 000000000..556ca234d --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToMultiTagUrlOK.json @@ -0,0 +1,59 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "target/ExecutionPropertiesRestTestPolicyModel.json", + "engineParameters": { + "executorParameters": { + "JAVASCRIPT": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "GetCodeConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/FetchHttpCode", + "httpMethod": "GET", + "httpHeaders" : [ + ], + "httpCodeFilter" : "[1-5][0][0-5]" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON", + "parameters": { + "testToRun": "FetchHttpCode" + } + }, + "eventName": "Event0200" + } + }, + "eventOutputParameters": { + "FirstProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/{tagId}/{value}", + "httpMethod": "PUT", + "httpHeaders" : [ + ["Content-Type", "application/json"], + ["Date", "Tue, 24 Jul 2019 14:57:12 GMT"] + ] + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventName": "Event0201" + } + } +} diff --git a/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToTagUrlOK.json b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToTagUrlOK.json new file mode 100644 index 000000000..455d6f54e --- /dev/null +++ b/testsuites/integration/integration-uservice-test/src/test/resources/testdata/executionproperties/RESTHttpCodeFilterSetToTagUrlOK.json @@ -0,0 +1,59 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "target/ExecutionPropertiesRestTestPolicyModel.json", + "engineParameters": { + "executorParameters": { + "JAVASCRIPT": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "GetCodeConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/FetchHttpCode", + "httpMethod": "GET", + "httpHeaders" : [ + ], + "httpCodeFilter" : "[1-5][0][0-5]" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON", + "parameters": { + "testToRun": "FetchHttpCode" + } + }, + "eventName": "Event0200" + } + }, + "eventOutputParameters": { + "FirstProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTCLIENT", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestExecutionRest/apex/event/{tagId}", + "httpMethod": "PUT", + "httpHeaders" : [ + ["Content-Type", "application/json"], + ["Date", "Tue, 24 Jul 2019 14:57:12 GMT"] + ] + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventName": "Event0201" + } + } +} |