2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Modifications Copyright (C) 2018 IBM.
8 * ================================================================================
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 * ============LICENSE_END=========================================================
23 package org.onap.ccsdk.apps.ms.neng.core.service;
25 import java.util.ArrayList;
26 import java.util.HashMap;
27 import java.util.List;
29 import org.junit.Assert;
30 import org.junit.Test;
31 import org.junit.runner.RunWith;
32 import org.mockito.InjectMocks;
33 import org.mockito.Mock;
34 import org.mockito.Mockito;
35 import org.mockito.runners.MockitoJUnitRunner;
36 import org.onap.ccsdk.apps.ms.neng.core.resource.model.HelloWorld;
37 import org.onap.ccsdk.apps.ms.neng.core.resource.model.NameGenRequest;
38 import org.onap.ccsdk.apps.ms.neng.core.validator.ExternalKeyValidator;
39 import org.onap.ccsdk.apps.ms.neng.persistence.entity.GeneratedName;
40 import org.onap.ccsdk.apps.ms.neng.persistence.entity.PolicyDetails;
41 import org.onap.ccsdk.apps.ms.neng.persistence.entity.ServiceParameter;
42 import org.onap.ccsdk.apps.ms.neng.persistence.repository.GeneratedNameRespository;
43 import org.onap.ccsdk.apps.ms.neng.persistence.repository.PolicyDetailsRepository;
44 import org.onap.ccsdk.apps.ms.neng.persistence.repository.ServiceParameterRepository;
46 @RunWith(MockitoJUnitRunner.class)
47 public class SpringServiceTest {
50 ExternalKeyValidator externalKeyValidator;
52 ServiceParameter param;
54 ServiceParameterRepository serviceParamRepo;
56 PolicyDetails policyDetails;
58 PolicyDetailsRepository policyDetailsRepository;
60 GeneratedNameRespository generatedNameRepository;
63 SpringServiceImpl springserviceImpl;
65 Map<String, String> req = new HashMap<>();
66 List<Map<String, String>> rsp = new ArrayList<>();
67 NameGenRequest request = new NameGenRequest();
70 req.put("external-key", "Xyx-zzk");
71 req.put("policy-instance-name", "testDbPolicy66");
72 req.put("COMPLEX", "TRLAKDG");
73 req.put("NFC-NAMING-CODE", "ESP");
74 req.put("CLOUD_REGION_ID", "SSR");
75 req.put("NF_CODE", "X1234");
76 req.put("resource-name", "vm-name");
77 req.put("naming-type", "VM");
78 req.put("nf-role", "vPE");
80 request.setElements(rsp);
83 @Test(expected = Exception.class)
84 public void genNetworkElementNameTest() throws Exception {
85 Mockito.when(externalKeyValidator.isPresent(req.get("external-key"))).thenReturn(false);
86 Mockito.when(serviceParamRepo.findByName("use_db_policy")).thenReturn(param);
87 springserviceImpl.genNetworkElementName(request);
92 public void getPolicyDetailsTest() {
93 Mockito.when(policyDetailsRepository.findPolicyResponseByName("testDbPolicy66")).thenReturn(policyDetails);
94 org.junit.Assert.assertNotNull(springserviceImpl.getPolicyDetails("testDbPolicy66"));
98 public void addPolicy() throws Exception {
99 springserviceImpl.addPolicy(req);
103 public void releaseNetworkElementNameTest() throws Exception {
104 GeneratedName gn = new GeneratedName();
105 List<GeneratedName> generatedNameList = new ArrayList<>();
106 generatedNameList.add(gn);
108 Mockito.when(generatedNameRepository.findByExternalId(req.get("external-key"))).thenReturn(generatedNameList);
109 Assert.assertNotNull(springserviceImpl.releaseNetworkElementName(request));
113 public void testGetQuickHello() {
114 Assert.assertTrue(springserviceImpl.getQuickHello("testMessage") instanceof HelloWorld);
118 public void testGetQuickHelloForNullMessage() {
119 Assert.assertTrue(springserviceImpl.getQuickHello("") instanceof HelloWorld);