Rework tosca converter
[clamp.git] / src / test / java / org / onap / clamp / clds / tosca / update / TemplateManagementTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP CLAMP
4  * ================================================================================
5  * Copyright (C) 2020 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  *
22  */
23
24 package org.onap.clamp.clds.tosca.update;
25
26 import java.io.IOException;
27 import java.util.ArrayList;
28 import java.util.Arrays;
29 import junit.framework.TestCase;
30 import org.onap.clamp.clds.util.ResourceFileUtil;
31
32 public class TemplateManagementTest extends TestCase {
33
34     /**
35      * Test the launch translation.
36      *
37      * @throws IOException               In case of failure
38      * @throws UnknownComponentException In case of failure
39      */
40     public void testLaunchTranslation() throws IOException, UnknownComponentException {
41         TemplateManagement templateManagement =
42                 new TemplateManagement(
43                         ResourceFileUtil.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
44                         ResourceFileUtil.getResourceAsString("clds/tosca_update/templates.properties"));
45         assertNull(templateManagement.getParseToJson());
46         String componentName = "onap.policies.controlloop.operational.common.Drools";
47         templateManagement.launchTranslation(componentName);
48         assertNotNull(templateManagement.getParseToJson());
49     }
50
51     /**
52      * Test addTemplate.
53      *
54      * @throws IOException In case of failure
55      */
56     public void testAddTemplate() throws IOException {
57         TemplateManagement templateManagement =
58                 new TemplateManagement(
59                         ResourceFileUtil.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
60                         ResourceFileUtil.getResourceAsString("clds/tosca_update/templates.properties"));
61         int count = templateManagement.getTemplates().size();
62         ArrayList<String> templateFields =
63                 new ArrayList<>(Arrays.asList("type", "description", "required", "metadata", "constraints"));
64         templateManagement.addTemplate("test", templateFields);
65         assertNotSame(count, templateManagement.getTemplates().size());
66     }
67
68     /**
69      * test Remove template.
70      *
71      * @throws IOException In case of failure
72      */
73     public void testRemoveTemplate() throws IOException {
74         TemplateManagement templateManagement =
75                 new TemplateManagement(
76                         ResourceFileUtil.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
77                         ResourceFileUtil.getResourceAsString("clds/tosca_update/templates.properties"));
78         int count = templateManagement.getTemplates().size();
79         templateManagement.removeTemplate("string");
80         assertNotSame(count, templateManagement.getTemplates().size());
81     }
82
83     /**
84      * Test update template.
85      *
86      * @throws IOException In case of failure
87      */
88     public void testUpdateTemplate() throws IOException {
89         TemplateManagement templateManagement =
90                 new TemplateManagement(
91                         ResourceFileUtil.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
92                         ResourceFileUtil.getResourceAsString("clds/tosca_update/templates.properties"));
93         int count = templateManagement.getTemplates().get("integer").getFields().size();
94         templateManagement.updateTemplate("integer", "type", false);
95         assertNotSame(count, templateManagement.getTemplates().get("integer").getFields().size());
96     }
97
98     /**
99      * Test has template.
100      *
101      * @throws IOException In case of failure
102      */
103     public void testHasTemplate() throws IOException {
104         TemplateManagement templateManagement =
105                 new TemplateManagement(
106                         ResourceFileUtil.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
107                         ResourceFileUtil.getResourceAsString("clds/tosca_update/templates.properties"));
108         boolean has = true;
109         ArrayList<String> templateFieldsString =
110                 new ArrayList<>(Arrays.asList("type", "description", "required", "metadata", "constraints"));
111         Template templateTest = new Template("String", templateFieldsString);
112         has = templateManagement.hasTemplate(templateTest);
113         assertEquals(false, has);
114     }
115
116 }