11/**
22 * @vitest -environment node
33 */
4- import { authMockFns , hybridAuthMockFns } from '@sim/testing'
4+ import {
5+ authMockFns ,
6+ hybridAuthMockFns ,
7+ storageServiceMock ,
8+ storageServiceMockFns ,
9+ } from '@sim/testing'
510import { beforeEach , describe , expect , it , vi } from 'vitest'
611
712const mocks = vi . hoisted ( ( ) => {
813 const mockVerifyFileAccess = vi . fn ( )
914 const mockVerifyWorkspaceFileAccess = vi . fn ( )
10- const mockDeleteFile = vi . fn ( )
11- const mockHasCloudStorage = vi . fn ( )
1215 const mockGetStorageProvider = vi . fn ( )
1316 const mockIsUsingCloudStorage = vi . fn ( )
14- const mockUploadFile = vi . fn ( )
15- const mockDownloadFile = vi . fn ( )
1617
1718 return {
1819 mockVerifyFileAccess,
1920 mockVerifyWorkspaceFileAccess,
20- mockDeleteFile,
21- mockHasCloudStorage,
2221 mockGetStorageProvider,
2322 mockIsUsingCloudStorage,
24- mockUploadFile,
25- mockDownloadFile,
2623 }
2724} )
2825
@@ -68,23 +65,18 @@ vi.mock('@/lib/uploads', () => ({
6865 getStorageProvider : mocks . mockGetStorageProvider ,
6966 isUsingCloudStorage : mocks . mockIsUsingCloudStorage ,
7067 StorageService : {
71- uploadFile : mocks . mockUploadFile ,
72- downloadFile : mocks . mockDownloadFile ,
73- deleteFile : mocks . mockDeleteFile ,
74- hasCloudStorage : mocks . mockHasCloudStorage ,
68+ uploadFile : storageServiceMockFns . mockUploadFile ,
69+ downloadFile : storageServiceMockFns . mockDownloadFile ,
70+ deleteFile : storageServiceMockFns . mockDeleteFile ,
71+ hasCloudStorage : storageServiceMockFns . mockHasCloudStorage ,
7572 } ,
76- uploadFile : mocks . mockUploadFile ,
77- downloadFile : mocks . mockDownloadFile ,
78- deleteFile : mocks . mockDeleteFile ,
79- hasCloudStorage : mocks . mockHasCloudStorage ,
73+ uploadFile : storageServiceMockFns . mockUploadFile ,
74+ downloadFile : storageServiceMockFns . mockDownloadFile ,
75+ deleteFile : storageServiceMockFns . mockDeleteFile ,
76+ hasCloudStorage : storageServiceMockFns . mockHasCloudStorage ,
8077} ) )
8178
82- vi . mock ( '@/lib/uploads/core/storage-service' , ( ) => ( {
83- uploadFile : mocks . mockUploadFile ,
84- downloadFile : mocks . mockDownloadFile ,
85- deleteFile : mocks . mockDeleteFile ,
86- hasCloudStorage : mocks . mockHasCloudStorage ,
87- } ) )
79+ vi . mock ( '@/lib/uploads/core/storage-service' , ( ) => storageServiceMock )
8880
8981vi . mock ( '@/lib/uploads/server/metadata' , ( ) => ( {
9082 deleteFileMetadata : vi . fn ( ) . mockResolvedValue ( undefined ) ,
@@ -117,14 +109,14 @@ describe('File Delete API Route', () => {
117109 } )
118110 mocks . mockVerifyFileAccess . mockResolvedValue ( true )
119111 mocks . mockVerifyWorkspaceFileAccess . mockResolvedValue ( true )
120- mocks . mockDeleteFile . mockResolvedValue ( undefined )
121- mocks . mockHasCloudStorage . mockReturnValue ( true )
112+ storageServiceMockFns . mockDeleteFile . mockResolvedValue ( undefined )
113+ storageServiceMockFns . mockHasCloudStorage . mockReturnValue ( true )
122114 mocks . mockGetStorageProvider . mockReturnValue ( 's3' )
123115 mocks . mockIsUsingCloudStorage . mockReturnValue ( true )
124116 } )
125117
126118 it ( 'should handle local file deletion successfully' , async ( ) => {
127- mocks . mockHasCloudStorage . mockReturnValue ( false )
119+ storageServiceMockFns . mockHasCloudStorage . mockReturnValue ( false )
128120 mocks . mockGetStorageProvider . mockReturnValue ( 'local' )
129121 mocks . mockIsUsingCloudStorage . mockReturnValue ( false )
130122
@@ -142,7 +134,7 @@ describe('File Delete API Route', () => {
142134 } )
143135
144136 it ( 'should handle file not found gracefully' , async ( ) => {
145- mocks . mockHasCloudStorage . mockReturnValue ( false )
137+ storageServiceMockFns . mockHasCloudStorage . mockReturnValue ( false )
146138 mocks . mockGetStorageProvider . mockReturnValue ( 'local' )
147139 mocks . mockIsUsingCloudStorage . mockReturnValue ( false )
148140
@@ -170,7 +162,7 @@ describe('File Delete API Route', () => {
170162 expect ( data ) . toHaveProperty ( 'success' , true )
171163 expect ( data ) . toHaveProperty ( 'message' , 'File deleted successfully' )
172164
173- expect ( mocks . mockDeleteFile ) . toHaveBeenCalledWith ( {
165+ expect ( storageServiceMockFns . mockDeleteFile ) . toHaveBeenCalledWith ( {
174166 key : 'workspace/test-workspace-id/1234567890-test-file.txt' ,
175167 context : 'workspace' ,
176168 } )
@@ -190,7 +182,7 @@ describe('File Delete API Route', () => {
190182 expect ( data ) . toHaveProperty ( 'success' , true )
191183 expect ( data ) . toHaveProperty ( 'message' , 'File deleted successfully' )
192184
193- expect ( mocks . mockDeleteFile ) . toHaveBeenCalledWith ( {
185+ expect ( storageServiceMockFns . mockDeleteFile ) . toHaveBeenCalledWith ( {
194186 key : 'workspace/test-workspace-id/1234567890-test-document.pdf' ,
195187 context : 'workspace' ,
196188 } )
0 commit comments