c908c7b54b84eca97ce309d12ab54e4f51eefb47
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.so.client.namingservice;
22
23 import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
24 import static org.junit.Assert.assertThat;
25 import java.util.ArrayList;
26 import java.util.List;
27 import org.junit.Test;
28 import org.onap.namingservice.model.Deleteelement;
29 import org.onap.namingservice.model.Element;
30 import org.onap.namingservice.model.NameGenDeleteRequest;
31 import org.onap.namingservice.model.NameGenRequest;
32
33 public class NamingRequestObjectBuilderTest {
34
35     private NamingRequestObjectBuilder mapper = new NamingRequestObjectBuilder();
36     private String instanceGroupId = "95cbbe59-1017-4c13-b4e8-d824e54def3e";
37     private String policyInstanceName = "MSO_Policy.Config_MS_VNFInstanceGroup";
38     private String namingType = "InstanceGroup";
39     private String nfNamingCode = "NamingCode";
40     private String instanceGroupName = "InstanceGroupName";
41
42     @Test
43     public void elementMapperTest() {
44         // Expected element
45         Element expected = new Element();
46         expected.put("external-key", instanceGroupId);
47         expected.put("policy-instance-name", policyInstanceName);
48         expected.put("naming-type", namingType);
49         expected.put("resource-name", instanceGroupName);
50         expected.put("nf-naming-code", nfNamingCode);
51
52         // Actual element
53         Element actual =
54                 mapper.elementMapper(instanceGroupId, policyInstanceName, namingType, nfNamingCode, instanceGroupName);
55
56         assertThat(actual, sameBeanAs(expected));
57     }
58
59     @Test
60     public void deleteElementMapperTest() {
61         // Expected Deleteelement
62         Deleteelement expected = new Deleteelement();
63         expected.setExternalKey(instanceGroupId);
64
65         // Actual Deleteelement
66         Deleteelement actual = mapper.deleteElementMapper(instanceGroupId);
67
68         assertThat(actual, sameBeanAs(expected));
69     }
70
71     @Test
72     public void nameGenRequestMapper() {
73         // Expected NameGenRequest
74         NameGenRequest expected = new NameGenRequest();
75         List<Element> elements = new ArrayList<>();
76         Element element = new Element();
77         element.setExternalKey(instanceGroupId);
78         element.setPolicyInstanceName(policyInstanceName);
79         element.setNamingType(namingType);
80         element.setResourceName(instanceGroupName);
81         element.setNamingIngredientsZeroOrMore(nfNamingCode);
82         elements.add(element);
83         expected.setElements(elements);
84
85         // Actual NameGenRequest
86         NameGenRequest actual = mapper.nameGenRequestMapper(elements);
87
88         assertThat(actual, sameBeanAs(expected));
89     }
90
91     @Test
92     public void nameGenDeleteRequestMapper() {
93         // Expected NameGenDeleteRequest
94         NameGenDeleteRequest expected = new NameGenDeleteRequest();
95         List<Deleteelement> deleteElements = new ArrayList<>();
96         Deleteelement deleteElement = new Deleteelement();
97         deleteElement.setExternalKey(instanceGroupId);
98         deleteElements.add(deleteElement);
99         expected.setElements(deleteElements);
100
101         // Actual NameGenDeleteRequest
102         NameGenDeleteRequest actual = mapper.nameGenDeleteRequestMapper(deleteElements);
103
104         assertThat(actual, sameBeanAs(expected));
105     }
106 }