Support import service with yaml tosca function
[sdc.git] / catalog-be / src / test / java / org / openecomp / sdc / be / datamodel / utils / ConstraintConvertorTest.java
1 /*
2  * Copyright © 2016-2018 European Support Limited
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.openecomp.sdc.be.datamodel.utils;
18
19 import static org.junit.jupiter.api.Assertions.assertEquals;
20 import static org.junit.jupiter.api.Assertions.assertNotNull;
21 import static org.junit.jupiter.api.Assertions.assertTrue;
22
23 import java.util.List;
24 import java.util.Map;
25 import org.junit.jupiter.api.Test;
26 import org.openecomp.sdc.be.datatypes.elements.ToscaFunctionType;
27 import org.openecomp.sdc.be.ui.model.UIConstraint;
28
29
30 class ConstraintConvertorTest {
31
32     @Test
33     void convertStatic(){
34         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
35         UIConstraint uiConstraint = constraintConvertor.convert("mem_size: {equal: some static}\n");
36         assertNotNull(uiConstraint);
37         assertEquals("equal",uiConstraint.getConstraintOperator());
38         assertEquals("some static",uiConstraint.getValue());
39         assertEquals("mem_size",uiConstraint.getServicePropertyName().trim());
40     }
41
42     @Test
43     void convertFromStatic(){
44         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
45         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.STATIC_CONSTRAINT, "some static");
46         String constraint  = constraintConvertor.convert(uiConstraint);
47         assertNotNull(constraint);
48         assertEquals("mem_size: {equal: some static}\n", constraint);
49     }
50
51     @Test
52     void convertSelfProperty(){
53         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
54         UIConstraint uiConstraint = constraintConvertor.convert("mem_size:\n {equal: { get_property: [SELF, size] }}");
55         assertNotNull(uiConstraint);
56         assertEquals("equal",uiConstraint.getConstraintOperator());
57         assertEquals(uiConstraint.getValue(), Map.of(ToscaFunctionType.GET_PROPERTY.getName(), List.of("SELF", "size")));
58         assertEquals("mem_size",uiConstraint.getServicePropertyName().trim());
59         assertEquals("SELF",uiConstraint.getSourceName().trim());
60         assertEquals(uiConstraint.getSourceType(), ToscaFunctionType.GET_PROPERTY.getName());
61     }
62
63     @Test
64     void convertFromSelfProperty(){
65         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
66         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.PROPERTY_CONSTRAINT, "SELF" ,"some static");
67         String constraint  = constraintConvertor.convert(uiConstraint);
68         assertNotNull(constraint);
69         assertEquals("mem_size:\n" + "  equal:\n" + "    get_property: [SELF, some static]\n", constraint);
70     }
71
72     @Test
73     void convertCIProperty(){
74         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
75         UIConstraint uiConstraint = constraintConvertor.convert("mem_size:\n" + "  equal: { get_property: [A, size]}");
76         assertNotNull(uiConstraint);
77         assertEquals("equal",uiConstraint.getConstraintOperator());
78         assertEquals(uiConstraint.getValue(),Map.of(ToscaFunctionType.GET_PROPERTY.getName(), List.of("A", "size")));
79         assertEquals("mem_size",uiConstraint.getServicePropertyName().trim());
80         assertEquals("A",uiConstraint.getSourceName().trim());
81     }
82
83
84     @Test
85     void convertFromCIProperty(){
86         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
87         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.PROPERTY_CONSTRAINT, "A" ,"size");
88         String constraint  = constraintConvertor.convert(uiConstraint);
89         assertNotNull(constraint);
90         assertEquals("mem_size:\n" + "  equal:\n" + "    get_property: [A, size]\n", constraint);
91     }
92
93     @Test
94     void convertServiceTemplateInput(){
95         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
96         UIConstraint uiConstraint = constraintConvertor.convert("mem_size: {equal: {get_input: InputName}}\n");
97         assertNotNull(uiConstraint);
98     }
99
100     @Test
101     void convertFromServiceTemplateInput(){
102         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
103         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.SERVICE_INPUT_CONSTRAINT, "InputName");
104         String constraint  = constraintConvertor.convert(uiConstraint);
105         assertNotNull(constraint);
106         assertEquals("mem_size:\n  equal: {get_input: InputName}\n", constraint);
107     }
108
109     @Test
110     void convertGreaterThanStatic(){
111         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
112         UIConstraint uiConstraint = constraintConvertor.convert("mem_size: {greater_than: 2}\n");
113         assertNotNull(uiConstraint);
114         assertEquals("greater_than",uiConstraint.getConstraintOperator());
115         assertEquals(2,uiConstraint.getValue());
116         assertEquals("mem_size",uiConstraint.getServicePropertyName().trim());
117     }
118
119     @Test
120     void convertFromGreaterThanStatic(){
121         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
122         UIConstraint uiConstraint = new UIConstraint("mem_size", "greater_than" , ConstraintConvertor.STATIC_CONSTRAINT, 2);
123         String constraint  = constraintConvertor.convert(uiConstraint);
124         assertNotNull(constraint);
125         assertEquals("mem_size: {greater_than: 2}\n", constraint);
126     }
127
128     @Test
129     void convertLessThanServiceProperty(){
130         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
131         UIConstraint uiConstraint = constraintConvertor.convert("mem_size: {less_then: {get_input: InputName}}");
132         assertNotNull(uiConstraint);
133     }
134
135     @Test
136     void convertFromLessThanServiceProperty(){
137         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
138         UIConstraint uiConstraint = new UIConstraint("mem_size", "less_then" , ConstraintConvertor.SERVICE_INPUT_CONSTRAINT, "InputName");
139         String constraint  = constraintConvertor.convert(uiConstraint);
140         assertNotNull(constraint);
141         assertEquals("mem_size:\n" + "  less_then: {get_input: InputName}\n", constraint);
142     }
143
144     @Test
145     void convertFromEqualStaticMap(){
146         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
147         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.STATIC_CONSTRAINT, "{x: xx,"+
148                                                                                                                           " y: yy}\n");
149         String constraint  = constraintConvertor.convert(uiConstraint);
150         assertNotNull(constraint);
151         assertEquals("mem_size:\n" + "  equal: {x: xx, y: yy}\n", constraint);
152     }
153
154     @Test
155     void convertStringToMap(){
156         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
157         UIConstraint uiConstraint = constraintConvertor.convert("mem_size:\n" + "  equal: {x: xx, y: yy}\n");
158         assertNotNull(uiConstraint);
159         assertTrue(uiConstraint.getValue() instanceof Map);
160     }
161
162     @Test
163     void convertFromEqualStaticList(){
164         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
165         UIConstraint uiConstraint = new UIConstraint("mem_size", "equal" , ConstraintConvertor.STATIC_CONSTRAINT, "[x, y]\n");
166         String constraint  = constraintConvertor.convert(uiConstraint);
167         assertNotNull(constraint);
168         assertEquals("mem_size:\n" + "  equal: [x, y]\n", constraint);
169     }
170
171     @Test
172     void convertStringToList(){
173         ConstraintConvertor constraintConvertor = new ConstraintConvertor();
174         UIConstraint uiConstraint = constraintConvertor.convert("mem_size:\n" + "  equal: [x, y]\n");
175         assertNotNull(uiConstraint);
176         assertTrue(uiConstraint.getValue() instanceof List);
177     }
178 }