@@ -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