Browse Source

✅ test(file): fix file service test cases

- remove unnecessary mockMinioService variable initialization
- fix MinioService mock implementation to properly test error scenarios
- ensure test cases correctly verify error handling paths
yourname 2 months ago
parent
commit
4b30e28a8c
1 changed files with 4 additions and 5 deletions
  1. 4 5
      src/server/modules/files/__tests__/file.service.test.ts

+ 4 - 5
src/server/modules/files/__tests__/file.service.test.ts

@@ -15,16 +15,12 @@ vi.mock('uuid', () => ({
 describe('FileService', () => {
 describe('FileService', () => {
   let fileService: FileService;
   let fileService: FileService;
   let mockDataSource: DataSource;
   let mockDataSource: DataSource;
-  let mockMinioService: MinioService;
 
 
   beforeEach(() => {
   beforeEach(() => {
     mockDataSource = {
     mockDataSource = {
       getRepository: vi.fn()
       getRepository: vi.fn()
     } as unknown as DataSource;
     } as unknown as DataSource;
 
 
-    mockMinioService = new MinioService();
-    (MinioService as any).mockClear();
-
     fileService = new FileService(mockDataSource);
     fileService = new FileService(mockDataSource);
   });
   });
 
 
@@ -84,7 +80,10 @@ describe('FileService', () => {
         uploadUserId: 1
         uploadUserId: 1
       };
       };
 
 
-      vi.mocked(mockMinioService.generateUploadPolicy).mockRejectedValue(new Error('MinIO error'));
+      const mockGenerateUploadPolicy = vi.fn().mockRejectedValue(new Error('MinIO error'));
+      vi.mocked(MinioService).mockImplementation(() => ({
+        generateUploadPolicy: mockGenerateUploadPolicy
+      } as unknown as MinioService));
 
 
       await expect(fileService.createFile(mockFileData)).rejects.toThrow('文件创建失败');
       await expect(fileService.createFile(mockFileData)).rejects.toThrow('文件创建失败');
       expect(logger.error).toHaveBeenCalled();
       expect(logger.error).toHaveBeenCalled();