Kaynağa Gözat

✅ test(user): update tests to include avatarFile relation and File entity

- 在集成测试中添加File实体到数据源初始化,确保测试环境包含所有相关实体
- 更新单元测试中用户查询的relations,添加avatarFile关联以测试完整用户数据结构
- 修改setupIntegrationDatabaseHooksWithEntities调用,包含File实体以支持文件相关测试场景
yourname 1 ay önce
ebeveyn
işleme
7a0efc9946

+ 2 - 1
packages/user-module/tests/integration/user.integration.test.ts

@@ -5,6 +5,7 @@ import { RoleService } from '../../src/services/role.service';
 import { UserEntity } from '../../src/entities/user.entity';
 import { Role } from '../../src/entities/role.entity';
 import { AppDataSource, initializeDataSource } from '@d8d/shared-utils';
+import { File } from '@d8d/file-module';
 
 // 确保测试环境变量被设置
 process.env.NODE_ENV = 'test';
@@ -16,7 +17,7 @@ describe('User Integration Tests', () => {
 
   beforeAll(() => {
     // 使用预先配置的数据源
-    initializeDataSource([UserEntity, Role])
+    initializeDataSource([UserEntity, Role, File])
     dataSource = AppDataSource;
   })
 

+ 2 - 1
packages/user-module/tests/integration/user.routes.integration.test.ts

@@ -13,9 +13,10 @@ import { Role } from '../../src/entities/role.entity';
 import { TestDataFactory } from '../utils/integration-test-db';
 import { AuthService } from '@d8d/auth-module';
 import { UserService } from '../../src/services/user.service';
+import { File } from '@d8d/file-module';
 
 // 设置集成测试钩子
-setupIntegrationDatabaseHooksWithEntities([UserEntity, Role])
+setupIntegrationDatabaseHooksWithEntities([UserEntity, Role, File])
 
 describe('用户路由API集成测试 (使用hono/testing)', () => {
   let client: ReturnType<typeof testClient<typeof userRoutes>>;

+ 4 - 4
packages/user-module/tests/unit/user.service.test.ts

@@ -112,7 +112,7 @@ describe('UserService', () => {
 
       expect(mockUserRepository.findOne).toHaveBeenCalledWith({
         where: { id: 1 },
-        relations: ['roles']
+        relations: ['roles', 'avatarFile']
       });
       expect(result).toEqual(mockUser);
     });
@@ -150,7 +150,7 @@ describe('UserService', () => {
 
       expect(mockUserRepository.findOne).toHaveBeenCalledWith({
         where: { username: 'testuser' },
-        relations: ['roles']
+        relations: ['roles', 'avatarFile']
       });
       expect(result).toEqual(mockUser);
     });
@@ -264,7 +264,7 @@ describe('UserService', () => {
       const result = await userService.getUsers();
 
       expect(mockUserRepository.find).toHaveBeenCalledWith({
-        relations: ['roles']
+        relations: ['roles', 'avatarFile']
       });
       expect(result).toEqual(mockUsers);
     });
@@ -285,7 +285,7 @@ describe('UserService', () => {
 
       expect(mockUserRepository.findOne).toHaveBeenCalledWith({
         where: [{ username: 'testuser' }, { email: 'testuser' }],
-        relations: ['roles']
+        relations: ['roles', 'avatarFile']
       });
       expect(result).toEqual(mockUser);
     });