fix: 修复测试用例中的问题 #13

Merged
moyin merged 1 commits from fix/test-issues into main 2025-12-18 13:36:14 +08:00
2 changed files with 11 additions and 7 deletions
Showing only changes of commit 3cfebbc4c4 - Show all commits

View File

@@ -72,7 +72,7 @@ describe('EmailService', () => {
configService.get.mockReturnValue(undefined); configService.get.mockReturnValue(undefined);
// 重新创建服务实例来测试测试模式 // 重新创建服务实例来测试测试模式
const testService = new EmailService(configService); new EmailService(configService);
expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({ expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({
streamTransport: true, streamTransport: true,
@@ -89,7 +89,7 @@ describe('EmailService', () => {
.mockReturnValueOnce('test@gmail.com') // EMAIL_USER .mockReturnValueOnce('test@gmail.com') // EMAIL_USER
.mockReturnValueOnce('password'); // EMAIL_PASS .mockReturnValueOnce('password'); // EMAIL_PASS
const testService = new EmailService(configService); new EmailService(configService);
expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({ expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({
host: 'smtp.gmail.com', host: 'smtp.gmail.com',
@@ -393,7 +393,7 @@ describe('EmailService', () => {
.mockReturnValueOnce(undefined) // EMAIL_USER .mockReturnValueOnce(undefined) // EMAIL_USER
.mockReturnValueOnce(undefined); // EMAIL_PASS .mockReturnValueOnce(undefined); // EMAIL_PASS
const testService = new EmailService(configService); new EmailService(configService);
expect(configService.get).toHaveBeenCalledWith('EMAIL_HOST', 'smtp.gmail.com'); expect(configService.get).toHaveBeenCalledWith('EMAIL_HOST', 'smtp.gmail.com');
expect(configService.get).toHaveBeenCalledWith('EMAIL_PORT', 587); expect(configService.get).toHaveBeenCalledWith('EMAIL_PORT', 587);
@@ -408,7 +408,7 @@ describe('EmailService', () => {
.mockReturnValueOnce('custom@163.com') // EMAIL_USER .mockReturnValueOnce('custom@163.com') // EMAIL_USER
.mockReturnValueOnce('custompass'); // EMAIL_PASS .mockReturnValueOnce('custompass'); // EMAIL_PASS
const testService = new EmailService(configService); new EmailService(configService);
expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({ expect(mockedNodemailer.createTransport).toHaveBeenCalledWith({
host: 'smtp.163.com', host: 'smtp.163.com',

View File

@@ -272,6 +272,7 @@ describe('VerificationService', () => {
}; };
mockRedis.get.mockResolvedValue(JSON.stringify(codeInfo)); mockRedis.get.mockResolvedValue(JSON.stringify(codeInfo));
mockRedis.ttl.mockResolvedValue(300); // 设置正常的TTL值
await expect(service.verifyCode(email, type, '654321')).rejects.toThrow( await expect(service.verifyCode(email, type, '654321')).rejects.toThrow(
new BadRequestException('验证码错误,剩余尝试次数: 1') new BadRequestException('验证码错误,剩余尝试次数: 1')
@@ -298,6 +299,7 @@ describe('VerificationService', () => {
}; };
mockRedis.get.mockResolvedValue(JSON.stringify(codeInfo)); mockRedis.get.mockResolvedValue(JSON.stringify(codeInfo));
mockRedis.ttl.mockResolvedValue(300); // 设置正常的TTL值
await expect(service.verifyCode(email, type, '654321')).rejects.toThrow( await expect(service.verifyCode(email, type, '654321')).rejects.toThrow(
new BadRequestException('验证码错误,剩余尝试次数: 0') new BadRequestException('验证码错误,剩余尝试次数: 0')
@@ -375,7 +377,7 @@ describe('VerificationService', () => {
it('应该返回存在的验证码统计信息', async () => { it('应该返回存在的验证码统计信息', async () => {
const codeInfo = { const codeInfo = {
code: '123456', code: '123456',
createdAt: Date.now(), createdAt: 1766035834340,
attempts: 1, attempts: 1,
maxAttempts: 3, maxAttempts: 3,
}; };
@@ -391,18 +393,20 @@ describe('VerificationService', () => {
ttl: 240, ttl: 240,
attempts: 1, attempts: 1,
maxAttempts: 3, maxAttempts: 3,
code: '123456',
createdAt: 1766035834340,
}); });
}); });
it('应该在验证码不存在时返回基本信息', async () => { it('应该在验证码不存在时返回基本信息', async () => {
mockRedis.exists.mockResolvedValue(false); mockRedis.exists.mockResolvedValue(false);
mockRedis.ttl.mockResolvedValue(-1); mockRedis.ttl.mockResolvedValue(-2);
const result = await service.getCodeStats(email, type); const result = await service.getCodeStats(email, type);
expect(result).toEqual({ expect(result).toEqual({
exists: false, exists: false,
ttl: -1, ttl: -2,
}); });
}); });