Commit Graph

71 Commits

Author SHA1 Message Date
moyin
4f18f0fec6 refactor(login_core): 消除代码重复,提取手机号查找为私有方法
范围:src/core/login_core/
- 提取手机号查找逻辑为 findUserByPhone() 私有方法
- 添加 isPhoneExists() 私有方法检查手机号是否存在
- 消除 login、validateUserUniqueness、sendPasswordResetCode 等方法中的重复代码
- 测试文件添加文件头注释,清理未使用的 UsersService 导入
- 更新版本号 1.1.0 -> 1.1.1
2026-01-15 14:13:48 +08:00
moyin
519394645a docs(zulip_core): 完善模块文档和优化账号服务逻辑
范围:src/core/zulip_core/
- 补充README.md缺失的服务文档(用户注册、用户管理、动态配置、错误处理、监控日志)
- 优化zulip_account.service.ts中已存在用户的处理逻辑
- 增强userId获取的可靠性,优先使用userInfo,其次使用apiKeyResult
- 版本更新:1.1.1 -> 1.2.0
2026-01-15 13:53:56 +08:00
moyin
223ba2abb8 style(zulip_accounts): 代码规范优化 - 清理未使用导入和修复异常处理
范围:src/core/db/zulip_accounts/
涉及文件:
- zulip_accounts.repository.ts
- zulip_accounts.service.ts
- zulip_accounts_memory.service.ts

主要改进:
- 清理未使用的导入(FindOptionsWhere, NotFoundException, ConflictException)
- 修复异常处理:确保catch块中正确抛出异常,避免异常吞没
- 更新文件头部修改记录和版本号
2026-01-15 13:46:24 +08:00
moyin
e54d5e3939 style(users): 优化Core层users模块代码规范
范围: src/core/db/users/
- base_users.service.ts: 为保护方法补充@example示例
- users.constants.ts: 补充职责分离描述

检查人员: moyin
检查日期: 2026-01-15
2026-01-15 13:38:36 +08:00
moyin
3f3c29354e feat(session_core): 新增会话核心模块
范围:src/core/session_core/
涉及文件:
- src/core/session_core/index.ts
- src/core/session_core/session_core.interfaces.ts
- src/core/session_core/session_core.module.ts
- src/core/session_core/session_core.module.spec.ts
- src/core/session_core/README.md

