71dff338b9170f3e6e2c37bb6e5d0b1da998a345
[ccsdk/cds.git] /
1 /*\r
2  * Copyright © 2017-2018 AT&T Intellectual Property.\r
3  *\r
4  * Licensed under the Apache License, Version 2.0 (the "License");\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  *     http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an "AS IS" BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License.\r
15  */\r
16 \r
17 package org.onap.ccsdk.apps.controllerblueprints.service.rs;\r
18 \r
19 import org.apache.commons.io.IOUtils;\r
20 import org.junit.Assert;\r
21 import org.junit.Before;\r
22 import org.junit.FixMethodOrder;\r
23 import org.junit.Test;\r
24 import org.junit.runner.RunWith;\r
25 import org.junit.runners.MethodSorters;\r
26 import org.onap.ccsdk.apps.controllerblueprints.TestApplication;\r
27 import org.onap.ccsdk.apps.controllerblueprints.TestConfiguration;\r
28 import org.onap.ccsdk.apps.controllerblueprints.service.domain.ResourceDictionary;\r
29 import org.slf4j.Logger;\r
30 import org.slf4j.LoggerFactory;\r
31 import org.springframework.beans.factory.annotation.Autowired;\r
32 import org.springframework.boot.test.context.SpringBootTest;\r
33 import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
34 import org.springframework.test.context.ContextConfiguration;\r
35 import org.springframework.test.context.junit4.SpringRunner;\r
36 \r
37 import java.nio.charset.Charset;\r
38 import java.util.ArrayList;\r
39 import java.util.List;\r
40 \r
41 \r
42 @RunWith(SpringRunner.class)\r
43 @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)\r
44 @ContextConfiguration(classes = {TestApplication.class, TestConfiguration.class})\r
45 @FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
46 public class ResourceDictionaryRestTest {\r
47 \r
48     private static Logger log = LoggerFactory.getLogger(ResourceDictionaryRestTest.class);\r
49 \r
50     @Autowired\r
51     protected ResourceDictionaryRest resourceDictionaryRest;\r
52 \r
53     @Before\r
54     public void setUp() {\r
55 \r
56     }\r
57 \r
58     @Test\r
59     public void test01SaveDataDictionary() throws Exception {\r
60         String definition = IOUtils.toString(\r
61                 getClass().getClassLoader().getResourceAsStream("resourcedictionary/default_definition.json"),\r
62                 Charset.defaultCharset());\r
63 \r
64         ResourceDictionary dataDictionary = new ResourceDictionary();\r
65         dataDictionary.setResourcePath("test/vnf/ipaddress");\r
66         dataDictionary.setName("test-name");\r
67         dataDictionary.setDefinition(definition);\r
68         dataDictionary.setValidValues("127.0.0.1");\r
69         dataDictionary.setResourceType("ONAP");\r
70         dataDictionary.setDataType("string");\r
71         dataDictionary.setDescription("Sample Resource Mapping");\r
72         dataDictionary.setTags("test, ipaddress");\r
73         dataDictionary.setUpdatedBy("xxxxxx@xxx.com");\r
74 \r
75         dataDictionary = resourceDictionaryRest.saveResourceDictionary(dataDictionary);\r
76 \r
77         Assert.assertNotNull("Failed to get Saved Resource Dictionary", dataDictionary);\r
78         Assert.assertNotNull("Failed to get Saved Resource Dictionary, Id", dataDictionary.getName());\r
79 \r
80         ResourceDictionary dbDataDictionary =\r
81                 resourceDictionaryRest.getResourceDictionaryByName(dataDictionary.getName());\r
82         Assert.assertNotNull("Failed to query Resource Dictionary for ID (" + dataDictionary.getName() + ")",\r
83                 dbDataDictionary);\r
84         Assert.assertNotNull("Failed to query Resource Dictionary definition for ID (" + dataDictionary.getName() + ")",\r
85                 dbDataDictionary.getDefinition());\r
86 \r
87         log.trace("Saved Dictionary " + dbDataDictionary.getDefinition());\r
88 \r
89     }\r
90 \r
91     @Test\r
92     public void test02GetDataDictionary() throws Exception {\r
93 \r
94         ResourceDictionary dbResourceDictionary = resourceDictionaryRest.getResourceDictionaryByName("test-name");\r
95         Assert.assertNotNull("Failed to query Resource Dictionary by Name", dbResourceDictionary);\r
96 \r
97         String tags = "ipaddress";\r
98 \r
99         List<ResourceDictionary> dbResourceDictionaries = resourceDictionaryRest.searchResourceDictionaryByTags(tags);\r
100         Assert.assertNotNull("Failed to search ResourceDictionary by tags", dbResourceDictionaries);\r
101         Assert.assertTrue("Failed to search searchResourceDictionaryByTags by tags by count",\r
102                 dbResourceDictionaries.size() > 0);\r
103 \r
104         List<String> names = new ArrayList<>();\r
105         names.add("test-name");\r
106         dbResourceDictionaries = resourceDictionaryRest.searchResourceDictionaryByNames(names);\r
107         Assert.assertNotNull("Failed to search ResourceDictionary by Names", dbResourceDictionaries);\r
108         Assert.assertTrue("Failed to search searchResourceDictionaryByNames by tags by count",\r
109                 dbResourceDictionaries.size() > 0);\r
110 \r
111     }\r
112 \r
113 }\r