aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSébastien Determe <sd378r@intl.att.com>2018-09-19 19:47:22 +0000
committerGerrit Code Review <gerrit@onap.org>2018-09-19 19:47:22 +0000
commit01cb45f361c5505ce46f7d349905d2377955dee3 (patch)
treec163b81eb77113b2a70808dac2c70704c126e595
parentdbbb4eca0dc4e110e9cc10b7f59aeef593c9a5e9 (diff)
parenta9cdc79ba7e928b38ed132d38426b6c8b70635bf (diff)
Merge "Add tests"
-rw-r--r--src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java23
-rw-r--r--src/test/java/org/onap/clamp/clds/it/CldsServiceItCase.java33
-rw-r--r--src/test/resources/application.properties8
-rw-r--r--src/test/resources/example/sdc/expected-result/sdc-properties-global.json102
4 files changed, 151 insertions, 15 deletions
diff --git a/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java b/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java
index bb2eb3a2..093ad48f 100644
--- a/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java
+++ b/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java
@@ -5,24 +5,27 @@
* Copyright (C) 2018 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.
+ * 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
+ *
+ * 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.clamp.clds.config;
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+
import java.util.Properties;
import javax.annotation.Resource;
@@ -33,12 +36,14 @@ import org.springframework.stereotype.Component;
@Component
public class SystemPropertiesLoader implements ApplicationListener<ContextRefreshedEvent> {
+ protected static final EELFLogger logger = EELFManager.getInstance().getLogger(SystemPropertiesLoader.class);
@Resource(name = "mapper")
private Properties myTranslator;
@Override
public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
+ logger.info("Loading additional JVM properties:"+myTranslator.toString());
System.getProperties().putAll(myTranslator);
}
}
diff --git a/src/test/java/org/onap/clamp/clds/it/CldsServiceItCase.java b/src/test/java/org/onap/clamp/clds/it/CldsServiceItCase.java
index 3c508bd3..695aa2d1 100644
--- a/src/test/java/org/onap/clamp/clds/it/CldsServiceItCase.java
+++ b/src/test/java/org/onap/clamp/clds/it/CldsServiceItCase.java
@@ -50,6 +50,7 @@ import org.junit.runner.RunWith;
import org.mockito.Matchers;
import org.mockito.Mockito;
import org.onap.clamp.clds.dao.CldsDao;
+import org.onap.clamp.clds.model.CldsEvent;
import org.onap.clamp.clds.model.CldsInfo;
import org.onap.clamp.clds.model.CldsModel;
import org.onap.clamp.clds.model.CldsServiceData;
@@ -61,6 +62,8 @@ import org.skyscreamer.jsonassert.JSONAssert;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.GrantedAuthority;
@@ -183,11 +186,37 @@ public class CldsServiceItCase {
// Verify whether it has been added properly or not
assertNotNull(cldsDao.getModel(randomNameModel));
+ CldsModel model= cldsService.getModel(randomNameModel);
// Verify with GetModel
- assertEquals(cldsService.getModel(randomNameModel).getTemplateName(),randomNameTemplate);
- assertEquals(cldsService.getModel(randomNameModel).getName(),randomNameModel);
+ assertEquals(model.getTemplateName(),randomNameTemplate);
+ assertEquals(model.getName(),randomNameModel);
assertTrue(cldsService.getModelNames().size() >= 1);
+
+ // Should fail
+ ResponseEntity<?> responseEntity = cldsService.putModelAndProcessAction(CldsEvent.ACTION_SUBMIT, randomNameModel, "true", model);
+ assertTrue(responseEntity.getStatusCode().equals(HttpStatus.INTERNAL_SERVER_ERROR));
+ model=(CldsModel)responseEntity.getBody();
+ assertNull(model);
+
+ responseEntity=cldsService.deployModel(randomNameModel, cldsService.getModel(randomNameModel));
+ assertNotNull(responseEntity);
+ assertNotNull(responseEntity.getStatusCode());
+ model=(CldsModel)responseEntity.getBody();
+ assertNotNull(model);
+
+ responseEntity=cldsService.unDeployModel(randomNameModel, cldsService.getModel(randomNameModel));
+ assertNotNull(responseEntity);
+ assertNotNull(responseEntity.getStatusCode());
+ model=(CldsModel)responseEntity.getBody();
+ assertNotNull(model);
+ }
+
+ @Test
+ public void testGetSdcProperties() throws IOException {
+ JSONAssert.assertEquals(
+ ResourceFileUtil.getResourceAsString("example/sdc/expected-result/sdc-properties-global.json"), cldsService.getSdcProperties(),
+ true);
}
@Test
diff --git a/src/test/resources/application.properties b/src/test/resources/application.properties
index 4268ce38..aa43ea2e 100644
--- a/src/test/resources/application.properties
+++ b/src/test/resources/application.properties
@@ -202,13 +202,13 @@ clamp.config.clds.service.cache.invalidate.after.seconds=120
#DCAE Inventory Url Properties
clamp.config.dcae.inventory.url=http://localhost:${docker.http-cache.port.host}
-clamp.config.dcae.intentory.retry.interval=10000
-clamp.config.dcae.intentory.retry.limit=3
+clamp.config.dcae.intentory.retry.interval=100
+clamp.config.dcae.intentory.retry.limit=1
#DCAE Dispatcher Url Properties
clamp.config.dcae.dispatcher.url=http://localhost:${docker.http-cache.port.host}
-clamp.config.dcae.dispatcher.retry.interval=10000
-clamp.config.dcae.dispatcher.retry.limit=10
+clamp.config.dcae.dispatcher.retry.interval=100
+clamp.config.dcae.dispatcher.retry.limit=1
clamp.config.dcae.header.requestId = X-ECOMP-RequestID
#Define user permission related parameters, the permission type can be changed but MUST be redefined in clds-users.properties in that case !
diff --git a/src/test/resources/example/sdc/expected-result/sdc-properties-global.json b/src/test/resources/example/sdc/expected-result/sdc-properties-global.json
new file mode 100644
index 00000000..f81784d7
--- /dev/null
+++ b/src/test/resources/example/sdc/expected-result/sdc-properties-global.json
@@ -0,0 +1,102 @@
+{
+ "tca": {
+ "tname": "New_Set",
+ "tcaInt": "1",
+ "tcaVio": "1",
+ "eventName": {
+ "vLoadBalancer": "vLoadBalancer",
+ "vFirewallBroadcastPackets": "vFirewallBroadcastPackets",
+ "Measurement_vGMUX": "Measurement_vGMUX"
+ },
+ "fieldPathM": {
+ "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value": "Packet-loss-rate",
+ "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta": "receivedTotalPacketsDelta"
+ },
+ "operator": {
+ ">": "GREATER",
+ ">=": "GREATER_OR_EQUAL",
+ "=": "EQUAL",
+ "<=": "LESS_OR_EQUAL",
+ "<": "LESS"
+ },
+ "opsPolicy": {
+ "POLICY_test_X": "POLICY_test_X",
+ "POLICY_test_Y": "POLICY_test_Y"
+ },
+ "controlLoopSchemaType": {
+ "": "",
+ "VM": "VM",
+ "VNF": "VNF"
+ },
+ "closedLoopEventStatus": {
+ "": "",
+ "ONSET": "ONSET",
+ "ABATED": "ABATED"
+ }
+ },
+ "global": {
+ "actionSet": {
+ "vnfRecipe": "VNF"
+ },
+ "location": {
+ "DC1": "Data Center 1",
+ "DC2": "Data Center 2",
+ "DC3": "Data Center 3"
+ }
+ },
+ "policy": {
+ "pname": "0",
+ "timeout": 345,
+ "vnfRecipe": {
+ "": "",
+ "restart": "Restart",
+ "rebuild": "Rebuild",
+ "migrate": "Migrate",
+ "healthCheck": "Health Check",
+ "modifyConfig": "ModifyConfig",
+ "vfModuleCreate": "VF Module Create"
+ },
+ "maxRetries": "3",
+ "retryTimeLimit": 180,
+ "resource": {
+ "vCTS": "vCTS",
+ "v3CDB": "v3CDB",
+ "vUDR": "vUDR",
+ "vCOM": "vCOM",
+ "vRAR": "vRAR",
+ "vLCS": "vLCS",
+ "vUDR-BE": "vUDR-BE",
+ "vDBE": "vDBE"
+ },
+ "parentPolicyConditions": {
+ "Failure_Retries": "Failure: Max Retries Exceeded",
+ "Failure_Timeout": "Failure: Time Limit Exceeded",
+ "Failure_Guard": "Failure: Guard",
+ "Failure_Exception": "Failure: Exception",
+ "Failure": "Failure: Other",
+ "Success": "Success"
+ }
+ },
+ "shared": {
+ "byService": {
+ "": {
+ "vf": {
+ "": ""
+ },
+ "location": {
+ "": ""
+ },
+ "alarmCondition": {
+ "": ""
+ }
+ }
+ },
+ "byVf": {
+ "": {
+ "vfc": {
+ "": ""
+ }
+ }
+ }
+ }
+} \ No newline at end of file