|
@@ -1,5 +1,5 @@
|
|
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'
|
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'
|
|
|
-import { DatabaseBackup } from '../backup'
|
|
|
|
|
|
|
+import { DatabaseBackup } from '../../../../src/server/utils/backup'
|
|
|
import path from 'path'
|
|
import path from 'path'
|
|
|
|
|
|
|
|
// Mock pg-dump-restore
|
|
// Mock pg-dump-restore
|
|
@@ -25,7 +25,7 @@ vi.mock('fs', () => ({
|
|
|
}))
|
|
}))
|
|
|
|
|
|
|
|
// Mock logger
|
|
// Mock logger
|
|
|
-vi.mock('../logger', () => ({
|
|
|
|
|
|
|
+vi.mock('../../../../src/server/utils/logger', () => ({
|
|
|
logger: {
|
|
logger: {
|
|
|
db: vi.fn(),
|
|
db: vi.fn(),
|
|
|
error: vi.fn(),
|
|
error: vi.fn(),
|
|
@@ -66,7 +66,7 @@ describe('DatabaseBackup', () => {
|
|
|
|
|
|
|
|
it('应该在创建目录失败时抛出错误', async () => {
|
|
it('应该在创建目录失败时抛出错误', async () => {
|
|
|
const fs = await import('fs')
|
|
const fs = await import('fs')
|
|
|
- const { logger } = await import('../logger')
|
|
|
|
|
|
|
+ const { logger } = await import('../../../../src/server/utils/logger')
|
|
|
|
|
|
|
|
vi.mocked(fs.promises.mkdir).mockRejectedValueOnce(new Error('创建目录失败'))
|
|
vi.mocked(fs.promises.mkdir).mockRejectedValueOnce(new Error('创建目录失败'))
|
|
|
|
|
|
|
@@ -147,7 +147,7 @@ describe('DatabaseBackup', () => {
|
|
|
describe('cleanupOldBackups', () => {
|
|
describe('cleanupOldBackups', () => {
|
|
|
it('应该清理7天前的旧备份', async () => {
|
|
it('应该清理7天前的旧备份', async () => {
|
|
|
const fs = await import('fs')
|
|
const fs = await import('fs')
|
|
|
- const { logger } = await import('../logger')
|
|
|
|
|
|
|
+ const { logger } = await import('../../../../src/server/utils/logger')
|
|
|
|
|
|
|
|
const now = Date.now()
|
|
const now = Date.now()
|
|
|
const oldFileTime = now - (8 * 24 * 60 * 60 * 1000) // 8天前
|
|
const oldFileTime = now - (8 * 24 * 60 * 60 * 1000) // 8天前
|
|
@@ -167,7 +167,7 @@ describe('DatabaseBackup', () => {
|
|
|
|
|
|
|
|
it('应该在清理失败时记录错误但不抛出', async () => {
|
|
it('应该在清理失败时记录错误但不抛出', async () => {
|
|
|
const fs = await import('fs')
|
|
const fs = await import('fs')
|
|
|
- const { logger } = await import('../logger')
|
|
|
|
|
|
|
+ const { logger } = await import('../../../../src/server/utils/logger')
|
|
|
|
|
|
|
|
vi.mocked(fs.promises.readdir).mockRejectedValueOnce(new Error('读取目录失败'))
|
|
vi.mocked(fs.promises.readdir).mockRejectedValueOnce(new Error('读取目录失败'))
|
|
|
|
|
|
|
@@ -178,7 +178,7 @@ describe('DatabaseBackup', () => {
|
|
|
|
|
|
|
|
describe('startScheduledBackups', () => {
|
|
describe('startScheduledBackups', () => {
|
|
|
it('应该启动定时备份任务', async () => {
|
|
it('应该启动定时备份任务', async () => {
|
|
|
- const { logger } = await import('../logger')
|
|
|
|
|
|
|
+ const { logger } = await import('../../../../src/server/utils/logger')
|
|
|
|
|
|
|
|
backup.startScheduledBackups()
|
|
backup.startScheduledBackups()
|
|
|
|
|
|
|
@@ -189,7 +189,7 @@ describe('DatabaseBackup', () => {
|
|
|
|
|
|
|
|
describe('stopScheduledBackups', () => {
|
|
describe('stopScheduledBackups', () => {
|
|
|
it('应该停止定时备份任务', async () => {
|
|
it('应该停止定时备份任务', async () => {
|
|
|
- const { logger } = await import('../logger')
|
|
|
|
|
|
|
+ const { logger } = await import('../../../../src/server/utils/logger')
|
|
|
|
|
|
|
|
// 先启动再停止
|
|
// 先启动再停止
|
|
|
backup.startScheduledBackups()
|
|
backup.startScheduledBackups()
|