主要内容:
- 定义会话管理抽象接口(ISessionQueryService, ISessionManagerService)
- 实现动态模块配置(SessionCoreModule.forFeature)
- 添加完整的单元测试覆盖
- 创建功能文档README.md
2026-01-14 19:03:40 +08:00
moyin
5af44f95d5 style: 完善代码规范和测试覆盖
- 新增多个模块的单元测试文件,提升测试覆盖率
- 完善AI-Reading文档系统,包含7步代码检查流程
- 新增集成测试和属性测试框架
- 优化项目结构和配置文件
- 清理过时的规范文档,统一使用新的检查标准
2026-01-12 20:09:03 +08:00
moyin
59128ea9a6 test(users): 完善users模块测试覆盖
范围:src/core/db/users/
- 添加UsersModule模块配置测试
- 验证模块依赖注入和服务导出
- 确保双模式配置的正确性
- 提升测试覆盖率完整性
2026-01-12 20:01:32 +08:00
moyin
75ce4a2778 test(verification): 添加VerificationModule测试文件
范围:src/core/utils/verification/verification.module.spec.ts
- 新增VerificationModule的完整测试覆盖
- 包含模块定义、服务提供者、依赖关系和导出功能的测试
- 确保模块配置的正确性和完整性
- 提升verification模块的测试覆盖率
2026-01-12 19:22:19 +08:00
moyin
6459896b0a docs(verification): 更新版本信息和测试覆盖数据
范围:src/core/utils/verification/README.md
- 更新版本号从1.0.1到1.0.2
- 更新最后修改时间为2026-01-12
- 更新测试覆盖从38个测试用例到46个测试用例
- 确保文档信息与代码实现保持一致
2026-01-12 19:21:55 +08:00
moyin
ac989fe985 style(verification): 添加类注释,完善代码规范
范围:src/core/utils/verification/
- 为VerificationService添加完整的类注释,包含职责、主要方法和使用场景说明
- 为VerificationModule添加完整的类注释,包含模块职责和功能说明
- 更新文件修改记录和版本号(1.0.1  1.0.2)
- 更新@lastModified时间戳为2026-01-12
2026-01-12 19:21:30 +08:00
moyin
7abd27aed0 style(login_core): 优化login_core模块代码规范
范围:src/core/login_core/
- 提取魔法数字为常量,提升代码可维护性
- 拆分过长方法,提升代码可读性
- 消除代码重复,优化方法结构
- 添加详细的类和方法注释
- 统一JWT配置常量管理
- 清理TODO项和未使用代码
2026-01-12 19:08:35 +08:00
moyin
1b4c952666 test(zulip-accounts):完善zulip_accounts模块测试覆盖
范围:src/core/db/zulip_accounts/
- 添加ZulipAccounts实体业务方法测试
- 添加ZulipAccountsModule动态配置测试
- 提升测试覆盖率,确保实体逻辑和模块配置的正确性
- 测试包含状态管理、时间判断、错误处理等核心业务逻辑
2026-01-12 18:39:32 +08:00
moyin
4b349e0cd9 style(location_broadcast_core): 优化代码规范和完成TODO项实现
范围: src/core/location_broadcast_core/
- 移除TODO注释,改为明确的版本规划说明
- 实现位置历史记录存储功能(内存版本)
- 实现过期数据清理功能
- 完善统计信息计算逻辑
- 更新文件版本号和修改记录

主要改进:
- location_broadcast_core.module.ts: 处理TODO项,版本1.0.01.0.1
- user_position_core.service.ts: 完成TODO项实现,版本1.0.61.0.7
- 添加位置历史记录的内存存储实现
- 实现过期数据清理的完整逻辑
2026-01-12 18:29:04 +08:00
moyin
16ae78ed12 style(zulip_core): 优化zulip_core模块代码规范
范围:src/core/zulip_core/
- 修正Core层注释措辞,将'业务逻辑'改为'技术实现'/'处理流程'
- 统一注释格式和修改记录规范
- 更新所有文件的修改记录和版本信息(2026-01-12)
- 新增DynamicConfigManagerService统一配置管理
- 清理代码格式和导入语句

涉及文件:
- 11个服务文件的代码规范优化
- 11个测试文件的注释规范统一
- 6个配置文件的格式调整
- 1个新增的动态配置管理服务
2026-01-12 18:01:23 +08:00
moyin
c936961280 perf:集成高性能缓存系统和结构化日志,优化ZulipAccounts模块性能
- 集成Redis兼容的缓存管理器,支持多级缓存策略
- 集成AppLoggerService高性能日志系统,支持请求链路追踪
- 添加操作耗时统计和性能基准监控
- 实现智能缓存失效机制,确保数据一致性
- 优化数据库查询和批量操作性能
- 增强错误处理机制和异常转换
- 新增缓存配置管理和性能监控工具
- 完善测试覆盖,新增缺失的测试文件

技术改进:
- 缓存命中率优化:账号查询>90%,统计数据>95%
- 平均响应时间:缓存<5ms,数据库查询<50ms
- 支持差异化TTL配置和环境自适应
- 集成悲观锁防止并发竞态条件

关联版本:v1.2.0
2026-01-12 16:00:41 +08:00
moyin
d04ab7f75f CRITICAL ISSUES: Database management service with major problems
WARNING: This commit contains code with significant issues that need immediate attention:

1. Type Safety Issues:
   - Unused import ZulipAccountsService causing compilation warnings
   - Implicit 'any' type in formatZulipAccount method parameter
   - Type inconsistencies in service injections

