mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-13 22:53:32 +03:00
8fd272476b
closes #6505 -Removed all of the /*jshint expr:true*/ comments from the tests -Removed all of the should.equal(true, true) statements from the tests -Removed should from the greenkeeper ignores
62 lines
1.5 KiB
JavaScript
62 lines
1.5 KiB
JavaScript
/*globals describe, beforeEach, afterEach, it*/
|
|
var should = require('should'),
|
|
sinon = require('sinon'),
|
|
decideIsAdmin = require('../../../server/middleware/decide-is-admin');
|
|
|
|
// To stop jshint complaining
|
|
should.equal(true, true);
|
|
|
|
describe('Middleware: decideIsAdmin', function () {
|
|
var sandbox,
|
|
res,
|
|
req,
|
|
next;
|
|
|
|
beforeEach(function () {
|
|
sandbox = sinon.sandbox.create();
|
|
|
|
next = sinon.spy();
|
|
res = sinon.spy();
|
|
req = {};
|
|
});
|
|
|
|
afterEach(function () {
|
|
sandbox.restore();
|
|
});
|
|
|
|
it('sets the isAdmin flag if the url contains /ghost/.', function (done) {
|
|
var trueUrls = [
|
|
'/ghost/',
|
|
'/ghost/foo?bar=foo'
|
|
],
|
|
falseUrls = [
|
|
'/ghost',
|
|
'ghost/',
|
|
'/foobar/ghost',
|
|
'/things/ghost/foo'
|
|
];
|
|
|
|
trueUrls.forEach(function (url) {
|
|
res = sinon.spy();
|
|
next = sinon.spy();
|
|
req.url = url;
|
|
|
|
decideIsAdmin(req, res, next);
|
|
res.isAdmin.should.be.exactly(true);
|
|
next.calledOnce.should.be.exactly(true);
|
|
});
|
|
|
|
falseUrls.forEach(function (url) {
|
|
res = sinon.spy();
|
|
next = sinon.spy();
|
|
req.url = url;
|
|
|
|
decideIsAdmin(req, res, next);
|
|
res.isAdmin.should.be.exactly(false);
|
|
next.calledOnce.should.be.exactly(true);
|
|
});
|
|
|
|
done();
|
|
});
|
|
});
|