mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-01-05 09:50:34 +03:00
39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
|
const sinon = require('sinon');
|
||
|
const rewire = require('rewire');
|
||
|
|
||
|
const events = require('events');
|
||
|
|
||
|
const rewiredStripeService = rewire('../../../core/server/services/stripe');
|
||
|
|
||
|
describe('Stripe Service', function () {
|
||
|
beforeEach(function () {
|
||
|
this.clock = sinon.useFakeTimers();
|
||
|
});
|
||
|
|
||
|
afterEach(function () {
|
||
|
this.clock.restore();
|
||
|
});
|
||
|
|
||
|
it('Emits a "services.stripe.reconfigured" event when it is reconfigured', async function () {
|
||
|
const eventsStub = new events.EventEmitter();
|
||
|
const configureApiStub = sinon.spy();
|
||
|
|
||
|
const emitReconfiguredEventSpy = sinon.spy(eventsStub, 'emit').withArgs('services.stripe.reconfigured');
|
||
|
|
||
|
rewiredStripeService.__set__('events', eventsStub);
|
||
|
|
||
|
await rewiredStripeService.init();
|
||
|
|
||
|
// This is _after_ init, because init calls configureApi, and we DGAF about that call.
|
||
|
rewiredStripeService.__set__('configureApi', configureApiStub);
|
||
|
|
||
|
eventsStub.emit('settings.edited', {
|
||
|
get: sinon.stub().withArgs('key').returns('stripe_connect_secret_key')
|
||
|
});
|
||
|
|
||
|
this.clock.tick(600);
|
||
|
|
||
|
sinon.assert.callOrder(configureApiStub, emitReconfiguredEventSpy);
|
||
|
});
|
||
|
});
|