diff --git a/backend-java/src/test/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskServiceRetentionTest.java b/backend-java/src/test/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskServiceRetentionTest.java index 06af59b6..50924e7e 100644 --- a/backend-java/src/test/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskServiceRetentionTest.java +++ b/backend-java/src/test/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskServiceRetentionTest.java @@ -19,6 +19,7 @@ import com.nanri.aiimage.modules.task.model.entity.TaskFileJobEntity; import com.nanri.aiimage.modules.task.model.entity.TaskScopeStateEntity; import com.nanri.aiimage.modules.task.service.TaskDistributedLockService; import com.nanri.aiimage.modules.task.service.TaskFileJobService; +import com.nanri.aiimage.modules.task.service.TaskProgressLightAssembler; import com.nanri.aiimage.modules.task.service.TaskProgressSnapshotService; import com.nanri.aiimage.modules.task.service.TaskResultItemService; import com.nanri.aiimage.modules.task.service.TransientPayloadStorageService; @@ -97,6 +98,13 @@ class ShopDataCrawlTaskServiceRetentionTest { @Mock private TransientPayloadStorageService transientPayloadStorageService; @Mock private InstanceMetadata instanceMetadata; @Mock private ShopDataCrawlDailyFileService dailyFileService; + /** + * Task 35 起 ShopDataCrawlTaskService 构造依赖新增了行级明细落库与轻量进度组装。 + * @InjectMocks 走构造注入时,构造参数里没有对应 @Mock 的会被传 null —— + * 漏掉这里会让 assembleDailyWorkbook 的 saveShopBatchFromSnapshot 直接 NPE。 + */ + @Mock private ShopDataCrawlItemStoreService shopDataCrawlItemStoreService; + @Mock private TaskProgressLightAssembler taskProgressLightAssembler; @Mock private PlatformTransactionManager transactionManager; @Mock private TransactionStatus transactionStatus; @Spy private final ObjectMapper objectMapper = new ObjectMapper().findAndRegisterModules();