“mitao”
2026-04-24 b620af46945757c8c578a9f8d3ef472e40544d70
tcm-training-admin-backend/src/test/java/com/tcm/training/admin/system/service/ActivityNoticeAppServiceTest.java
@@ -4,9 +4,11 @@
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
import com.tcm.training.admin.system.dto.ActivityNoticeCreateRequest;
import com.tcm.training.admin.system.entity.ActivityNotice;
import com.tcm.training.admin.system.event.ActivityNoticeCreatedEvent;
import com.tcm.training.admin.system.mapper.ActivityNoticeMapper;
import com.tcm.training.admin.system.vo.ActivityNoticeListItemVO;
import org.apache.ibatis.builder.MapperBuilderAssistant;
import org.springframework.context.ApplicationEventPublisher;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -37,11 +39,20 @@
    @Mock
    private ActivityNoticeMapper activityNoticeMapper;
    @Mock
    private ActivityNoticeDispatchService activityNoticeDispatchService;
    @Mock
    private ApplicationEventPublisher applicationEventPublisher;
    @InjectMocks
    private ActivityNoticeAppService activityNoticeAppService;
    @Captor
    private ArgumentCaptor<ActivityNotice> activityNoticeCaptor;
    @Captor
    private ArgumentCaptor<ActivityNoticeCreatedEvent> eventCaptor;
    @Test
    void createShouldTrimTitleAndPersistContent() {
@@ -65,8 +76,10 @@
        ActivityNoticeListItemVO result = activityNoticeAppService.create(request);
        verify(activityNoticeMapper).insert(activityNoticeCaptor.capture());
        verify(applicationEventPublisher).publishEvent(eventCaptor.capture());
        assertEquals("春季活动", activityNoticeCaptor.getValue().getTitle());
        assertEquals("<p>活动内容</p>", activityNoticeCaptor.getValue().getContentHtml());
        assertEquals(Long.valueOf(1L), eventCaptor.getValue().getActivityNoticeId());
        assertEquals("春季活动", result.getTitle());
    }