Merge changes from topic 'bugfix/nexus-iq'
[clamp.git] / src / test / java / org / onap / clamp / clds / it / config / CldsReferencePropertiesItCase.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP CLAMP
4  * ================================================================================
5  * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
6  *                             reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END============================================
20  * ===================================================================
21  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22  */
23
24 package org.onap.clamp.clds.it.config;
25
26 import static org.junit.Assert.assertEquals;
27 import static org.junit.Assert.assertNotNull;
28 import static org.junit.Assert.assertNull;
29
30 import com.fasterxml.jackson.databind.node.ObjectNode;
31
32 import java.io.IOException;
33
34 import org.junit.Test;
35 import org.junit.runner.RunWith;
36 import org.onap.clamp.clds.config.ClampProperties;
37 import org.springframework.beans.factory.annotation.Autowired;
38 import org.springframework.boot.test.context.SpringBootTest;
39 import org.springframework.test.context.junit4.SpringRunner;
40
41 /**
42  * Test corg.onap.clamp.ClampDesigner.model.refprop package using RefProp.
43  */
44 @RunWith(SpringRunner.class)
45 @SpringBootTest
46 public class CldsReferencePropertiesItCase {
47
48     @Autowired
49     private ClampProperties refProp;
50
51     /**
52      * Test getting a value the properties in string.
53      */
54     @Test
55     public void testGetStringValue() {
56         assertEquals(refProp.getStringValue("policy.onap.name"), "DCAE");
57         assertEquals(refProp.getStringValue("policy.ms.policyNamePrefix", ""), "Config_MS_");
58         assertEquals(refProp.getStringValue("policy.ms.policyNamePrefix", "testos"), "Config_MS_");
59         assertEquals(refProp.getStringValue("policy.ms", "policyNamePrefix"), "Config_MS_");
60         assertNull(refProp.getStringValue("does.not.exist"));
61     }
62
63     /**
64      * Test getting prop value as a JSON Node / template.
65      *
66      * @throws IOException
67      *             when JSON parsing fails
68      */
69     @Test
70     public void testGetJsonTemplate() throws IOException {
71         // ui.location.default={"DC1":"Data Center 1","DC2":"Data Center
72         // 2","DC3":"Data Center 3"}
73         ObjectNode root = (ObjectNode) refProp.getJsonTemplate("ui.location.default");
74         assertNotNull(root);
75         assertEquals(root.get("DC1").asText(), "Data Center 1");
76         // Test composite key
77         root = (ObjectNode) refProp.getJsonTemplate("ui.location", "default");
78         assertNotNull(root);
79         assertEquals(root.get("DC1").asText(), "Data Center 1");
80         root = (ObjectNode) refProp.getJsonTemplate("ui.location", "");
81         assertNull(root);
82     }
83
84     /**
85      * Test getting prop value as a JSON Node / template.
86      *
87      * @throws IOException
88      *             when JSON parsing fails
89      */
90     @Test
91     public void testGetFileContent() throws IOException {
92         String content = refProp.getFileContent("sdc.decode.service_ids");
93         assertEquals("{}", content);
94         // Test composite key
95         content = refProp.getFileContent("sdc.decode", "service_ids");
96         assertEquals("{}", content);
97     }
98 }