0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-03-11 02:12:21 -05:00

Added regression tests for Admin API /site endpoints

no issue

- We had a suspicion about a regression with these endpoints and there was no quick way to verify if these endpoints were failing due to a misconfiguration on the server or they broke generally for everyone
- Added tests as they were clearly lacking
This commit is contained in:
Naz 2021-03-09 22:10:27 +13:00
parent dc8e6be9fe
commit 55dd16568b
3 changed files with 87 additions and 0 deletions

View file

@ -0,0 +1,29 @@
const should = require('should');
const supertest = require('supertest');
const testUtils = require('../../../../utils');
const localUtils = require('./utils');
const config = require('../../../../../core/shared/config');
describe('Config API', function () {
let request;
before(async function () {
await testUtils.startGhost();
request = supertest.agent(config.get('url'));
await localUtils.doAuth(request);
});
it('can retrieve config and all expected properties', async function () {
const res = await request
.get(localUtils.API.getApiQuery('site/'))
.set('Origin', config.get('url'))
.expect('Content-Type', /json/)
.expect('Cache-Control', testUtils.cacheRules.private)
.expect(200);
localUtils.API.checkResponse(res.body.site, 'site');
// minor (safe) version
res.body.site.version.should.match(/\d+\.\d+/);
});
});

View file

@ -0,0 +1,29 @@
const should = require('should');
const supertest = require('supertest');
const testUtils = require('../../../../utils');
const localUtils = require('./utils');
const config = require('../../../../../core/shared/config');
describe('Config API (v2)', function () {
let request;
before(async function () {
await testUtils.startGhost();
request = supertest.agent(config.get('url'));
await localUtils.doAuth(request);
});
it('can retrieve config and all expected properties', async function () {
const res = await request
.get(localUtils.API.getApiQuery('site/'))
.set('Origin', config.get('url'))
.expect('Content-Type', /json/)
.expect('Cache-Control', testUtils.cacheRules.private)
.expect(200);
localUtils.API.checkResponse(res.body.site, 'site');
// minor (safe) version
res.body.site.version.should.match(/\d+\.\d+/);
});
});

View file

@ -0,0 +1,29 @@
const should = require('should');
const supertest = require('supertest');
const testUtils = require('../../../../utils');
const localUtils = require('../../v3/admin/utils');
const config = require('../../../../../core/shared/config');
describe('Config API (v3)', function () {
let request;
before(async function () {
await testUtils.startGhost();
request = supertest.agent(config.get('url'));
await localUtils.doAuth(request);
});
it('can retrieve config and all expected properties', async function () {
const res = await request
.get(localUtils.API.getApiQuery('site/'))
.set('Origin', config.get('url'))
.expect('Content-Type', /json/)
.expect('Cache-Control', testUtils.cacheRules.private)
.expect(200);
localUtils.API.checkResponse(res.body.site, 'site');
// minor (safe) version
res.body.site.version.should.match(/\d+\.\d+/);
});
});