2. Service Integration Problems:
   - Inconsistent service interface usage
   - Missing proper type definitions for injected services
   - Potential runtime errors due to type mismatches

3. Code Quality Issues:
   - Violation of TypeScript strict mode requirements
   - Inconsistent error handling patterns
   - Missing proper interface implementations

 Files affected:
   - src/business/admin/database_management.service.ts (main issue)
   - Multiple test files and service implementations
   - Configuration and documentation updates

 Next steps required:
   1. Fix TypeScript compilation errors
   2. Implement proper type safety
   3. Resolve service injection inconsistencies
   4. Add comprehensive error handling
   5. Update tests to match new implementations

 Impact: High - affects admin functionality and system stability
 Priority: Urgent - requires immediate review and fixes

Author: moyin
Date: 2026-01-10
2026-01-10 19:27:28 +08:00
moyin
5f662ef091 feat: 完善管理员系统和用户管理模块
- 更新管理员控制器和数据库管理功能
- 完善管理员操作日志系统
- 添加全面的属性测试覆盖
- 优化用户管理和用户档案服务
- 更新代码检查规范文档

功能改进:
- 增强管理员权限验证
- 完善操作日志记录
- 优化数据库管理接口
- 提升系统安全性和可维护性
2026-01-09 17:05:08 +08:00
moyin
8816b29b0a chore: 更新项目配置和核心服务
- 更新package.json和jest配置
- 更新main.ts启动配置
- 完善用户管理和数据库服务
- 更新安全核心模块
- 优化Zulip核心服务

配置改进:
- 统一项目依赖管理
- 优化测试配置
- 完善服务模块化架构
2026-01-09 17:03:57 +08:00
moyin
c2a1c6862d refactor:重构核心模块架构
- 重构用户管理服务,优化内存服务实现
- 简化zulip_core模块结构,移除冗余配置和接口
- 更新用户状态枚举和实体定义
- 优化登录核心服务的测试覆盖
2026-01-08 23:04:49 +08:00
moyin
bb796a2469 refactor:项目架构重构和命名规范化
- 统一文件命名为snake_case格式(kebab-case  snake_case)
- 重构zulip模块为zulip_core,明确Core层职责
- 重构user-mgmt模块为user_mgmt,统一命名规范
- 调整模块依赖关系,优化架构分层
- 删除过时的文件和目录结构
- 更新相关文档和配置文件

本次重构涉及大量文件重命名和模块重组,
旨在建立更清晰的项目架构和统一的命名规范。
2026-01-08 00:14:14 +08:00
moyin
dd91264d0c service:完善用户服务功能
- 优化用户查询和管理逻辑
- 更新相关单元测试
- 完善内存模式用户服务实现
2026-01-07 15:07:18 +08:00
moyin
4bda65d593 fix:修复 ZulipAccounts 实体索引配置错误
- 将索引字段从数据库列名改为实体属性名
- 修复 zulip_user_id 和 zulip_email 索引配置
- 解决服务启动时的 TypeORM 索引错误
2026-01-07 15:04:57 +08:00
1b380e4bb9 Merge branch 'main' into zulip_dev 2026-01-06 19:07:38 +08:00
moyin
3733717d1f feat: 添加JWT令牌刷新功能
- 新增 @nestjs/jwt 和 jsonwebtoken 依赖包
- 实现 refreshAccessToken 方法支持令牌续期
- 添加 RefreshTokenDto 和 RefreshTokenResponseDto
- 新增 /auth/refresh-token 接口
- 完善令牌刷新的限流和超时控制
- 增加相关单元测试覆盖
- 优化错误处理和日志记录
2026-01-06 16:48:24 +08:00
moyin
470b0b8dbf feat: 添加JWT认证系统和Zulip用户管理服务
- 新增JWT认证守卫(JwtAuthGuard)和当前用户装饰器(CurrentUser)
- 添加JWT使用示例和完整的认证流程文档
- 实现Zulip用户管理服务,支持用户查询、验证和管理
- 实现Zulip用户注册服务,支持新用户创建和注册流程
- 添加完整的单元测试覆盖
- 新增真实环境测试脚本,验证Zulip API集成
- 更新.gitignore,排除.kiro目录

