Skip to content

Commit d1d2200

Browse files
committed
update test code
1 parent e13d851 commit d1d2200

File tree

2 files changed

+200
-1
lines changed

2 files changed

+200
-1
lines changed

lib/dataProcessing.test.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ describe('dataProsessing', () => {
9595
});
9696

9797
it('should throw error when stateMachine name does not exists', () => {
98-
serverlessStepFunctions.stepFunctions = {};
98+
serverlessStepFunctions.serverless.service.stepFunctions.stateMachines = {};
99+
serverlessStepFunctions.options.name = 'someName';
99100
expect(() => serverlessStepFunctions.compile()).to.throw(Error);
100101
});
101102

lib/index.test.js

Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,26 @@ describe('ServerlessStepFunctions', () => {
102102
});
103103
});
104104

105+
it('should run deploy:stepf:activities:deploy promise chain in order', () => {
106+
const deployActivityStub = sinon
107+
.stub(serverlessStepFunctions, 'activityDeploy').returns(BbPromise.resolve());
108+
return serverlessStepFunctions.hooks['deploy:stepf:activities:deploy']()
109+
.then(() => {
110+
expect(deployActivityStub.calledOnce).to.be.equal(true);
111+
serverlessStepFunctions.activityDeploy.restore();
112+
});
113+
});
114+
115+
it('should run remove:stepf:activities:remove promise chain in order', () => {
116+
const removeActivityStub = sinon
117+
.stub(serverlessStepFunctions, 'activityRemove').returns(BbPromise.resolve());
118+
return serverlessStepFunctions.hooks['remove:stepf:activities:remove']()
119+
.then(() => {
120+
expect(removeActivityStub.calledOnce).to.be.equal(true);
121+
serverlessStepFunctions.activityRemove.restore();
122+
});
123+
});
124+
105125
it('should set an empty options object if no options are given', () => {
106126
const serverlessStepFunctionsWithEmptyOptions = new ServerlessStepFunctions(serverless);
107127
expect(serverlessStepFunctionsWithEmptyOptions.options).to.deep.equal({});
@@ -293,5 +313,183 @@ describe('ServerlessStepFunctions', () => {
293313
});
294314
});
295315
});
316+
317+
describe('#activityDeploy()', () => {
318+
it('should run promise chain in order when name is given with notDeployed', () => {
319+
serverlessStepFunctions.deployedActivities.hellofunc = 'notDeployed'
320+
const yamlParseStub = sinon
321+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
322+
const checkActivitySettingStub = sinon
323+
.stub(serverlessStepFunctions, 'checkActivitySetting').returns(BbPromise.resolve());
324+
const getActivityArnStub = sinon
325+
.stub(serverlessStepFunctions, 'getActivityArn').returns(BbPromise.resolve());
326+
const describeActivityStub = sinon
327+
.stub(serverlessStepFunctions, 'describeActivity').returns(BbPromise.resolve());
328+
const createActivityStub = sinon
329+
.stub(serverlessStepFunctions, 'createActivity').returns(BbPromise.resolve());
330+
331+
return serverlessStepFunctions.activityDeploy()
332+
.then(() => {
333+
expect(yamlParseStub.calledOnce).to.be.equal(true);
334+
expect(checkActivitySettingStub.calledAfter(yamlParseStub)).to.be.equal(true);
335+
expect(getActivityArnStub.calledAfter(checkActivitySettingStub)).to.be.equal(true);
336+
expect(describeActivityStub.calledAfter(getActivityArnStub)).to.be.equal(true);
337+
expect(createActivityStub.calledAfter(describeActivityStub)).to.be.equal(true);
338+
339+
serverlessStepFunctions.yamlParse.restore();
340+
serverlessStepFunctions.checkActivitySetting.restore();
341+
serverlessStepFunctions.getActivityArn.restore();
342+
serverlessStepFunctions.describeActivity.restore();
343+
serverlessStepFunctions.createActivity.restore();
344+
});
345+
});
346+
347+
it('should run promise chain in order when name is given with deployed', () => {
348+
serverlessStepFunctions.deployedActivities.hellofunc = 'deployed'
349+
const yamlParseStub = sinon
350+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
351+
const checkActivitySettingStub = sinon
352+
.stub(serverlessStepFunctions, 'checkActivitySetting').returns(BbPromise.resolve());
353+
const getActivityArnStub = sinon
354+
.stub(serverlessStepFunctions, 'getActivityArn').returns(BbPromise.resolve());
355+
const describeActivityStub = sinon
356+
.stub(serverlessStepFunctions, 'describeActivity').returns(BbPromise.resolve());
357+
const createActivityStub = sinon
358+
.stub(serverlessStepFunctions, 'createActivity').returns(BbPromise.resolve());
359+
360+
return serverlessStepFunctions.activityDeploy()
361+
.then(() => {
362+
expect(yamlParseStub.calledOnce).to.be.equal(true);
363+
expect(checkActivitySettingStub.calledAfter(yamlParseStub)).to.be.equal(true);
364+
expect(getActivityArnStub.calledAfter(checkActivitySettingStub)).to.be.equal(true);
365+
expect(describeActivityStub.calledAfter(getActivityArnStub)).to.be.equal(true);
366+
expect(createActivityStub.calledAfter(describeActivityStub)).to.be.equal(false);
367+
368+
serverlessStepFunctions.yamlParse.restore();
369+
serverlessStepFunctions.checkActivitySetting.restore();
370+
serverlessStepFunctions.getActivityArn.restore();
371+
serverlessStepFunctions.describeActivity.restore();
372+
serverlessStepFunctions.createActivity.restore();
373+
});
374+
});
375+
376+
it('should run promise chain in order when name is not given', () => {
377+
serverlessStepFunctions.options.name = null;
378+
const yamlParseStub = sinon
379+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
380+
const checkActivitySettingsStub = sinon
381+
.stub(serverlessStepFunctions, 'checkActivitySettings').returns(BbPromise.resolve());
382+
const getActivityArnsStub = sinon
383+
.stub(serverlessStepFunctions, 'getActivityArns').returns(BbPromise.resolve());
384+
const describeActivitiesStub = sinon
385+
.stub(serverlessStepFunctions, 'describeActivities').returns(BbPromise.resolve());
386+
const createActivitiesStub = sinon
387+
.stub(serverlessStepFunctions, 'createActivities').returns(BbPromise.resolve());
388+
389+
return serverlessStepFunctions.activityDeploy()
390+
.then(() => {
391+
expect(yamlParseStub.calledOnce).to.be.equal(true);
392+
expect(checkActivitySettingsStub.calledAfter(yamlParseStub)).to.be.equal(true);
393+
expect(getActivityArnsStub.calledAfter(checkActivitySettingsStub)).to.be.equal(true);
394+
expect(describeActivitiesStub.calledAfter(getActivityArnsStub)).to.be.equal(true);
395+
expect(createActivitiesStub.calledAfter(describeActivitiesStub)).to.be.equal(true);
396+
397+
serverlessStepFunctions.yamlParse.restore();
398+
serverlessStepFunctions.checkActivitySettings.restore();
399+
serverlessStepFunctions.getActivityArns.restore();
400+
serverlessStepFunctions.describeActivities.restore();
401+
serverlessStepFunctions.createActivities.restore();
402+
});
403+
});
404+
});
405+
406+
describe('#activityDeploy()', () => {
407+
it('should run promise chain in order when name is given with deployed', () => {
408+
serverlessStepFunctions.deployedActivities.hellofunc = 'deployed'
409+
const yamlParseStub = sinon
410+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
411+
const checkActivitySettingStub = sinon
412+
.stub(serverlessStepFunctions, 'checkActivitySetting').returns(BbPromise.resolve());
413+
const getActivityArnStub = sinon
414+
.stub(serverlessStepFunctions, 'getActivityArn').returns(BbPromise.resolve());
415+
const describeActivityStub = sinon
416+
.stub(serverlessStepFunctions, 'describeActivity').returns(BbPromise.resolve());
417+
const deleteActivityStub = sinon
418+
.stub(serverlessStepFunctions, 'deleteActivity').returns(BbPromise.resolve());
419+
420+
return serverlessStepFunctions.activityRemove()
421+
.then(() => {
422+
expect(yamlParseStub.calledOnce).to.be.equal(true);
423+
expect(checkActivitySettingStub.calledAfter(yamlParseStub)).to.be.equal(true);
424+
expect(getActivityArnStub.calledAfter(checkActivitySettingStub)).to.be.equal(true);
425+
expect(describeActivityStub.calledAfter(getActivityArnStub)).to.be.equal(true);
426+
expect(deleteActivityStub.calledAfter(describeActivityStub)).to.be.equal(true);
427+
428+
serverlessStepFunctions.yamlParse.restore();
429+
serverlessStepFunctions.checkActivitySetting.restore();
430+
serverlessStepFunctions.getActivityArn.restore();
431+
serverlessStepFunctions.describeActivity.restore();
432+
serverlessStepFunctions.deleteActivity.restore();
433+
});
434+
});
435+
436+
it('should run promise chain in order when name is given with notDeployed', () => {
437+
serverlessStepFunctions.deployedActivities.hellofunc = 'notDeployed'
438+
const yamlParseStub = sinon
439+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
440+
const checkActivitySettingStub = sinon
441+
.stub(serverlessStepFunctions, 'checkActivitySetting').returns(BbPromise.resolve());
442+
const getActivityArnStub = sinon
443+
.stub(serverlessStepFunctions, 'getActivityArn').returns(BbPromise.resolve());
444+
const describeActivityStub = sinon
445+
.stub(serverlessStepFunctions, 'describeActivity').returns(BbPromise.resolve());
446+
const deleteActivityStub = sinon
447+
.stub(serverlessStepFunctions, 'deleteActivity').returns(BbPromise.resolve());
448+
449+
return serverlessStepFunctions.activityRemove()
450+
.then(() => {
451+
expect(yamlParseStub.calledOnce).to.be.equal(true);
452+
expect(checkActivitySettingStub.calledAfter(yamlParseStub)).to.be.equal(true);
453+
expect(getActivityArnStub.calledAfter(checkActivitySettingStub)).to.be.equal(true);
454+
expect(describeActivityStub.calledAfter(getActivityArnStub)).to.be.equal(true);
455+
expect(deleteActivityStub.calledAfter(describeActivityStub)).to.be.equal(false);
456+
457+
serverlessStepFunctions.yamlParse.restore();
458+
serverlessStepFunctions.checkActivitySetting.restore();
459+
serverlessStepFunctions.getActivityArn.restore();
460+
serverlessStepFunctions.describeActivity.restore();
461+
serverlessStepFunctions.deleteActivity.restore();
462+
});
463+
});
464+
465+
it('should run promise chain in order when name is not given', () => {
466+
serverlessStepFunctions.options.name = null;
467+
const yamlParseStub = sinon
468+
.stub(serverlessStepFunctions, 'yamlParse').returns(BbPromise.resolve());
469+
const checkActivitySettingsStub = sinon
470+
.stub(serverlessStepFunctions, 'checkActivitySettings').returns(BbPromise.resolve());
471+
const getActivityArnsStub = sinon
472+
.stub(serverlessStepFunctions, 'getActivityArns').returns(BbPromise.resolve());
473+
const describeActivitiesStub = sinon
474+
.stub(serverlessStepFunctions, 'describeActivities').returns(BbPromise.resolve());
475+
const deleteActivitiesStub = sinon
476+
.stub(serverlessStepFunctions, 'deleteActivities').returns(BbPromise.resolve());
477+
478+
return serverlessStepFunctions.activityRemove()
479+
.then(() => {
480+
expect(yamlParseStub.calledOnce).to.be.equal(true);
481+
expect(checkActivitySettingsStub.calledAfter(yamlParseStub)).to.be.equal(true);
482+
expect(getActivityArnsStub.calledAfter(checkActivitySettingsStub)).to.be.equal(true);
483+
expect(describeActivitiesStub.calledAfter(getActivityArnsStub)).to.be.equal(true);
484+
expect(deleteActivitiesStub.calledAfter(describeActivitiesStub)).to.be.equal(true);
485+
486+
serverlessStepFunctions.yamlParse.restore();
487+
serverlessStepFunctions.checkActivitySettings.restore();
488+
serverlessStepFunctions.getActivityArns.restore();
489+
serverlessStepFunctions.describeActivities.restore();
490+
serverlessStepFunctions.deleteActivities.restore();
491+
});
492+
});
493+
});
296494
});
297495

0 commit comments

Comments
 (0)