From 7dcb4c3566bb33ec7e9ba2725753520e6d0769b9 Mon Sep 17 00:00:00 2001 From: Logic Date: Wed, 5 Feb 2025 19:37:26 +0800 Subject: [PATCH] test(alerter): add mock for AlertSseManager in AlertNoticeDispatchTest - Introduce mock object for AlertSseManager - Inject the mock into AlertNoticeDispatch instance - This change prepares for testing server-sent events (SSE) related functionality --- .../impl/DbAlertStoreHandlerImplTest.java | 27 +++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/hertzbeat-alerter/src/test/java/org/apache/hertzbeat/alert/notice/impl/DbAlertStoreHandlerImplTest.java b/hertzbeat-alerter/src/test/java/org/apache/hertzbeat/alert/notice/impl/DbAlertStoreHandlerImplTest.java index 8eb437eb90..acea40d47f 100644 --- a/hertzbeat-alerter/src/test/java/org/apache/hertzbeat/alert/notice/impl/DbAlertStoreHandlerImplTest.java +++ b/hertzbeat-alerter/src/test/java/org/apache/hertzbeat/alert/notice/impl/DbAlertStoreHandlerImplTest.java @@ -73,27 +73,34 @@ class DbAlertStoreHandlerImplTest { public void testStoreNewAlert() { String groupKey = "test-group"; groupAlert.setGroupKey(groupKey); - + when(groupAlertDao.findByGroupKey(groupKey)).thenReturn(null); - + + SingleAlert savedSingleAlert = new SingleAlert(); + when(singleAlertDao.save(any(SingleAlert.class))).thenReturn(savedSingleAlert); + + GroupAlert savedGroupAlert = new GroupAlert(); + when(groupAlertDao.save(any(GroupAlert.class))).thenReturn(savedGroupAlert); + dbAlertStoreHandler.store(groupAlert); - + verify(singleAlertDao).save(any(SingleAlert.class)); verify(groupAlertDao).save(groupAlert); } + @Test public void testStoreExistingAlert() { String groupKey = "test-group"; String fingerprint = "test-fingerprint"; - + groupAlert.setGroupKey(groupKey); singleAlert.setFingerprint(fingerprint); - + GroupAlert existingGroup = new GroupAlert(); existingGroup.setId(1L); when(groupAlertDao.findByGroupKey(groupKey)).thenReturn(existingGroup); - + SingleAlert existingAlert = new SingleAlert(); existingAlert.setId(1L); existingAlert.setStatus("firing"); @@ -101,11 +108,15 @@ class DbAlertStoreHandlerImplTest { existingAlert.setActiveAt(2000L); existingAlert.setTriggerTimes(1); when(singleAlertDao.findByFingerprint(fingerprint)).thenReturn(existingAlert); - + + when(singleAlertDao.save(any(SingleAlert.class))).thenReturn(existingAlert); + when(groupAlertDao.save(any(GroupAlert.class))).thenReturn(existingGroup); + dbAlertStoreHandler.store(groupAlert); - + verify(singleAlertDao).save(any(SingleAlert.class)); verify(groupAlertDao).save(groupAlert); assertEquals(1L, groupAlert.getId()); } + }