package cn.iocoder.yudao.module.mes.controller.admin.energy;
|
|
import cn.iocoder.yudao.module.mes.dal.dataobject.energy.EnergyRecordDO;
|
import cn.iocoder.yudao.module.mes.dal.mysql.energy.EnergyRecordMapper;
|
import cn.iocoder.yudao.module.mes.service.energy.EnergyRecordService;
|
import org.junit.jupiter.api.Test;
|
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.mockito.Mockito.*;
|
|
class EnergyRecordControllerContextTest {
|
|
@Test
|
void injectsEnergyServiceWhenAnUnrelatedRecordServiceBeanExists() {
|
EnergyRecordMapper mapper = mock(EnergyRecordMapper.class);
|
EnergyRecordDO record = new EnergyRecordDO();
|
record.setId(12L);
|
when(mapper.selectById(12L)).thenReturn(record);
|
|
try (AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext()) {
|
// 模拟日志组件的同名 Bean,防止 @Resource 按字段名误选。
|
context.registerBean("recordService", Object.class, Object::new);
|
context.registerBean("energyRecordMapper", EnergyRecordMapper.class, () -> mapper);
|
context.register(EnergyRecordService.class, EnergyRecordController.class);
|
context.refresh();
|
|
EnergyRecordController controller = context.getBean(EnergyRecordController.class);
|
assertEquals(12L, controller.get(12L).getData().getId());
|
verify(mapper).selectById(12L);
|
}
|
}
|
}
|