mirror of
https://github.com/Unleash/unleash.git
synced 2024-10-23 20:07:40 +02:00
9bd23dc735
make sure we destroy all the stores which should also cancel any background work they have for the database.
59 lines
1.5 KiB
JavaScript
59 lines
1.5 KiB
JavaScript
'use strict';
|
|
|
|
const test = require('ava');
|
|
const { setupApp } = require('../../helpers/test-helper');
|
|
const dbInit = require('../../helpers/database-init');
|
|
const getLogger = require('../../../fixtures/no-logger');
|
|
|
|
let stores;
|
|
let db;
|
|
|
|
test.before(async () => {
|
|
db = await dbInit('archive_serial', getLogger);
|
|
stores = db.stores;
|
|
});
|
|
|
|
test.after(async () => {
|
|
await db.destroy();
|
|
});
|
|
|
|
test.serial('returns three archived toggles', async t => {
|
|
t.plan(1);
|
|
const request = await setupApp(stores);
|
|
return request
|
|
.get('/api/admin/archive/features')
|
|
.expect('Content-Type', /json/)
|
|
.expect(200)
|
|
.expect(res => {
|
|
t.true(res.body.features.length === 3);
|
|
});
|
|
});
|
|
|
|
test.serial('revives a feature by name', async t => {
|
|
t.plan(0);
|
|
const request = await setupApp(stores);
|
|
return request
|
|
.post('/api/admin/archive/revive/featureArchivedX')
|
|
.set('Content-Type', 'application/json')
|
|
.expect(200);
|
|
});
|
|
|
|
test.serial(
|
|
'archived feature is not accessible via /features/:featureName',
|
|
async t => {
|
|
t.plan(0);
|
|
const request = await setupApp(stores);
|
|
|
|
return request
|
|
.get('/api/admin/features/featureArchivedZ')
|
|
.set('Content-Type', 'application/json')
|
|
.expect(404);
|
|
},
|
|
);
|
|
|
|
test.serial('must set name when reviving toggle', async t => {
|
|
t.plan(0);
|
|
const request = await setupApp(stores);
|
|
return request.post('/api/admin/archive/revive/').expect(404);
|
|
});
|