-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathRulesTests.java
121 lines (96 loc) · 3.94 KB
/
RulesTests.java
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
package gr.esdalab.msc101.dataconsumer;
import gr.esdalab.msc101.dataconsumer.model.EventLevel;
import gr.esdalab.msc101.dataconsumer.model.SensorDTO;
import gr.esdalab.msc101.dataconsumer.service.RuleService;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import static org.junit.jupiter.api.Assertions.assertEquals;
@SpringBootTest
class RulesTests {
private static final Logger log = LogManager.getLogger(RulesTests.class);
SensorDTO tempLowSensorDTO = new SensorDTO("temp", 15.0);
SensorDTO tempNormalSensorDTO = new SensorDTO("temp", 18.0);
SensorDTO tempHighSensorDTO = new SensorDTO("temp", 20.0);
SensorDTO tempOutOfBoundsSensorDTO = new SensorDTO("temp", 25.0);
SensorDTO relHumLowSensorDTO = new SensorDTO("relhum", 43.0);
SensorDTO relHumSubNormalSensorDTO = new SensorDTO("relhum", 52.0);
SensorDTO relHumNormalSensorDTO = new SensorDTO("relhum", 56.5);
SensorDTO relHumOverNormalSensorDTO = new SensorDTO("relhum", 62.0);
SensorDTO relHumOutOfBoundsSensorDTO = new SensorDTO("relhum", 70.2);
SensorDTO pressLowSensorDTO = new SensorDTO("press", 0.8);
SensorDTO pressNormalSensorDTO = new SensorDTO("press", 1.1);
SensorDTO pressHighSensorDTO = new SensorDTO("press", 1.3);
SensorDTO concentrNormalSensorDTO = new SensorDTO("quality", 580.0);
SensorDTO concentrRisingSensorDTO = new SensorDTO("quality", 620.0);
SensorDTO concentrHighSensorDTO = new SensorDTO("quality", 735.0);
@Autowired
RuleService ruleService;
@BeforeAll
public static void init(){
log.info("Tesing RuleService started.");
}
@Test
void testTempLow() {
assertEquals(EventLevel.DANGER, ruleService.processData(tempLowSensorDTO).getLevel());
}
@Test
void testTempNormal() {
assertEquals(EventLevel.NORMAL, ruleService.processData(tempNormalSensorDTO).getLevel());
}
@Test
void testTempHigh() {
assertEquals(EventLevel.WARN, ruleService.processData(tempHighSensorDTO).getLevel());
}
@Test
void testTempOut() {
assertEquals(EventLevel.DANGER, ruleService.processData(tempOutOfBoundsSensorDTO).getLevel());
}
@Test
void testHumLow() {
assertEquals(EventLevel.DANGER, ruleService.processData(relHumLowSensorDTO).getLevel());
}
@Test
void testHumSub() {
assertEquals(EventLevel.WARN, ruleService.processData(relHumSubNormalSensorDTO).getLevel());
}
@Test
void testHumNormal() {
assertEquals(EventLevel.NORMAL, ruleService.processData(relHumNormalSensorDTO).getLevel());
}
@Test
void testHumOver() {
assertEquals(EventLevel.WARN, ruleService.processData(relHumOverNormalSensorDTO).getLevel());
}
@Test
void testHumOut() {
assertEquals(EventLevel.DANGER, ruleService.processData(relHumOutOfBoundsSensorDTO).getLevel());
}
@Test
void testPressLow() {
assertEquals(EventLevel.DANGER, ruleService.processData(pressLowSensorDTO).getLevel());
}
@Test
void testPressNormal() {
assertEquals(EventLevel.NORMAL, ruleService.processData(pressNormalSensorDTO).getLevel());
}
@Test
void testPressHigh() {
assertEquals(EventLevel.WARN, ruleService.processData(pressHighSensorDTO).getLevel());
}
@Test
void testConcentrNormal() {
assertEquals(EventLevel.NORMAL, ruleService.processData(concentrNormalSensorDTO).getLevel());
}
@Test
void testConcentrHigh() {
assertEquals(EventLevel.WARN, ruleService.processData(concentrRisingSensorDTO).getLevel());
}
@Test
void testConcentrOut() {
assertEquals(EventLevel.DANGER, ruleService.processData(concentrHighSensorDTO).getLevel());
}
}