1 package org.onap.usecaseui.intentanalysis.service;
3 import java.util.ArrayList;
5 import org.junit.Assert;
6 import org.junit.jupiter.api.BeforeEach;
7 import org.junit.jupiter.api.Test;
8 import org.junit.runner.RunWith;
9 import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType;
10 import org.onap.usecaseui.intentanalysis.bean.models.Context;
11 import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject;
12 import org.onap.usecaseui.intentanalysis.exception.DataBaseException;
13 import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests;
14 import org.onap.usecaseui.intentanalysis.util.SpringContextUtil;
15 import org.springframework.beans.factory.annotation.Autowired;
16 import org.springframework.boot.test.context.SpringBootTest;
17 import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
18 import org.springframework.test.context.junit4.SpringRunner;
20 @SpringBootTest(classes = IntentAnalysisApplicationTests.class)
21 @RunWith(SpringRunner.class)
22 class ExpectationObjectServiceTest extends AbstractJUnit4SpringContextTests {
24 private static final String TEST_EXPECTATION_ID_1 = "expectationId1";
26 private static final String TEST_EXPECTATION_ID_2 = "expectation without affiliate";
28 private static final String TEST_EXPECTATION_ID_3 = "expectationId3";
31 private ExpectationObjectService expectationObjectService;
33 public ExpectationObject createTestObject(String testName) {
34 ExpectationObject expectationObject = new ExpectationObject();
35 expectationObject.setObjectType(ObjectType.SLICING);
36 expectationObject.setObjectInstance("true");
38 List<Context> contextList = new ArrayList<>();
39 Context context = new Context();
40 context.setContextId(testName + "-contextId");
41 context.setContextName(testName + "-contextName");
42 contextList.add(context);
43 expectationObject.setObjectContexts(contextList);
45 return expectationObject;
50 SpringContextUtil.setApplicationContext(applicationContext);
54 void testCreateExpectationObjectFalse() {
55 ExpectationObject expectationObject = createTestObject("testCreateExpectationObjectFalse");
58 expectationObjectService.createExpectationObject(expectationObject, TEST_EXPECTATION_ID_1);
59 } catch (DataBaseException exception) {
60 exception.printStackTrace();
61 String msg = String.format("It already exists an object for the expectation %s, update might work.", TEST_EXPECTATION_ID_1);
62 Assert.assertEquals(msg, exception.getMessage());
67 void testCreateExpectationObjectSuccess() {
68 ExpectationObject expectationObject = createTestObject("testCreateExpectationObjectSuccess");
71 expectationObjectService.createExpectationObject(expectationObject, TEST_EXPECTATION_ID_2);
72 } catch (DataBaseException exception) {
73 exception.printStackTrace();
75 Assert.assertNotNull(expectationObjectService.getExpectationObject(TEST_EXPECTATION_ID_2));
79 void testGetExpectationObjectSuccess() {
80 ExpectationObject expectationObject = expectationObjectService.getExpectationObject(TEST_EXPECTATION_ID_1);
81 Assert.assertNotNull(expectationObject);
85 void testUpdateExpectationObjectSuccess() {
86 String testName = "testUpdateExpectationObjectSuccess_1";
87 ExpectationObject expectationObject = createTestObject(testName);
90 expectationObjectService.updateExpectationObject(expectationObject, TEST_EXPECTATION_ID_1);
91 } catch (DataBaseException exception) {
92 exception.printStackTrace();
95 ExpectationObject expectationObjectTmp = expectationObjectService.getExpectationObject(TEST_EXPECTATION_ID_1);
96 Assert.assertEquals(expectationObjectTmp.getObjectContexts().get(0).getContextName(), testName + "-contextName");
100 void testUpdateExpectationObjectToNullSuccess() {
101 ExpectationObject expectationObject = new ExpectationObject();
102 expectationObject.setObjectType(ObjectType.CCVPN);
105 expectationObjectService.updateExpectationObject(expectationObject, TEST_EXPECTATION_ID_2);
106 } catch (DataBaseException exception) {
107 exception.printStackTrace();
110 ExpectationObject expectationObjectUpdated = expectationObjectService.getExpectationObject(TEST_EXPECTATION_ID_2);
111 Assert.assertNotNull(expectationObjectUpdated);
115 void testDeleteExpectationObjectSuccess() {
117 expectationObjectService.deleteExpectationObject(TEST_EXPECTATION_ID_3);
118 } catch (DataBaseException exception) {
119 exception.printStackTrace();
122 ExpectationObject expectationObject = expectationObjectService.getExpectationObject(TEST_EXPECTATION_ID_3);
123 Assert.assertNull(expectationObject);