TIL,WIL(일간,주간 회고)
jest로 Logger.log 테스트
worldint
2023. 4. 24. 18:49
로그가 잘뜨는지 확인 하는 테스트코드 작성
컨트롤러.ts
@Controller()
export class LoggerTestController {
readonly logger = new Logger('LoggerTest.contoller');
test(){
this.logger.log("이게 나와야된다");
return { value:"리턴은 이거"};
}
}
컨트롤러.spec.ts
describe('컨트롤러', () => {
let controller: LoggerTestController;
let service: LoggerTestService;
beforeAll(async () => {
const MockModule: TestingModule = await Test.createTestingModule({
controllers: [LoggerTestController],
providers: [
{
provide: LoggerTestService,
useClass: MockLoggerTestService,
},
],
}).compile();
controller = MockModule.get<LoggerTestController>(LoggerTestController);
service = MockModule.get<LoggerTestService>(LoggerTestService);
});
it('post성공했을 때 로그 띄워줘야함', async () => {
const spylog = jest.spyOn(controller.logger, 'log').mockReturnValue();
await controller.test();
expect(spylog).toHaveBeenCalledWith('OO님이 상품을 등록을 하셨습니다');
});
});