Skip to content

Commit 3a2350b

Browse files
yuluo-yxCalvin979
andauthored
[improve] add MemoryDataStorage unit test (apache#2515)
Signed-off-by: yuluo-yx <[email protected]> Co-authored-by: Calvin <[email protected]>
1 parent b39602f commit 3a2350b

File tree

3 files changed

+87
-6
lines changed

3 files changed

+87
-6
lines changed

alerter/src/main/java/org/apache/hertzbeat/alert/dto/TenCloudAlertReport.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ public Map<String, String> getAnnotations() {
174174
@Override
175175
public String getContent() {
176176
StringBuilder contentBuilder = new StringBuilder();
177-
// 判断类型
177+
// Check Type.
178178
if (EVENT.equals(getAlarmType())) {
179179
contentBuilder
180180
.append("[")
@@ -225,5 +225,3 @@ public String getContent() {
225225
}
226226

227227
}
228-
229-

warehouse/src/test/java/org/apache/hertzbeat/warehouse/service/WarehouseServiceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
*/
4444

4545
@ExtendWith(SpringExtension.class)
46-
class WarehouseServiceImplTest {
46+
class WarehouseServiceTest {
4747

4848
@Mock
4949
private AbstractRealTimeDataStorage realTimeDataStorage;

warehouse/src/test/java/org/apache/hertzbeat/warehouse/store/MemoryDataStorageTest.java

Lines changed: 85 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,107 @@
1717

1818
package org.apache.hertzbeat.warehouse.store;
1919

20+
import java.util.List;
21+
import org.apache.hertzbeat.common.entity.message.CollectRep;
2022
import org.apache.hertzbeat.warehouse.store.realtime.memory.MemoryDataStorage;
23+
import org.apache.hertzbeat.warehouse.store.realtime.memory.MemoryProperties;
2124
import org.junit.jupiter.api.BeforeEach;
2225
import org.junit.jupiter.api.Test;
26+
import org.mockito.InjectMocks;
27+
import org.mockito.Mock;
28+
import org.mockito.MockitoAnnotations;
29+
30+
import static org.junit.jupiter.api.Assertions.assertEquals;
31+
import static org.junit.jupiter.api.Assertions.assertNull;
32+
import static org.junit.jupiter.api.Assertions.assertTrue;
33+
import static org.mockito.Mockito.mock;
34+
import static org.mockito.Mockito.when;
2335

2436
/**
2537
* Test case for {@link MemoryDataStorage}
2638
*/
39+
2740
class MemoryDataStorageTest {
2841

42+
@Mock
43+
private MemoryProperties memoryProperties;
44+
45+
@InjectMocks
46+
private MemoryDataStorage memoryDataStorage;
47+
2948
@BeforeEach
3049
void setUp() {
50+
51+
MockitoAnnotations.openMocks(this);
52+
53+
when(memoryProperties.initSize()).thenReturn(null);
54+
memoryDataStorage = new MemoryDataStorage(memoryProperties);
3155
}
3256

3357
@Test
34-
void getCurrentMetricsData() {
58+
void testGetCurrentMetricsDataByMetric() {
59+
60+
Long monitorId = 1L;
61+
String metric = "cpuUsage";
62+
CollectRep.MetricsData metricsData = mock(CollectRep.MetricsData.class);
63+
64+
memoryDataStorage.saveData(metricsData);
65+
66+
CollectRep.MetricsData result = memoryDataStorage.getCurrentMetricsData(monitorId, metric);
67+
68+
assertNull(result);
3569
}
3670

3771
@Test
38-
void destroy() {
72+
void testGetCurrentMetricsData() {
73+
74+
Long monitorId = 1L;
75+
CollectRep.MetricsData metricsData1 = mock(CollectRep.MetricsData.class);
76+
CollectRep.MetricsData metricsData2 = mock(CollectRep.MetricsData.class);
77+
78+
when(metricsData1.getId()).thenReturn(monitorId);
79+
when(metricsData1.getMetrics()).thenReturn("cpuUsage");
80+
when(metricsData1.getCode()).thenReturn(CollectRep.Code.SUCCESS);
81+
82+
when(metricsData2.getId()).thenReturn(monitorId);
83+
when(metricsData2.getMetrics()).thenReturn("memoryUsage");
84+
when(metricsData2.getCode()).thenReturn(CollectRep.Code.SUCCESS);
85+
86+
memoryDataStorage.saveData(metricsData1);
87+
memoryDataStorage.saveData(metricsData2);
88+
89+
List<CollectRep.MetricsData> result = memoryDataStorage.getCurrentMetricsData(monitorId);
90+
91+
assertEquals(2, result.size());
92+
assertTrue(result.contains(metricsData1));
93+
assertTrue(result.contains(metricsData2));
94+
}
95+
96+
@Test
97+
void testSaveDataFailure() {
98+
99+
CollectRep.MetricsData metricsData = mock(CollectRep.MetricsData.class);
100+
when(metricsData.getCode()).thenReturn(CollectRep.Code.FAIL);
101+
102+
memoryDataStorage.saveData(metricsData);
103+
104+
List<CollectRep.MetricsData> result = memoryDataStorage.getCurrentMetricsData(metricsData.getId());
105+
assertTrue(result.isEmpty());
39106
}
107+
108+
@Test
109+
void testDestroy() {
110+
111+
CollectRep.MetricsData metricsData = mock(CollectRep.MetricsData.class);
112+
when(metricsData.getId()).thenReturn(1L);
113+
when(metricsData.getMetrics()).thenReturn("cpuUsage");
114+
when(metricsData.getCode()).thenReturn(CollectRep.Code.SUCCESS);
115+
116+
memoryDataStorage.saveData(metricsData);
117+
memoryDataStorage.destroy();
118+
119+
List<CollectRep.MetricsData> result = memoryDataStorage.getCurrentMetricsData(1L);
120+
assertTrue(result.isEmpty());
121+
}
122+
40123
}

0 commit comments

Comments
 (0)