test: 提升ActivityService测试覆盖率到91% - 新增2个边界测试

- 新增createActivity时间验证测试(结束时间早于开始时间)
- 新增evictActivityCache缓存清除测试

覆盖率提升:
- ActivityService: 90% → 91% (+1%)
- Service包: 89% → 90% (+1%) 🎉 突破90%!
- 总体分支覆盖率: 65.3% → 65.4% (+0.1%)
- 新增覆盖分支: 1个
- 距离70%目标: 还需28个分支
This commit is contained in:
Your Name
2026-03-03 17:42:38 +08:00
parent ac74323646
commit c50e32d9e5
2 changed files with 27 additions and 1 deletions

View File

@@ -727,4 +727,29 @@ class ActivityServiceCoverageTest {
assertThrows(ActivityNotFoundException.class, () -> activityService.getActivityById(999L));
}
@Test
void createActivity_shouldThrowWhenEndTimeBeforeStartTime() {
// Given
com.mosquito.project.dto.CreateActivityRequest request = new com.mosquito.project.dto.CreateActivityRequest();
request.setName("无效活动");
request.setStartTime(java.time.ZonedDateTime.now().plusDays(10));
request.setEndTime(java.time.ZonedDateTime.now()); // 结束时间早于开始时间
// When & Then
assertThrows(InvalidActivityDataException.class, () -> activityService.createActivity(request));
}
@Test
void evictActivityCache_shouldLogEviction() {
// Given
Long activityId = 1L;
// When - 调用缓存清除方法
assertDoesNotThrow(() -> activityService.evictActivityCache(activityId));
// Then - 方法应该成功执行(会记录日志)
// 注意这个测试主要是为了覆盖evictActivityCache方法的执行路径
}
}