创建 mock WebDAVClient
(overrides?: Partial<WebDAVClient>)
| 6 | |
| 7 | /** 创建 mock WebDAVClient */ |
| 8 | function createMockClient(overrides?: Partial<WebDAVClient>): WebDAVClient { |
| 9 | return { |
| 10 | getQuota: vi.fn().mockResolvedValue({}), |
| 11 | getDirectoryContents: vi.fn().mockResolvedValue([]), |
| 12 | getFileContents: vi.fn().mockResolvedValue("content"), |
| 13 | putFileContents: vi.fn().mockResolvedValue(true), |
| 14 | createDirectory: vi.fn().mockResolvedValue(undefined), |
| 15 | deleteFile: vi.fn().mockResolvedValue(undefined), |
| 16 | ...overrides, |
| 17 | } as unknown as WebDAVClient; |
| 18 | } |
| 19 | |
| 20 | /** 创建可测试的 WebDAVFileSystem 实例(替换 client 为 mock) */ |
| 21 | function createTestFS(mockClient: WebDAVClient, url = "https://dav.example.com"): WebDAVFileSystem { |