mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-02-10 23:36:14 -05:00
44 lines
1.3 KiB
JavaScript
44 lines
1.3 KiB
JavaScript
|
const should = require('should');
|
||
|
const sinon = require('sinon');
|
||
|
const getNewslettersServiceInstance = require('../../../../../core/server/services/newsletters');
|
||
|
const models = require('../../../../../core/server/models');
|
||
|
|
||
|
describe('Newsletters Service', function () {
|
||
|
before(function () {
|
||
|
models.init();
|
||
|
});
|
||
|
|
||
|
afterEach(function () {
|
||
|
sinon.restore();
|
||
|
});
|
||
|
|
||
|
describe('browse', function () {
|
||
|
it('lists all newsletters', async function () {
|
||
|
const findAllStub = {
|
||
|
toJSON: function () {
|
||
|
return [
|
||
|
{
|
||
|
id: 'newsletter-1'
|
||
|
},
|
||
|
{
|
||
|
id: 'newsletter-2'
|
||
|
}
|
||
|
];
|
||
|
}
|
||
|
};
|
||
|
sinon.stub(models.Newsletter, 'findAll').returns(Promise.resolve(findAllStub));
|
||
|
|
||
|
const NewslettersService = getNewslettersServiceInstance({NewsletterModel: models.Newsletter});
|
||
|
const newsletters = await NewslettersService.browse({});
|
||
|
should(newsletters).deepEqual([
|
||
|
{
|
||
|
id: 'newsletter-1'
|
||
|
},
|
||
|
{
|
||
|
id: 'newsletter-2'
|
||
|
}
|
||
|
]);
|
||
|
});
|
||
|
});
|
||
|
});
|