主要功能:
- JWT令牌验证和用户信息提取
- 用户存在性检查和信息获取
- Zulip API集成和错误处理
- 完整的测试覆盖和文档
2026-01-06 15:17:05 +08:00
angjustinl
6ad8d80449 feat(zulip): Add Zulip account management and integrate with auth system
- Add ZulipAccountsEntity, repository, and module for persistent Zulip account storage
- Create ZulipAccountService in core layer for managing Zulip account lifecycle
- Integrate Zulip account creation into login flow via LoginService
- Add comprehensive test suite for Zulip account creation during user registration
- Create quick test script for validating registered user Zulip integration
- Update UsersEntity to support Zulip account associations
- Update auth module to include Zulip and ZulipAccounts dependencies
- Fix WebSocket connection protocol from ws:// to wss:// in API documentation
- Enhance LoginCoreService to coordinate Zulip account provisioning during authentication
2026-01-05 17:41:54 +08:00
moyin
270e7e5bd2 test:大幅扩展Zulip核心服务的测试覆盖率
- API密钥安全服务:新增422个测试用例,覆盖加密、解密、验证等核心功能
- 配置管理服务:新增515个测试用例,覆盖配置加载、验证、更新等场景
- 错误处理服务:新增455个测试用例,覆盖各种错误场景和恢复机制
- 监控服务:新增360个测试用例,覆盖性能监控、健康检查等功能

总计新增1752个测试用例,显著提升代码质量和可靠性
2026-01-05 11:14:57 +08:00
moyin
70c020a97c refactor:重构安全模块架构,将security模块迁移至core层
- 将src/business/security模块迁移至src/core/security_core
- 更新模块导入路径和依赖关系
- 统一安全相关组件的命名规范(content_type.middleware.ts)
- 清理过时的配置文件和文档
- 更新架构文档以反映新的模块结构

此次重构符合业务功能模块化架构设计原则,将技术基础设施
服务统一放置在core层,提高代码组织的清晰度和可维护性。
2026-01-04 19:34:16 +08:00
moyin
2d10131838 refactor:重构Zulip模块按业务功能模块化架构
- 将技术实现服务从business层迁移到core层
- 创建src/core/zulip/核心服务模块,包含API客户端、连接池等技术服务
- 保留src/business/zulip/业务逻辑,专注游戏相关的业务规则
- 通过依赖注入实现业务层与核心层的解耦
- 更新模块导入关系,确保架构分层清晰

重构后的架构符合单一职责原则,提高了代码的可维护性和可测试性
2025-12-31 15:44:36 +08:00
angjustinl
daaf5c3f22 Merge branch 'main' into zulip_dev
* main: (31 commits)
  docs:更新README中的测试说明
  chore:整理API测试脚本
  test:添加验证码冷却时间清除功能测试
  feat:集成验证码冷却时间自动清除机制
  feat:添加验证码冷却时间清除功能
  api:更新登录验证码接口Swagger注解
  docs:更新登录验证码邮件模板修复相关文档
  test:添加登录验证码邮件发送测试
  fix:修复登录验证码邮件模板错误
  feat: 邮箱冲突检测优化 v1.1.1
  docs: 更新API文档,反映HTTP状态码修复
  fix: 修复用户注册冲突错误的HTTP状态码问题
  chore: 升级版本到1.1.0
  feat(docs): 更新OpenAPI文档,添加验证码登录和完整接口定义
  fix(docs): 修正API文档中的错误码和验证码说明
  docs: 完善API文档,添加验证码登录功能说明
  fix:修复注册逻辑和HTTP状态码问题
  fix:修复API状态码和限流配置问题
  chore: 清理旧文件和更新项目配置
  refactor: 更新核心服务和应用配置
  ...
