fix(xo-server-test/backupNg): follow the new backup implementation (#5732)

This commit is contained in:
badrAZ 2021-04-28 11:23:12 +02:00 committed by GitHub
parent 70fff77a28
commit ffacc0d8d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -223,6 +223,7 @@ describe('backupNg', () => {
mode: jobInput.mode, mode: jobInput.mode,
reportWhen: jobInput.settings[''].reportWhen, reportWhen: jobInput.settings[''].reportWhen,
}, },
infos: [{ data: { vms: [jobInput.vms.id] }, message: 'vms' }],
jobId, jobId,
jobName: jobInput.name, jobName: jobInput.name,
scheduleId: schedule.id, scheduleId: schedule.id,
@ -233,135 +234,6 @@ describe('backupNg', () => {
status: 'failure', status: 'failure',
result: expect.any(Object), result: expect.any(Object),
}) })
expect(noSuchObject.is(vmTask.result)).toBe(true)
})
it('fails trying to run a backup job with a VM without disks', async () => {
jest.setTimeout(8e3)
await xo.createTempServer(config.servers.default)
const { id: vmIdWithoutDisks } = await xo.createTempVm({
name_description: 'Creating a vm without disks',
template: config.templates.templateWithoutDisks,
})
const scheduleTempId = randomId()
const jobInput = {
schedules: {
[scheduleTempId]: getDefaultSchedule(),
},
settings: {
[scheduleTempId]: { snapshotRetention: 1 },
},
vms: {
id: vmIdWithoutDisks,
},
}
const { id: jobId } = await xo.createTempBackupNgJob(jobInput)
const schedule = await xo.getSchedule({ jobId })
expect(typeof schedule).toBe('object')
await xo.call('backupNg.runJob', { id: jobId, schedule: schedule.id })
const [
{
tasks: [vmTask],
...log
},
] = await xo.getBackupLogs({
jobId,
scheduleId: schedule.id,
})
validateRootTask(log, {
data: {
mode: jobInput.mode,
reportWhen: jobInput.settings[''].reportWhen,
},
jobId,
jobName: jobInput.name,
scheduleId: schedule.id,
status: 'skipped',
})
expect(vmTask).toMatchSnapshot({
end: expect.any(Number),
data: {
id: expect.any(String),
},
id: expect.any(String),
message: expect.any(String),
result: {
stack: expect.any(String),
},
start: expect.any(Number),
})
expect(vmTask.data.id).toBe(vmIdWithoutDisks)
})
it('fails trying to run backup job without retentions', async () => {
jest.setTimeout(7e3)
const scheduleTempId = randomId()
await xo.createTempServer(config.servers.default)
const { id: remoteId } = await xo.createTempRemote(config.remotes.default)
const jobInput = {
remotes: {
id: remoteId,
},
schedules: {
[scheduleTempId]: getDefaultSchedule(),
},
settings: {
[scheduleTempId]: {},
},
srs: {
id: config.srs.default,
},
vms: {
id: config.vms.default,
},
}
const { id: jobId } = await xo.createTempBackupNgJob(jobInput)
const schedule = await xo.getSchedule({ jobId })
expect(typeof schedule).toBe('object')
await xo.call('backupNg.runJob', { id: jobId, schedule: schedule.id })
const [
{
tasks: [task],
...log
},
] = await xo.getBackupLogs({
jobId,
scheduleId: schedule.id,
})
validateRootTask(log, {
data: {
mode: jobInput.mode,
reportWhen: jobInput.settings[''].reportWhen,
},
jobId,
jobName: jobInput.name,
scheduleId: schedule.id,
status: 'failure',
})
expect(task).toMatchSnapshot({
data: {
id: expect.any(String),
},
end: expect.any(Number),
id: expect.any(String),
message: expect.any(String),
result: {
stack: expect.any(String),
},
start: expect.any(Number),
})
expect(task.data.id).toBe(config.vms.default)
}) })
}) })
@ -437,6 +309,7 @@ describe('backupNg', () => {
mode: jobInput.mode, mode: jobInput.mode,
reportWhen: jobInput.settings[''].reportWhen, reportWhen: jobInput.settings[''].reportWhen,
}, },
infos: [{ data: { vms: [jobInput.vms.id] }, message: 'vms' }],
jobId, jobId,
jobName: jobInput.name, jobName: jobInput.name,
scheduleId: schedule.id, scheduleId: schedule.id,
@ -528,6 +401,7 @@ describe('backupNg', () => {
mode: jobInput.mode, mode: jobInput.mode,
reportWhen: jobInput.settings[''].reportWhen, reportWhen: jobInput.settings[''].reportWhen,
}, },
infos: [{ data: { vms: [jobInput.vms.id] }, message: 'vms' }],
jobId, jobId,
jobName: jobInput.name, jobName: jobInput.name,
scheduleId: schedule.id, scheduleId: schedule.id,
@ -658,6 +532,7 @@ describe('backupNg', () => {
mode: backupInput.mode, mode: backupInput.mode,
reportWhen: backupInput.settings[''].reportWhen, reportWhen: backupInput.settings[''].reportWhen,
}, },
infos: [{ data: { vms: [backupInput.vms.id] }, message: 'vms' }],
jobId: backup.id, jobId: backup.id,
jobName: backupInput.name, jobName: backupInput.name,
scheduleId: schedule.id, scheduleId: schedule.id,