aboutsummaryrefslogtreecommitdiffstats
path: root/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/service/ExpectationTargetServiceTest.java
blob: f12ac33d06ade3746c9196718f169f7759ee08a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
package org.onap.usecaseui.intentanalysis.service;

import java.util.ArrayList;
import java.util.List;
import lombok.extern.slf4j.Slf4j;
import org.junit.Assert;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.onap.usecaseui.intentanalysis.bean.enums.OperatorType;
import org.onap.usecaseui.intentanalysis.bean.models.Condition;
import org.onap.usecaseui.intentanalysis.bean.models.ExpectationTarget;
import org.onap.usecaseui.intentanalysis.exception.DataBaseException;
import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests;
import org.onap.usecaseui.intentanalysis.util.SpringContextUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.util.CollectionUtils;

@SpringBootTest(classes = IntentAnalysisApplicationTests.class)
@RunWith(SpringRunner.class)
@Slf4j
class ExpectationTargetServiceTest extends AbstractJUnit4SpringContextTests {

    private static final String TEST_EXPECTATION_ID_1 = "expectation without affiliate";

    private static final String TEST_EXPECTATION_ID_2 = "expectationId2";

    private static final String TEST_EXPECTATION_ID_3 = "expectationId3";

    private static final String TEST_EXPECTATION_ID_4 = "expectationId4";

    private static final String TEST_TARGET_ID_1 = "target1-1";

    private static final String TEST_TARGET_ID_2 = "target2-2";

    @Autowired
    private ExpectationTargetService expectationTargetService;

    public ExpectationTarget createTestTarget(String testName) {
        ExpectationTarget target = new ExpectationTarget();

        Condition targetCondition = new Condition();
        targetCondition.setConditionId(testName + "-conditionId");
        targetCondition.setConditionName(testName + "conditionName");
        targetCondition.setOperator(OperatorType.valueOf("EQUALTO"));
        targetCondition.setConditionValue("conditionValue");
        List<Condition> targetConditionList = new ArrayList<>();
        targetConditionList.add(targetCondition);

        target.setTargetId(testName + "-targetId");
        target.setTargetName(testName + "targetName");
        target.setTargetConditions(targetConditionList);

        return target;
    }

    @BeforeEach
    void setUp() {
        SpringContextUtil.setApplicationContext(applicationContext);
    }

    @Test
    void testCreateExpectationTargetSuccess() {
        ExpectationTarget expectationTarget = createTestTarget("testCreateExpectationTargetSuccess");
        try {
            expectationTargetService.createExpectationTarget(expectationTarget, TEST_EXPECTATION_ID_2);
        } catch (DataBaseException exception) {
            exception.printStackTrace();
        }
        List<ExpectationTarget> expectationTargetList = expectationTargetService.getExpectationTargetList(
            TEST_EXPECTATION_ID_2);
        List<String> targetIdList = new ArrayList<>();
        for (ExpectationTarget target : expectationTargetList) {
            targetIdList.add(target.getTargetId());
        }

        Assert.assertTrue(targetIdList.contains(expectationTarget.getTargetId()));
    }

    @Test
    void testCreateExpectationTargetListSuccess() {
        ExpectationTarget expectationTarget = createTestTarget("testCreateExpectationTargetListSuccess");
        List<ExpectationTarget> expectationTargetList = new ArrayList<>();
        expectationTargetList.add(expectationTarget);

        try {
            expectationTargetService.createExpectationTargetList(expectationTargetList, TEST_EXPECTATION_ID_4);
        } catch (DataBaseException exception) {
            exception.printStackTrace();
        }

        Assert.assertFalse(CollectionUtils.isEmpty(expectationTargetService.getExpectationTargetList(
            TEST_EXPECTATION_ID_4)));
    }

    @Test
    void testGetExpectationTargetListSuccess() {
        List<ExpectationTarget> expectationTargetList = expectationTargetService.getExpectationTargetList(
            TEST_EXPECTATION_ID_2);
        Assert.assertFalse(CollectionUtils.isEmpty(expectationTargetList));
    }

    @Test
    void testGetExpectationTargetSuccess() {
        ExpectationTarget target = expectationTargetService.getExpectationTarget(TEST_TARGET_ID_1);
        Assert.assertNotNull(target);
    }

    @Test
    void testUpdateExpectationTargetListSuccess() {
        ExpectationTarget expectationTarget = createTestTarget("testUpdateExpectationTargetListSuccess");
        List<ExpectationTarget> expectationTargetList = new ArrayList<>();
        expectationTargetList.add(expectationTarget);

        try {
            expectationTargetService.updateExpectationTargetList(expectationTargetList, TEST_EXPECTATION_ID_3);
        } catch (DataBaseException exception) {
            exception.printStackTrace();
        }

        ExpectationTarget updatedTarget = expectationTargetService.getExpectationTargetList(TEST_EXPECTATION_ID_3).get(0);
        Assert.assertEquals(expectationTargetList.get(0).getTargetId(), updatedTarget.getTargetId());
    }

    @Test
    void testDeleteExpectationTargetSuccess() {
        try {
            expectationTargetService.deleteExpectationTarget(TEST_TARGET_ID_2);
        } catch (DataBaseException exception) {
            exception.printStackTrace();
        }

        List<ExpectationTarget> expectationTargetList = expectationTargetService.getExpectationTargetList(
            TEST_EXPECTATION_ID_2);
        for (ExpectationTarget target : expectationTargetList) {
            Assert.assertNotEquals(TEST_TARGET_ID_2, target.getTargetId());
        }
    }

    @Test
    void testDeleteExpectationTargetListSuccess() {
        try {
            expectationTargetService.deleteExpectationTargetList(TEST_EXPECTATION_ID_1);
        } catch (DataBaseException exception) {
            exception.printStackTrace();
        }

        List<ExpectationTarget> expectationTargetList = expectationTargetService.getExpectationTargetList(
            TEST_EXPECTATION_ID_1);
        Assert.assertTrue(CollectionUtils.isEmpty(expectationTargetList));
    }
}