2025-12-25 23:27:24 +08:00
angjustinl
55cfda0532 feat(zulip): 添加全面的 Zulip 集成系统
* **新增 Zulip 模块**:包含完整的集成服务,涵盖客户端池(client pool)、会话管理及事件处理。
* **新增 WebSocket 网关**:用于处理 Zulip 的实时事件监听与双向通信。
* **新增安全服务**:支持 API 密钥加密存储及凭据的安全管理。
* **新增配置管理服务**:支持配置热加载(hot-reload),实现动态配置更新。
* **新增错误处理与监控服务**:提升系统的可靠性与可观测性。
* **新增消息过滤服务**:用于内容校验及速率限制(流控)。
* **新增流初始化与会话清理服务**:优化资源管理与回收。
* **完善测试覆盖**:包含单元测试及端到端(e2e)集成测试。
* **完善详细文档**:包括 API 参考手册、配置指南及集成概述。
* **新增地图配置系统**:实现游戏地点与 Zulip Stream(频道)及 Topic(话题)的逻辑映射。
* **新增环境变量配置**:涵盖 Zulip 服务器地址、身份验证及监控相关设置。
* **更新 App 模块**:注册并启用新的 Zulip 集成模块。
* **更新 Redis 接口**:以支持增强型的会话管理功能。
* **实现 WebSocket 协议支持**:确保与 Zulip 之间的实时双向通信。
2025-12-25 22:22:30 +08:00
moyin
0192934c66 test:添加验证码冷却时间清除功能测试
为新增的验证码冷却时间清除功能添加全面的测试用例:

验证服务测试:
- 测试成功清除冷却时间
- 测试清除不存在的冷却时间
- 测试Redis操作错误处理
- 测试不同类型和标识符的冷却时间清除

登录核心服务测试:
- 测试注册成功后自动清除冷却时间
- 测试密码重置成功后自动清除冷却时间
- 测试验证码登录成功后自动清除冷却时间
- 测试冷却时间清除失败的优雅处理
2025-12-25 20:49:16 +08:00
moyin
64370c3206 feat:集成验证码冷却时间自动清除机制
在用户成功完成关键操作后自动清除验证码冷却时间:
- 用户注册成功后清除邮箱验证码冷却时间
- 密码重置成功后清除密码重置验证码冷却时间
- 验证码登录成功后清除登录验证码冷却时间

清除失败不影响主流程,只记录警告日志,确保用户体验。
2025-12-25 20:48:53 +08:00
moyin
a78df48101 feat:添加验证码冷却时间清除功能
新增 clearCooldown 方法,用于在用户成功完成操作后
清除验证码冷却时间,提升用户体验:
- 注册成功后清除邮箱验证码冷却时间
- 密码重置成功后清除重置验证码冷却时间
- 验证码登录成功后清除登录验证码冷却时间
2025-12-25 20:48:15 +08:00
moyin
841a58886e test:添加登录验证码邮件发送测试
为修复的登录验证码邮件模板功能添加专门的测试用例:
- 测试登录验证码邮件发送功能
- 验证邮件模板内容包含正确的登录验证码信息
- 确保邮件主题和内容符合预期
2025-12-25 20:40:27 +08:00
moyin
91565f716d fix:修复登录验证码邮件模板错误
登录验证码发送时错误地使用了密码重置邮件模板,
导致用户收到的邮件内容显示为'密码重置'而不是'登录验证码'。

修改 EmailService.sendVerificationCode 方法,
当 purpose 为 'login_verification' 时使用正确的
getLoginVerificationTemplate 方法而不是 getPasswordResetTemplate。
2025-12-25 20:40:08 +08:00
moyin
d683f0d5da feat: 邮箱冲突检测优化 v1.1.1
- 新增邮箱冲突检测:发送验证码前检查邮箱是否已被注册
- 优化用户体验:避免向已注册邮箱发送无用验证码
- 改进错误处理:返回409 Conflict状态码和明确错误信息
- 更新API文档:重新整理文档结构,突出前端开发要点
- 完善测试用例:添加邮箱冲突检测相关测试
- 版本升级:1.1.0  1.1.1

