mirror of
https://github.com/caprover/caprover
synced 2026-10-11 07:31:22 +00:00
47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
import { handleDownloadCompletion } from '../src/routes/download/DownloadRouter'
|
|
|
|
describe('backup download completion', () => {
|
|
test('returns 404 when the one-time backup file is already gone', () => {
|
|
const sendStatus = jest.fn()
|
|
const next = jest.fn()
|
|
const response = {
|
|
headersSent: false,
|
|
sendStatus,
|
|
}
|
|
|
|
const error = Object.assign(new Error('missing backup'), {
|
|
code: 'ENOENT',
|
|
})
|
|
|
|
handleDownloadCompletion(
|
|
error,
|
|
'/tmp/missing-caprover-backup.tar',
|
|
response as any,
|
|
next
|
|
)
|
|
|
|
expect(sendStatus).toHaveBeenCalledWith(404)
|
|
expect(next).not.toHaveBeenCalled()
|
|
})
|
|
|
|
test('delegates other transfer errors', () => {
|
|
const sendStatus = jest.fn()
|
|
const next = jest.fn()
|
|
const response = {
|
|
headersSent: false,
|
|
sendStatus,
|
|
}
|
|
const error = new Error('transfer failed')
|
|
|
|
handleDownloadCompletion(
|
|
error,
|
|
'/tmp/missing-caprover-backup.tar',
|
|
response as any,
|
|
next
|
|
)
|
|
|
|
expect(sendStatus).not.toHaveBeenCalled()
|
|
expect(next).toHaveBeenCalledWith(error)
|
|
})
|
|
})
|