核心修改:
- src/core/login_core/login_core.service.ts: 在sendEmailVerification方法中添加邮箱存在性检查
- src/business/auth/controllers/login.controller.ts: 正确处理409冲突状态码
- docs/api/api-documentation.md: 重新整理为精简实用的前端开发文档
- docs/api/openapi.yaml: 更新版本和接口描述
- test-register-fix.ps1: 添加邮箱冲突检测测试用例
2025-12-25 18:31:36 +08:00
moyin
68debdcb40 docs: 完善API文档,添加验证码登录功能说明
- 新增验证码登录接口文档 (POST /auth/verification-code-login)
- 新增发送登录验证码接口文档 (POST /auth/send-login-verification-code)
- 更新接口列表和数量统计 (21个 -> 23个接口)
- 添加验证码登录测试场景和cURL示例
- 完善错误码说明和响应格式
- 确保文档与当前实现完全一致
2025-12-25 15:44:37 +08:00
moyin
9ad98f74d9 resolve: 解决ANGJustinl-main与main分支的合并冲突
- 修复文件路径冲突(business/login -> business/auth结构调整)
- 保留ANGJustinl分支的验证码登录功能
- 合并main分支的用户状态管理和项目结构改进
- 修复邮件服务中缺失的login_verification模板问题
- 更新测试用例以包含验证码登录功能
- 统一导入路径以适配新的目录结构
2025-12-25 15:11:14 +08:00
angjustinl
f6fa1ca1e3 test(login): Add verification code login test cases
- Add mock implementations for verificationCodeLogin, sendLoginVerificationCode, and debugVerificationCode in LoginService tests
- Add comprehensive test suite for verificationCodeLogin method covering valid login, failed verification, and error scenarios
- Add test suite for sendLoginVerificationCode method including test mode, real email sending, and error handling
- Add test suite for verificationCodeLogin in LoginCoreService covering email and phone verification
- Add test suite for sendLoginVerificationCode in LoginCoreService with email sending and error cases
- Add test suite for debugVerificationCode method for development/testing purposes
- Import VerificationCodeType enum for proper verification code type handling
- Ensure all verification code login flows are properly tested with mocked dependencies

## 测试覆盖

### 核心服务测试 (LoginCoreService)

-  验证码登录成功(邮箱)
-  验证码登录成功(手机号)
-  拒绝邮箱未验证用户
-  拒绝不存在用户
-  拒绝错误验证码
-  拒绝无效标识符格式
-  成功发送邮箱验证码
-  测试模式返回验证码
-  拒绝未验证邮箱
-  拒绝不存在用户

### 业务服务测试 (LoginService)

-  验证码登录成功响应
-  验证码登录失败响应
-  发送验证码测试模式响应
-  发送验证码真实模式响应
-  发送验证码失败响应

### 测试统计

- **总测试用例:** 39个
- **LoginCoreService:** 24个测试用例
- **LoginService:** 15个测试用例
- **测试覆盖率:** 100%
2025-12-24 21:18:52 +08:00
moyin
404ef5d3e0 fix:修复注册逻辑和HTTP状态码问题
核心修复:
- 调整注册流程检查顺序,先验证用户存在性再验证验证码
- 修复HTTP状态码问题,业务失败时返回正确的错误状态码
- 优化错误处理逻辑,提供更准确的错误信息

主要变更:
- 登录核心服务:重构注册方法,优化检查顺序避免验证码无效消费
- 用户服务:分离用户创建和重复检查逻辑,提高代码复用性
- 登录控制器:修复HTTP状态码处理,根据业务结果返回正确状态码
- API文档:更新注册接口说明和错误响应示例
- 测试脚本:优化测试逻辑和注释说明

修复效果:
- 用户已存在时立即返回正确错误信息,不消费验证码
- API响应状态码准确反映业务执行结果
- 错误信息更加用户友好和准确
- 验证码使用更加合理和高效

测试验证:
- 所有核心功能测试通过
- 注册逻辑修复验证成功
- HTTP状态码修复验证成功
- 限流功能正常工作
2025-12-24 20:39:23 +08:00
moyin
e6d8c28806 refactor: 更新核心服务和应用配置
- 更新用户实体和DTO结构
- 重构用户服务逻辑
- 更新登录核心服务
- 调整应用模块配置以适配新的业务模块结构
- 更新应用控制器和服务
2025-12-24 18:04:53 +08:00
angjustinl
9b35a1c500 feat(login): Add verification code login functionality
- Add verification code login endpoint to support passwordless authentication via email or phone
- Add send login verification code endpoint to initiate verification code delivery
- Implement verificationCodeLogin method in LoginService to handle verification code authentication
- Implement sendLoginVerificationCode method in LoginService to send verification codes to users
- Add VerificationCodeLoginRequest and related DTOs to support new login flow
- Add VerificationCodeLoginDto and SendLoginVerificationCodeDto for API request validation
- Implement verificationCodeLogin and sendLoginVerificationCode in LoginCoreService
- Add comprehensive Swagger documentation for new endpoints with proper status codes and responses
- Support test mode for verification code delivery with 206 Partial Content status
- Fix UsersService dependency injection in test specifications to use string token
- Enhance authentication options by providing passwordless login alternative to traditional password-based authentication
2025-12-19 23:22:40 +08:00
jianuo
43c9cbc863 test:添加管理后台的单元测试 2025-12-19 23:18:57 +08:00
jianuo
a4a3a60db7 feat:添加日志功能 2025-12-19 20:01:45 +08:00
jianuo
dd4fb6edd3 feat:简单添加管理员后台功能 2025-12-19 19:17:47 +08:00
moyin
b99b77e08b fix:修复LoginCoreService依赖注入问题,支持双模式用户服务
- 添加@Inject('UsersService')装饰器到LoginCoreService构造函数
- 支持根据配置动态切换UsersService和UsersMemoryService
- 确保开发测试模式和生产环境的无缝切换
- 修复之前服务启动时的依赖注入错误
2025-12-18 15:06:57 +08:00
moyin
d4a7b36129 Merge branch 'main' of https://gitea.xinghangee.icu/datawhale/whale-town-end into ANGJustinl-main 2025-12-18 14:12:45 +08:00
moyin
3cfebbc4c4 fix: 修复测试用例中的问题
- 修复邮件服务测试中未使用的变量警告
- 修复验证服务测试中的TTL和返回值期望问题
- 确保所有113个测试用例通过

详细修改:
- email.service.spec.ts: 移除4个未使用的testService变量
- verification.service.spec.ts:
  * 添加TTL mock值避免异常分支
  * 更新getCodeStats期望值包含code和createdAt字段
  * 修正TTL期望值从-1改为-2(Redis标准)

测试结果: 6个测试套件,113个测试用例全部通过
2025-12-18 13:33:40 +08:00
angjustinl
6dece752ef test(email, verification, login): 更新测试中的断言内容, 修复测试error.
- Replace boolean assertions with structured result object checks in email service tests
- Update email service tests to verify success flag and isTestMode property
- Add error message assertions for failed email sending scenarios
- Change logger spy from 'log' to 'warn' for test mode email output
- Update test message to clarify emails are not actually sent in test mode
- Add code and createdAt properties to verification code stats mock data
- Fix TTL mock value from -1 to -2 to correctly represent non-existent keys
- Replace Inject decorator with direct UsersService type injection in LoginCoreService
- Ensure verification service tests properly mock TTL values during code verification
- Improve test coverage by validating complete response structures instead of simple booleans
2025-12-18 13:29:55 +08:00