@sprucelabs/spruce-cli 14.26.16 → 14.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/build/.spruce/errors/errors.types.d.ts +19 -0
- package/build/.spruce/errors/options.types.d.ts +4 -1
- package/build/.spruce/errors/spruceCli/dependencyExists.schema.d.ts +3 -0
- package/build/.spruce/errors/spruceCli/dependencyExists.schema.js +28 -0
- package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -0
- package/build/__tests__/behavioral/AddingADependency.test.d.ts +6 -3
- package/build/__tests__/behavioral/AddingADependency.test.js +116 -44
- package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js +2 -2
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js +4 -4
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/ManagingDependencies.test.js +3 -3
- package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +1 -1
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingRemote.test.js +1 -1
- package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpVscode.test.js +3 -3
- package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingDataStores.test.js +2 -2
- package/build/__tests__/behavioral/TestingDataStores.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +2 -2
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.d.ts +3 -2
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +156 -106
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +6 -9
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +7 -4
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill.test.js +7 -7
- package/build/__tests__/behavioral/skill/UpgradingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill3.test.js +2 -2
- package/build/__tests__/behavioral/skill/UpgradingASkill3.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js +3 -3
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js +2 -2
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js +3 -3
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/errors/SpruceError.js +4 -0
- package/build/errors/SpruceError.js.map +1 -1
- package/build/errors/dependencyExists.builder.d.ts +11 -0
- package/build/errors/dependencyExists.builder.js +22 -0
- package/build/errors/dependencyExists.builder.js.map +1 -0
- package/build/features/AbstractAction.js +1 -1
- package/build/features/AbstractAction.js.map +1 -1
- package/build/features/dependencies/actions/AddAction.js +22 -15
- package/build/features/dependencies/actions/AddAction.js.map +1 -1
- package/build/features/event/actions/CreateAction.js +1 -1
- package/build/features/event/actions/CreateAction.js.map +1 -1
- package/build/interfaces/SpyInterface.d.ts +1 -1
- package/build/interfaces/SpyInterface.js +2 -2
- package/build/interfaces/SpyInterface.js.map +1 -1
- package/build/services/DependencyService.d.ts +1 -0
- package/build/services/DependencyService.js +18 -0
- package/build/services/DependencyService.js.map +1 -1
- package/build/tests/AbstractCliTest.js +1 -1
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/utilities/uiAssert.utility.d.ts +6 -0
- package/build/tests/utilities/uiAssert.utility.js +51 -0
- package/build/tests/utilities/uiAssert.utility.js.map +1 -0
- package/package.json +30 -28
- package/src/.spruce/errors/errors.types.ts +29 -0
- package/src/.spruce/errors/options.types.ts +4 -1
- package/src/.spruce/errors/spruceCli/dependencyExists.schema.ts +22 -0
- package/src/__tests__/behavioral/AddingADependency.test.ts +45 -8
- package/src/__tests__/behavioral/InstallingASkillAtAnOrg.test.ts +3 -3
- package/src/__tests__/behavioral/LoggingInAsASkill.test.ts +4 -4
- package/src/__tests__/behavioral/ManagingDependencies.test.ts +3 -3
- package/src/__tests__/behavioral/RememberingUpgradeSelections.test.ts +1 -1
- package/src/__tests__/behavioral/SettingRemote.test.ts +1 -1
- package/src/__tests__/behavioral/SettingUpVscode.test.ts +3 -3
- package/src/__tests__/behavioral/TestingDataStores.test.ts +2 -2
- package/src/__tests__/behavioral/events/CreatingAListener.test.ts +2 -2
- package/src/__tests__/behavioral/events/CreatingAnEvent.test.ts +44 -22
- package/src/__tests__/behavioral/events/KeepingEventsInSync2.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/KeepingSchemasInSync.test.ts +2 -0
- package/src/__tests__/behavioral/skill/UpgradingASkill.test.ts +7 -7
- package/src/__tests__/behavioral/skill/UpgradingASkill3.test.ts +2 -2
- package/src/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.ts +1 -1
- package/src/__tests__/behavioral/views/CreatingASkillView.test.ts +3 -3
- package/src/__tests__/behavioral/views/TestingViewControllers.test.ts +2 -2
- package/src/__tests__/implementation/ActionExecuter2.test.ts +3 -3
- package/src/errors/SpruceError.ts +4 -0
- package/src/errors/dependencyExists.builder.ts +12 -0
- package/src/features/AbstractAction.ts +1 -4
- package/src/features/dependencies/actions/AddAction.ts +12 -5
- package/src/features/event/actions/CreateAction.ts +4 -1
- package/src/interfaces/SpyInterface.ts +1 -1
- package/src/services/DependencyService.ts +14 -0
- package/src/tests/AbstractCliTest.ts +1 -1
- package/src/tests/utilities/uiAssert.utility.ts +29 -0
|
@@ -97,7 +97,7 @@ var ManagingDependenciesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
97
97
|
return this.waitForInput();
|
|
98
98
|
|
|
99
99
|
case 9:
|
|
100
|
-
last = this.ui.
|
|
100
|
+
last = this.ui.getLastInvocation();
|
|
101
101
|
|
|
102
102
|
_test.assert.isEqual(last.options.type, 'select');
|
|
103
103
|
|
|
@@ -150,7 +150,7 @@ var ManagingDependenciesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
150
150
|
return this.waitForInput();
|
|
151
151
|
|
|
152
152
|
case 7:
|
|
153
|
-
last = this.ui.
|
|
153
|
+
last = this.ui.getLastInvocation();
|
|
154
154
|
|
|
155
155
|
_test.assert.isEqualDeep(last.options.value, [skill1.id]);
|
|
156
156
|
|
|
@@ -250,7 +250,7 @@ var ManagingDependenciesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
250
250
|
return this.waitForInput();
|
|
251
251
|
|
|
252
252
|
case 6:
|
|
253
|
-
last = this.ui.
|
|
253
|
+
last = this.ui.getLastInvocation();
|
|
254
254
|
|
|
255
255
|
_test.assert.doesNotInclude(last.options.options.choices, {
|
|
256
256
|
value: skill.id
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/ManagingDependencies.test.ts"],"names":["ManagingDependenciesTest","assert","isFunction","Action","execute","getSkillFixture","seedDemoSkill","name","skill1","skill2","waitForInput","last","ui","
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/ManagingDependencies.test.ts"],"names":["ManagingDependenciesTest","assert","isFunction","Action","execute","getSkillFixture","seedDemoSkill","name","skill1","skill2","waitForInput","last","ui","getLastInvocation","isEqual","options","type","doesInclude","choices","value","id","reset","Service","set","namespace","slug","isEqualDeep","promise","sendInput","dependencies","get","registerCurrentSkill","skill","doesNotInclude","AbstractSkillTest"],"mappings":"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","sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class ManagingDependenciesTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'skills'\n\n\t@test()\n\tprotected static async hasAddDependencyAction() {\n\t\tassert.isFunction(this.Action('dependency', 'manage').execute)\n\t}\n\n\t@test()\n\tprotected static async showsSkillsAsCheckboxes() {\n\t\tconst skill1 = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname: 'dependency manage 1',\n\t\t})\n\n\t\tconst skill2 = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname: 'dependency manage 2',\n\t\t})\n\n\t\tvoid this.Action('dependency', 'manage').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(last.options.type, 'select')\n\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tvalue: skill1.id,\n\t\t})\n\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tvalue: skill2.id,\n\t\t})\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async selectsExistingDependencies() {\n\t\tconst skill1 = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname: 'dependency manage 3',\n\t\t})\n\n\t\tthis.Service('dependency').set([\n\t\t\t{\n\t\t\t\tnamespace: skill1.slug,\n\t\t\t\tid: skill1.id,\n\t\t\t},\n\t\t])\n\n\t\tvoid this.Action('dependency', 'manage').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.isEqualDeep(last.options.value, [skill1.id])\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async canSelectANewDependencies() {\n\t\tconst skill1 = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname: 'dependency manage 4',\n\t\t})\n\n\t\tconst skill2 = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname: 'dependency manage 5',\n\t\t})\n\n\t\tconst promise = this.Action('dependency', 'manage').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput([skill1.id, skill2.id])\n\n\t\tconst dependencies = this.Service('settings').get('dependencies')\n\n\t\tassert.isEqualDeep(dependencies, [\n\t\t\t{\n\t\t\t\tid: skill1.id,\n\t\t\t\tnamespace: skill1.slug,\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: skill2.id,\n\t\t\t\tnamespace: skill2.slug,\n\t\t\t},\n\t\t])\n\n\t\tawait promise\n\t}\n\n\t@test()\n\tprotected static async doesNotShowCurrentSkill() {\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'current skill in managing deps',\n\t\t})\n\n\t\tvoid this.Action('dependency', 'manage').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesNotInclude(last.options.options.choices, {\n\t\t\tvalue: skill.id,\n\t\t})\n\n\t\tthis.ui.reset()\n\t}\n}\n"],"file":"ManagingDependencies.test.js"}
|
|
@@ -187,7 +187,7 @@ var RememberingUpgradeSelectionsTest = (_dec = (0, _test.test)(), _dec2 = (0, _t
|
|
|
187
187
|
return this.waitForInput();
|
|
188
188
|
|
|
189
189
|
case 3:
|
|
190
|
-
last = this.ui.
|
|
190
|
+
last = this.ui.getLastInvocation();
|
|
191
191
|
|
|
192
192
|
_test.assert.doesInclude(last, {
|
|
193
193
|
'options.options.choices[].value': _constants.FILE_ACTION_ALWAYS_SKIP
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/RememberingUpgradeSelections.test.ts"],"names":["RememberingUpgradeSelectionsTest","expected","getExpectedBuildCi","updater","ScriptUpdater","assertShowsAlwaysSkipOption","ui","sendInput","wait","pkg","Service","ci","get","assert","isEqual","getFeatureInstaller","getFeature","scripts","update","key","value","latestScripts","settings","waitForInput","last","
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/RememberingUpgradeSelections.test.ts"],"names":["RememberingUpgradeSelectionsTest","expected","getExpectedBuildCi","updater","ScriptUpdater","assertShowsAlwaysSkipOption","ui","sendInput","wait","pkg","Service","ci","get","assert","isEqual","getFeatureInstaller","getFeature","scripts","update","key","value","latestScripts","settings","waitForInput","last","getLastInvocation","doesInclude","FILE_ACTION_ALWAYS_SKIP","AbstractSkillTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,gC,WAGnB,iB,UAsBA,iB,UAYA,iB;;;;;;;;;;;;;8HAlCD;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOC,gBAAAA,QAFP,GAEkB,KAAKC,kBAAL,EAFlB;AAGOC,gBAAAA,OAHP,GAGiB,KAAKC,aAAL,CAAmB,UAAnB,EAA+B,MAA/B,CAHjB;AAAA;AAAA,uBAKO,KAAKC,2BAAL,CAAiCF,OAAjC,CALP;;AAAA;AAAA;AAAA,uBAOO,KAAKG,EAAL,CAAQC,SAAR,CAAkB,YAAlB,CAPP;;AAAA;AAAA;AAAA,uBASO,KAAKC,IAAL,CAAU,GAAV,CATP;;AAAA;AAWOC,gBAAAA,GAXP,GAWa,KAAKC,OAAL,CAAa,KAAb,CAXb;AAYOC,gBAAAA,EAZP,GAYYF,GAAG,CAACG,GAAJ,CAAQ,CAAC,SAAD,EAAY,UAAZ,CAAR,CAZZ;;AAcCC,6BAAOC,OAAP,CAAeH,EAAf,EAAmBV,QAAnB;;AAdD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAiBA,8BAAoC;AACnC;AACA,aAAO,KAAKc,mBAAL,GAA2BC,UAA3B,CAAsC,OAAtC,EAA+CC,OAA/C,CAAuD,UAAvD,CAAP;AACA;;;;mHAED;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOd,gBAAAA,OAFP,GAEiB,KAAKC,aAAL,CAAmB,UAAnB,EAA+B,OAA/B,CAFjB;AAAA;AAAA,uBAGOD,OAAO,CAACe,MAAR,EAHP;;AAAA;AAKOjB,gBAAAA,QALP,GAKkB,KAAKC,kBAAL,EALlB;AAMOO,gBAAAA,GANP,GAMa,KAAKC,OAAL,CAAa,KAAb,CANb;AAOOC,gBAAAA,EAPP,GAOYF,GAAG,CAACG,GAAJ,CAAQ,CAAC,SAAD,EAAY,UAAZ,CAAR,CAPZ;;AASCC,6BAAOC,OAAP,CAAeH,EAAf,EAAmBV,QAAnB;;AATD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;yHAYA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOE,gBAAAA,OAFP,GAEiB,KAAKC,aAAL,CAAmB,WAAnB,EAAgC,MAAhC,CAFjB;AAAA;AAAA,uBAGO,KAAKC,2BAAL,CAAiCF,OAAjC,CAHP;;AAAA;AAAA;AAAA,uBAKO,KAAKG,EAAL,CAAQC,SAAR,CAAkB,YAAlB,CALP;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAQA,uBAA6BY,GAA7B,EAA0CC,KAA1C,EAAyD;AACxD,UAAMjB,OAAO,GAAG,IAAIC,0BAAJ,CAAkB;AACjCK,QAAAA,GAAG,EAAE,KAAKC,OAAL,CAAa,KAAb,CAD4B;AAEjCW,QAAAA,aAAa,uCACXF,GADW,EACLC,KADK,CAFoB;AAKjCd,QAAAA,EAAE,EAAE,KAAKA,EALwB;AAMjCgB,QAAAA,QAAQ,EAAE,KAAKZ,OAAL,CAAa,UAAb;AANuB,OAAlB,CAAhB;AAQA,aAAOP,OAAP;AACA;;;;uHAED,kBAAiDA,OAAjD;AAAA;AAAA;AAAA;AAAA;AAAA;AACC,qBAAKA,OAAO,CAACe,MAAR,EAAL;AADD;AAAA,uBAGO,KAAKK,YAAL,EAHP;;AAAA;AAKOC,gBAAAA,IALP,GAKc,KAAKlB,EAAL,CAAQmB,iBAAR,EALd;;AAOCZ,6BAAOa,WAAP,CAAmBF,IAAnB,EAAyB;AACxB,qDAAmCG;AADX,iBAAzB;;AAPD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAzD6DC,8B,8DAC5B,S","sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport { FILE_ACTION_ALWAYS_SKIP } from '../../constants'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport ScriptUpdater from '../../updaters/ScriptUpdater'\n\nexport default class RememberingUpgradeSelectionsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\n\t@test()\n\tprotected static async changedScriptsHasAlwaysSkipOptions() {\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco')\n\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\n\t\tawait this.wait(100)\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\tprivate static getExpectedBuildCi() {\n\t\t//@ts-ignore\n\t\treturn this.getFeatureInstaller().getFeature('skill').scripts['build.ci']\n\t}\n\n\t@test()\n\tprotected static async shouldNotAskASecondTime() {\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco2')\n\t\tawait updater.update()\n\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\t@test()\n\tprotected static async stillAsksAboutDifferentScript() {\n\t\tconst updater = this.ScriptUpdater('build.dev', 'taco')\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\t}\n\n\tprivate static ScriptUpdater(key: string, value: string) {\n\t\tconst updater = new ScriptUpdater({\n\t\t\tpkg: this.Service('pkg'),\n\t\t\tlatestScripts: {\n\t\t\t\t[key]: value,\n\t\t\t},\n\t\t\tui: this.ui,\n\t\t\tsettings: this.Service('settings'),\n\t\t})\n\t\treturn updater\n\t}\n\n\tprivate static async assertShowsAlwaysSkipOption(updater: ScriptUpdater) {\n\t\tvoid updater.update()\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last, {\n\t\t\t'options.options.choices[].value': FILE_ACTION_ALWAYS_SKIP,\n\t\t})\n\t}\n}\n"],"file":"RememberingUpgradeSelections.test.js"}
|
|
@@ -127,7 +127,7 @@ var SettingRemoteTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)("save
|
|
|
127
127
|
return this.waitForInput();
|
|
128
128
|
|
|
129
129
|
case 6:
|
|
130
|
-
last = this.ui.
|
|
130
|
+
last = this.ui.getLastInvocation();
|
|
131
131
|
|
|
132
132
|
_test.assert.doesInclude(last.options.label, 'remote');
|
|
133
133
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingRemote.test.ts"],"names":["SettingRemoteTest","REMOTE_LOCAL","REMOTE_DEV","REMOTE_SANDBOX","REMOTE_PROD","assert","isFunction","Action","execute","remote","expected","env","Service","host","get","isEqual","feature","action","TerminalInterface","setDoesSupportColor","unset","shouldAutoHandleDependencies","waitForInput","last","ui","
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingRemote.test.ts"],"names":["SettingRemoteTest","REMOTE_LOCAL","REMOTE_DEV","REMOTE_SANDBOX","REMOTE_PROD","assert","isFunction","Action","execute","remote","expected","env","Service","host","get","isEqual","feature","action","TerminalInterface","setDoesSupportColor","unset","shouldAutoHandleDependencies","waitForInput","last","ui","getLastInvocation","doesInclude","options","label","reset","shouldThrowOnListenerError","results","isTruthy","errors","stack","set","summaryLines","AbstractSkillTest"],"mappings":"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","sourcesContent":["import {\n\tREMOTE_DEV,\n\tREMOTE_LOCAL,\n\tREMOTE_PROD,\n\tREMOTE_SANDBOX,\n} from '@sprucelabs/spruce-event-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { FeatureCode } from '../../features/features.types'\nimport TerminalInterface from '../../interfaces/TerminalInterface'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class SettingRemoteTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async hasSetRemoteAction() {\n\t\tassert.isFunction(this.Action('event', 'setRemote').execute)\n\t}\n\n\t@test(`saves local as ${REMOTE_LOCAL}`, `local`, `${REMOTE_LOCAL}`)\n\t@test(`saves dev as ${REMOTE_DEV}`, `developer`, `${REMOTE_DEV}`)\n\t@test(`saves sandbox as ${REMOTE_SANDBOX}`, `sandbox`, `${REMOTE_SANDBOX}`)\n\t@test(`saves prod as ${REMOTE_PROD}`, `production`, `${REMOTE_PROD}`)\n\tprotected static async savesRemote(remote: string, expected: string) {\n\t\tawait this.Action('event', 'setRemote').execute({ remote })\n\n\t\tconst env = this.Service('env')\n\t\tconst host = env.get('HOST')\n\n\t\tassert.isEqual(host, expected)\n\t}\n\n\t@test('create.event asks for remote on IS TTY', 'event', 'create')\n\t@test('sync.events asks for remote on IS TTY', 'event', 'sync')\n\t@test('login asks for remote on IS TTY', 'person', 'login')\n\t@test('skill.login asks for remote on IS TTY', 'skill', 'login')\n\tprotected static async shouldAskForRemoteBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\tfeature: FeatureCode,\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(true)\n\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tvoid this.Action(feature, action, {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t}).execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last.options.label, 'remote')\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test('create.event throws for remote on NOT TTY', 'create', false)\n\t@test('sync.events throws for remote on NOT TTY', 'sync', false)\n\tprotected static async shouldThrowBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(false)\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tconst results = await this.Action('event', action, {\n\t\t\tshouldThrowOnListenerError: false,\n\t\t}).execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t\tassert.doesInclude(results.errors[0].stack, 'env.HOST')\n\t}\n\n\t@test()\n\tprotected static async resultsOfCommandHasRemoteMixedIntoSummary() {\n\t\tthis.Service('remote').set('developer')\n\t\tconst results = await this.Action('event', 'sync').execute({})\n\n\t\tassert.isTruthy(results.summaryLines)\n\t\tassert.doesInclude(results.summaryLines, 'Remote: dev')\n\t}\n}\n"],"file":"SettingRemote.test.js"}
|
|
@@ -89,7 +89,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
89
89
|
return this.waitForInput();
|
|
90
90
|
|
|
91
91
|
case 5:
|
|
92
|
-
_test.assert.isEqualDeep(this.ui.
|
|
92
|
+
_test.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
93
93
|
command: 'confirm',
|
|
94
94
|
options: 'Want me to setup debugging for you?'
|
|
95
95
|
});
|
|
@@ -102,7 +102,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
102
102
|
return this.waitForInput();
|
|
103
103
|
|
|
104
104
|
case 10:
|
|
105
|
-
_test.assert.isEqualDeep(this.ui.
|
|
105
|
+
_test.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
106
106
|
command: 'confirm',
|
|
107
107
|
options: 'Want me to setup vscode settings for building, testing and linting on save?'
|
|
108
108
|
});
|
|
@@ -115,7 +115,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
115
115
|
return this.waitForInput();
|
|
116
116
|
|
|
117
117
|
case 15:
|
|
118
|
-
_test.assert.isEqualDeep(this.ui.
|
|
118
|
+
_test.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
119
119
|
command: 'confirm',
|
|
120
120
|
options: 'Want me to setup tasks for building and testing?'
|
|
121
121
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingUpVscode.test.ts"],"names":["SettingUpVscodeTest","test","skip","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","promise","waitForInput","isEqualDeep","ui","
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingUpVscode.test.ts"],"names":["SettingUpVscodeTest","test","skip","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","promise","waitForInput","isEqualDeep","ui","getLastInvocation","command","options","sendInput","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","isEqual","resolvePath","AbstractCliTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,mB,WACnB,iB,UAKAC,WAAKC,IAAL,CAAU,8CAAV,C;;;;;;;;;;;;;0GALD;AAAA;AAAA;AAAA;AAAA;AAECC,6BAAOC,UAAP,CAAkB,KAAKC,MAAL,CAAY,QAAZ,EAAsB,OAAtB,EAA+BC,OAAjD;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;qIAKA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEO,KAAKC,cAAL,GAAsBC,qBAAtB,CAA4C,QAA5C,CAFP;;AAAA;AAGOC,gBAAAA,OAHP,GAGiB,KAAKJ,MAAL,CAAY,QAAZ,EAAsB,OAAtB,EAA+BC,OAA/B,CAAuC,EAAvC,CAHjB;AAAA;AAAA,uBAKO,KAAKI,YAAL,EALP;;AAAA;AAOCP,6BAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;AAC/CC,kBAAAA,OAAO,EAAE,SADsC;AAE/CC,kBAAAA,OAAO,EAAE;AAFsC,iBAAhD;;AAPD;AAAA,uBAYO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CAZP;;AAAA;AAAA;AAAA,uBAcO,KAAKN,YAAL,EAdP;;AAAA;AAgBCP,6BAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;AAC/CC,kBAAAA,OAAO,EAAE,SADsC;AAE/CC,kBAAAA,OAAO,EACN;AAH8C,iBAAhD;;AAhBD;AAAA,uBAsBO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CAtBP;;AAAA;AAAA;AAAA,uBAwBO,KAAKN,YAAL,EAxBP;;AAAA;AA0BCP,6BAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;AAC/CC,kBAAAA,OAAO,EAAE,SADsC;AAE/CC,kBAAAA,OAAO,EAAE;AAFsC,iBAAhD;;AA1BD;AAAA,uBA+BO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CA/BP;;AAAA;AAAA;AAAA,uBAiCuBP,OAjCvB;;AAAA;AAiCOQ,gBAAAA,OAjCP;;AAmCCd,6BAAOe,OAAP,CAAeD,OAAO,CAACE,MAAvB;;AAEMC,gBAAAA,KArCP,GAqCeC,kBAASC,gCAAT,CACb,aADa,oBAEbL,OAAO,CAACM,KAFK,2DAEI,EAFJ,CArCf;;AA0CCpB,6BAAOqB,OAAP,CAAeJ,KAAf,EAAsB,KAAKK,WAAL,CAAiB,qBAAjB,CAAtB;;AA1CD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EANgDC,4B","sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingUpVscodeTest extends AbstractCliTest {\n\t@test()\n\tprotected static async hasSetupAction() {\n\t\tassert.isFunction(this.Action('vscode', 'setup').execute)\n\t}\n\n\t@test.skip('Cant run on machine without vscode installed')\n\tprotected static async settingUpAsksAboutExtensonsAndSetsUpDebug() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\t\tconst promise = this.Action('vscode', 'setup').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup debugging for you?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions:\n\t\t\t\t'Want me to setup vscode settings for building, testing and linting on save?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup tasks for building and testing?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'launch.json',\n\t\t\tresults.files ?? []\n\t\t)\n\n\t\tassert.isEqual(match, this.resolvePath('.vscode/launch.json'))\n\t}\n}\n"],"file":"SettingUpVscode.test.js"}
|
|
@@ -83,7 +83,7 @@ var TestingDataStoresTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
83
83
|
return this.waitForInput();
|
|
84
84
|
|
|
85
85
|
case 5:
|
|
86
|
-
last = this.ui.
|
|
86
|
+
last = this.ui.getLastInvocation();
|
|
87
87
|
|
|
88
88
|
_test.assert.isTruthy(last.options.options.choices);
|
|
89
89
|
|
|
@@ -140,7 +140,7 @@ var TestingDataStoresTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
140
140
|
return this.waitForInput();
|
|
141
141
|
|
|
142
142
|
case 4:
|
|
143
|
-
last = this.ui.
|
|
143
|
+
last = this.ui.getLastInvocation();
|
|
144
144
|
|
|
145
145
|
_test.assert.isTruthy(last.options.options.choices);
|
|
146
146
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/TestingDataStores.test.ts"],"names":["TestingDataStoresTest","storeFeature","cli","getFeature","isInstalled","Action","execute","type","nameReadable","nameCamel","namePascal","waitForInput","last","ui","
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/TestingDataStores.test.ts"],"names":["TestingDataStoresTest","storeFeature","cli","getFeature","isInstalled","Action","execute","type","nameReadable","nameCamel","namePascal","waitForInput","last","ui","getLastInvocation","assert","isTruthy","options","choices","doesInclude","label","reset","promise","selectOptionBasedOnLabel","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","contents","diskUtil","readFile","Service","build","shouldReportWhileRunning","testResults","isArray","isLength","first","message","AbstractSkillTest"],"mappings":"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","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class TestingDataStoresTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'storesWithTests'\n\n\t@test()\n\tprotected static async cantSelectAbstractStoreIfStoreFeatureNotInstalled() {\n\t\tconst storeFeature = this.cli.getFeature('store')\n\n\t\tstoreFeature.isInstalled = async () => false\n\n\t\tvoid this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest (requires install)',\n\t\t})\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async letsYouSelectAbstractStoreTest() {\n\t\tthis.cli.getFeature('store').isInstalled = async () => true\n\n\t\tconst promise = this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest',\n\t\t})\n\n\t\tawait this.selectOptionBasedOnLabel('AbstractStoreTest')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'CanBookAppointmentTest extends AbstractStoreTest'\n\t\t)\n\n\t\tawait this.Service('build').build()\n\n\t\tconst testResults = await this.Action('test', 'test').execute({\n\t\t\tshouldReportWhileRunning: false,\n\t\t})\n\n\t\tassert.isArray(testResults.errors)\n\t\tassert.isLength(testResults.errors, 1)\n\n\t\tconst first = testResults.errors[0]\n\n\t\tassert.doesInclude(first.message, 'does not equal')\n\t}\n}\n"],"file":"TestingDataStores.test.js"}
|
|
@@ -227,7 +227,7 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
227
227
|
return this.waitForInput();
|
|
228
228
|
|
|
229
229
|
case 5:
|
|
230
|
-
lastInvocation = this.ui.
|
|
230
|
+
lastInvocation = this.ui.getLastInvocation();
|
|
231
231
|
|
|
232
232
|
_test.assert.isEqual(lastInvocation.command, 'prompt');
|
|
233
233
|
|
|
@@ -241,7 +241,7 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
241
241
|
return this.waitForInput();
|
|
242
242
|
|
|
243
243
|
case 12:
|
|
244
|
-
lastInvocation = this.ui.
|
|
244
|
+
lastInvocation = this.ui.getLastInvocation();
|
|
245
245
|
|
|
246
246
|
_test.assert.doesInclude(lastInvocation.options.label, 'event');
|
|
247
247
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/__tests__/behavioral/events/CreatingAListener.test.ts"],"names":["CreatingAListenerTest","installEventFeature","Action","execute","eventNamespace","results","assert","isTruthy","errors","err","errorAssertUtil","assertError","parameters","eventName","cli","version","isFalsy","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","Service","check","checkHealth","health","skill","isUndefined","event","listeners","waitForInput","lastInvocation","ui","isEqual","command","options","label","sendInput","MERCURY_API_NAMESPACE","reset","setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener","isGlobal","contents","emitPayloadSchema","targetSchema","eventTargetSchema","payloadSchema","id","fields","booleanField","type","skill2","slug","expectedVersion","organizationId","isRequired","responsePayloadSchema","currentSkill","eventContract","org","connectToApi","shouldAuthAsCurrentSkill","currentClient","disconnect","local","boot","wait","skillId","apiKey","client","mixinContract","eventSignatures","emit","target","payload","totalContracts","totalErrors","totalResponses","meta","promise","fail","stack","kill","error","doesThrow","eventResponseUtil","getFirstResponseOrThrow","eventAssertUtil","responderRef","responses","eventSignature","seedDummySkillRegisterCurrentSkillAndInstallToOrg","skillFixture","registerEventContract","add","namespace","listener","diskUtil","readFile","listenerPath","AbstractEventTest","versionUtil","generateVersion","constValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;AAMA;;AAKA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,qB,WAInB,iB,UAeA,iB,UAgBA,iB,UAqCA,iB,UAwBA,iB,UAeA,iB,UA+BA,iB;;;;;;;;;;;;;kHA1ID;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEO,KAAKC,mBAAL,CAAyB,QAAzB,CAFP;;AAAA;AAAA;AAAA,uBAGuB,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC;AAC5DC,kBAAAA,cAAc,EAAE;AAD4C,iBAAvC,CAHvB;;AAAA;AAGOC,gBAAAA,OAHP;;AAOCC,6BAAOC,QAAP,CAAgBF,OAAO,CAACG,MAAxB;;AACMC,gBAAAA,GARP,GAQaJ,OAAO,CAACG,MAAR,CAAe,CAAf,CARb;;AAUCE,2CAAgBC,WAAhB,CAA4BF,GAA5B,EAAiC,oBAAjC,EAAuD;AACtDG,kBAAAA,UAAU,EAAE,CAAC,gBAAD;AAD0C,iBAAvD;;AAVD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;kHAeA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEO,KAAKX,mBAAL,CAAyB,QAAzB,CAFP;;AAAA;AAAA;AAAA,uBAGuB,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC;AAC5DC,kBAAAA,cAAc,EAAE,SAD4C;AAE5DS,kBAAAA,SAAS,EAAE;AAFiD,iBAAvC,CAHvB;;AAAA;AAGOR,gBAAAA,OAHP;;AAQCC,6BAAOC,QAAP,CAAgBF,OAAO,CAACG,MAAxB;;AACMC,gBAAAA,GATP,GASaJ,OAAO,CAACG,MAAR,CAAe,CAAf,CATb;;AAWCE,2CAAgBC,WAAhB,CAA4BF,GAA5B,EAAiC,oBAAjC,EAAuD;AACtDG,kBAAAA,UAAU,EAAE,CAAC,WAAD;AAD0C,iBAAvD;;AAXD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;gHAgBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEmB,KAAKX,mBAAL,CAAyB,QAAzB,CAFnB;;AAAA;AAEOa,gBAAAA,GAFP;AAIOC,gBAAAA,OAJP,GAIiB,aAJjB;AAAA;AAAA,uBAMuB,KAAKb,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC;AAC5DC,kBAAAA,cAAc,EAAE,OAD4C;AAE5DS,kBAAAA,SAAS,EAAE,WAFiD;AAG5DE,kBAAAA,OAAO,EAAPA;AAH4D,iBAAvC,CANvB;;AAAA;AAMOV,gBAAAA,OANP;;AAYCC,6BAAOU,OAAP,CAAeX,OAAO,CAACG,MAAvB;;AAEMS,gBAAAA,KAdP,GAceC,kBAASC,gCAAT,qBACAJ,OADA,mBAEbV,OAAO,CAACe,KAFK,CAdf;;AAmBCd,6BAAOe,WAAP,CAAmBJ,KAAnB,EAA0BF,OAA1B;;AAnBD;AAAA,uBAqBO,KAAKO,OAAL,CAAa,aAAb,EAA4BC,KAA5B,CAAkCN,KAAlC,CArBP;;AAAA;AAAA;AAAA,uBAuBsBH,GAAG,CAACU,WAAJ,EAvBtB;;AAAA;AAuBOC,gBAAAA,MAvBP;;AAyBCnB,6BAAOC,QAAP,CAAgBkB,MAAM,CAACC,KAAvB;;AAEApB,6BAAOqB,WAAP,CAAmBF,MAAM,CAACC,KAAP,CAAalB,MAAhC;;AACAF,6BAAOC,QAAP,CAAgBkB,MAAM,CAACG,KAAvB;;AAEAtB,6BAAOe,WAAP,CAAmBI,MAAM,CAACG,KAAP,CAAaC,SAAhC,EAA2C;AAC1ChB,kBAAAA,SAAS,EAAE,WAD+B;AAE1CT,kBAAAA,cAAc,EAAE,OAF0B;AAG1CW,kBAAAA,OAAO,EAAPA;AAH0C,iBAA3C;;AA9BD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;wIAqCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEO,KAAKd,mBAAL,CAAyB,QAAzB,CAFP;;AAAA;AAIC,qBAAK,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC,EAAvC,CAAL;AAJD;AAAA,uBAMO,KAAK2B,YAAL,EANP;;AAAA;AAQKC,gBAAAA,cARL,GAQsB,KAAKC,EAAL,CAAQD,cAAR,EARtB;;AAUCzB,6BAAO2B,OAAP,CAAeF,cAAc,CAACG,OAA9B,EAAuC,QAAvC;;AACA5B,6BAAOe,WAAP,CAAmBU,cAAc,CAACI,OAAf,CAAuBC,KAA1C,EAAiD,WAAjD;;AAXD;AAAA,uBAaO,KAAKJ,EAAL,CAAQK,SAAR,CAAkBC,uCAAlB,CAbP;;AAAA;AAAA;AAAA,uBAeO,KAAKR,YAAL,EAfP;;AAAA;AAiBCC,gBAAAA,cAAc,GAAG,KAAKC,EAAL,CAAQD,cAAR,EAAjB;;AAEAzB,6BAAOe,WAAP,CAAmBU,cAAc,CAACI,OAAf,CAAuBC,KAA1C,EAAiD,OAAjD;;AAEA,qBAAKJ,EAAL,CAAQO,KAAR;;AArBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;iIAwBA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAGQ,KAAKC,+DAAL,CACL;AACCC,kBAAAA,QAAQ,EAAE;AADX,iBADK,CAHR;;AAAA;AAAA;AAESC,gBAAAA,QAFT,yBAESA,QAFT;;AASCpC,6BAAOe,WAAP,CACCqB,QADD,EAEC,gEAFD;;AATD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;iIAeA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAGQ,KAAKF,+DAAL,CACL;AACCG,kBAAAA,iBAAiB,EAAE,uDAAgC;AAClD9B,oBAAAA,SAAS,EAAE,cADuC;AAElD+B,oBAAAA,YAAY,EAAEC,mCAFoC;AAGlDC,oBAAAA,aAAa,EAAE;AACdC,sBAAAA,EAAE,EAAE,uBADU;AAEdC,sBAAAA,MAAM,EAAE;AACPC,wBAAAA,YAAY,EAAE;AACbC,0BAAAA,IAAI,EAAE;AADO;AADP;AAFM;AAHmC,mBAAhC;AADpB,iBADK,CAHR;;AAAA;AAAA;AAESR,gBAAAA,QAFT,0BAESA,QAFT;AAEmBS,gBAAAA,MAFnB,0BAEmBA,MAFnB;;AAoBC7C,6BAAOe,WAAP,CACCqB,QADD,EAEC,qDAFD;;AAKApC,6BAAOe,WAAP,CACCqB,QADD,sCAE8BS,MAAM,CAACC,IAFrC,4BAE2D,KAAKC,eAFhE;;AAzBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;6JA+BA;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAGQ,KAAKb,+DAAL,CACL;AACCG,kBAAAA,iBAAiB,EAAE,uDAAgC;AAClD9B,oBAAAA,SAAS,EAAE,cADuC;AAElD+B,oBAAAA,YAAY,EAAE;AACbG,sBAAAA,EAAE,EAAE,sBADS;AAEbC,sBAAAA,MAAM,EAAE;AACPM,wBAAAA,cAAc,EAAE;AACfJ,0BAAAA,IAAI,EAAE,IADS;AAEfK,0BAAAA,UAAU,EAAE;AAFG;AADT;AAFK,qBAFoC;AAWlDT,oBAAAA,aAAa,EAAE;AACdC,sBAAAA,EAAE,EAAE,uBADU;AAEdC,sBAAAA,MAAM,EAAE;AACPC,wBAAAA,YAAY,EAAE;AACbC,0BAAAA,IAAI,EAAE;AADO;AADP;AAFM;AAXmC,mBAAhC,CADpB;AAqBCM,kBAAAA,qBAAqB,EAAE,yBAAY;AAClCT,oBAAAA,EAAE,EAAE,2BAD8B;AAElCC,oBAAAA,MAAM,EAAE;AACPC,sBAAAA,YAAY,EAAE;AACbC,wBAAAA,IAAI,EAAE;AADO;AADP;AAF0B,mBAAZ;AArBxB,iBADK,CAHR;;AAAA;AAAA;AAESO,gBAAAA,YAFT,0BAESA,YAFT;AAEuBN,gBAAAA,MAFvB,0BAEuBA,MAFvB;AAE+BO,gBAAAA,aAF/B,0BAE+BA,aAF/B;AAE8CC,gBAAAA,GAF9C,0BAE8CA,GAF9C;AAAA;AAAA,uBAoC6B,KAAKC,YAAL,CAAkB;AAC7CC,kBAAAA,wBAAwB,EAAE;AADmB,iBAAlB,CApC7B;;AAAA;AAoCOC,gBAAAA,aApCP;AAAA;AAAA,uBAwCOA,aAAa,CAACC,UAAd,EAxCP;;AAAA;AAAA;AAAA,uBA0CoB,KAAK7D,MAAL,CAAY,OAAZ,EAAqB,MAArB,EAA6BC,OAA7B,CAAqC;AAAE6D,kBAAAA,KAAK,EAAE;AAAT,iBAArC,CA1CpB;;AAAA;AA0COC,gBAAAA,IA1CP;;AA4CC3D,6BAAOU,OAAP,CAAeiD,IAAI,CAACzD,MAApB,EA5CD,CA8CC;;;AA9CD;AAAA,uBA+CO,KAAK0D,IAAL,CAAU,KAAV,CA/CP;;AAAA;AAAA;AAAA,uBAiDuB,KAAKN,YAAL,CAAkB;AACvCO,kBAAAA,OAAO,EAAEhB,MAAM,CAACJ,EADuB;AAEvCqB,kBAAAA,MAAM,EAAEjB,MAAM,CAACiB;AAFwB,iBAAlB,CAjDvB;;AAAA;AAiDOC,gBAAAA,MAjDP;AAsDOxD,gBAAAA,SAtDP,aAsDsBsC,MAAM,CAACC,IAtD7B,4BAsDmD,KAAKC,eAtDxD;AAwDCgB,gBAAAA,MAAM,CAACC,aAAP,CAAqB;AACpBC,kBAAAA,eAAe,uCACb1D,SADa,EAEb6C,aAAa,CAACa,eAAd,yBACkB,KAAKlB,eADvB,EAFa;AADK,iBAArB;;AAxDD;AAAA;AAAA,uBAoEQ,KAAKa,IAAL,CAAU,IAAV,CApER;;AAAA;AAAA;AAAA,uBAsEkBG,MAAM,CAACG,IAAP,CAAY3D,SAAZ,EAAuB;AACtC4D,kBAAAA,MAAM,EAAE;AACPnB,oBAAAA,cAAc,EAAEK,GAAG,CAACZ;AADb,mBAD8B;AAItC2B,kBAAAA,OAAO,EAAE;AACRzB,oBAAAA,YAAY,EAAE;AADN;AAJ6B,iBAAvB,CAtElB;;AAAA;AAsEE5C,gBAAAA,OAtEF;;AAAA;AAAA,oBA8EUA,OAAO,CAACsE,cAAR,GAAyB,CA9EnC;AAAA;AAAA;AAAA;;AAAA;AAgFCrE,6BAAO2B,OAAP,CAAe5B,OAAO,CAACsE,cAAvB,EAAuC,CAAvC;;AACArE,6BAAO2B,OAAP,CAAe5B,OAAO,CAACuE,WAAvB,EAAoC,CAApC;;AACAtE,6BAAO2B,OAAP,CAAe5B,OAAO,CAACwE,cAAvB,EAAuC,CAAvC;;AAEA,8BAAAZ,IAAI,CAACa,IAAL,gFAAWC,OAAX,mFAA0B,UAACtE,GAAD,EAAgB;AACzCH,+BAAO0E,IAAP,CAAYvE,GAAG,CAACwE,KAAhB;AACA,iBAFD;AApFD;AAAA,sCAwFOhB,IAAI,CAACa,IAxFZ,gDAwFO,YAAWI,IAAX,EAxFP;;AAAA;AA0FOC,gBAAAA,KA1FP,GA0Fe7E,aAAO8E,SAAP,CAAiB;AAAA,yBAC9BC,oCAAkBC,uBAAlB,CAA0CjF,OAA1C,CAD8B;AAAA,iBAAjB,CA1Ff;;AA8FCkF,kDAAgB5E,WAAhB,CAA4BwE,KAA5B,EAAmC,0BAAnC;;AAEMK,gBAAAA,YAhGP,GAgGsBnF,OAAO,CAACoF,SAAR,CAAkB,CAAlB,EAAqBD,YAhG3C;;AAiGClF,6BAAO2B,OAAP,CACCuD,YADD,kBAEU/B,YAAY,CAACV,EAFvB,cAE6BU,YAAY,CAACL,IAF1C;;AAjGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;2JAuGA,kBACCsC,cADD;AAAA;;AAAA;AAAA;AAAA;AAAA;AAGOrC,gBAAAA,eAHP,GAGyB,KAAKA,eAH9B;AAKOK,gBAAAA,aALP,GAKuB;AACrBa,kBAAAA,eAAe,+DACIlB,eADJ,GACwBqC,cADxB;AADM,iBALvB;AAAA;AAAA,uBAYQ,KAAKC,iDAAL,EAZR;;AAAA;AAAA;AAWSC,gBAAAA,YAXT,yBAWSA,YAXT;AAWuBzC,gBAAAA,MAXvB,yBAWuBA,MAXvB;AAW+BM,gBAAAA,YAX/B,yBAW+BA,YAX/B;AAW6C3C,gBAAAA,GAX7C,yBAW6CA,GAX7C;AAWkD6C,gBAAAA,GAXlD,yBAWkDA,GAXlD;AAAA;AAAA,uBAcOiC,YAAY,CAACC,qBAAb,CAAmC1C,MAAnC,EAA2CO,aAA3C,CAdP;;AAAA;AAgBC,qBAAKpC,OAAL,CAAa,YAAb,EAA2BwE,GAA3B,CAA+B;AAC9B/C,kBAAAA,EAAE,EAAEI,MAAM,CAACJ,EADmB;AAE9BgD,kBAAAA,SAAS,EAAE5C,MAAM,CAACC;AAFY,iBAA/B;AAhBD;AAAA,uBAqBuB,KAAKlD,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC;AAC5DC,kBAAAA,cAAc,EAAE+C,MAAM,CAACC,IADqC;AAE5DvC,kBAAAA,SAAS,gBAFmD;AAG5DE,kBAAAA,OAAO,EAAEsC;AAHmD,iBAAvC,CArBvB;;AAAA;AAqBOhD,gBAAAA,OArBP;;AA2BCC,6BAAOU,OAAP,CAAeX,OAAO,CAACG,MAAvB;;AAEMwF,gBAAAA,QA7BP,GA6BkB9E,kBAASC,gCAAT,wBACAkC,eADA,mBAEhBhD,OAAO,CAACe,KAFQ,CA7BlB;AAAA;AAAA,uBAkCO,KAAKE,OAAL,CAAa,aAAb,EAA4BC,KAA5B,CAAkCyE,QAAlC,CAlCP;;AAAA;AAoCOtD,gBAAAA,QApCP,GAoCkBuD,2BAASC,QAAT,CAAkBF,QAAlB,CApClB;AAAA,kDAsCQ;AACNtD,kBAAAA,QAAQ,EAARA,QADM;AAENS,kBAAAA,MAAM,EAANA,MAFM;AAGNgD,kBAAAA,YAAY,EAAEH,QAHR;AAINlF,kBAAAA,GAAG,EAAHA,GAJM;AAKN4C,kBAAAA,aAAa,EAAbA,aALM;AAMNC,kBAAAA,GAAG,EAAHA,GANM;AAONF,kBAAAA,YAAY,EAAZA;AAPM,iBAtCR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EArPkD2C,8B,gEAEjDC,8BAAYC,eAAZ,GAA8BC,U","sourcesContent":["import { EventSignature } from '@sprucelabs/mercury-types'\nimport { buildSchema } from '@sprucelabs/schema'\nimport {\n\tbuildEmitTargetAndPayloadSchema,\n\teventAssertUtil,\n\teventResponseUtil,\n\teventTargetSchema,\n} from '@sprucelabs/spruce-event-utils'\nimport {\n\tdiskUtil,\n\tMERCURY_API_NAMESPACE,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssertUtil } from '@sprucelabs/test-utils'\nimport AbstractEventTest from '../../../tests/AbstractEventTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class CreatingAListenerTest extends AbstractEventTest {\n\tprivate static readonly expectedVersion =\n\t\tversionUtil.generateVersion().constValue\n\n\t@test()\n\tprotected static async throwsWithBadNamespace() {\n\t\tawait this.installEventFeature('events')\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'taco-bell',\n\t\t})\n\n\t\tassert.isTruthy(results.errors)\n\t\tconst err = results.errors[0]\n\n\t\terrorAssertUtil.assertError(err, 'INVALID_PARAMETERS', {\n\t\t\tparameters: ['eventNamespace'],\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async throwsWithBadEventName() {\n\t\tawait this.installEventFeature('events')\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'mercury',\n\t\t\teventName: 'bad-time',\n\t\t})\n\n\t\tassert.isTruthy(results.errors)\n\t\tconst err = results.errors[0]\n\n\t\terrorAssertUtil.assertError(err, 'INVALID_PARAMETERS', {\n\t\t\tparameters: ['eventName'],\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async createsValidListener() {\n\t\tconst cli = await this.installEventFeature('events')\n\n\t\tconst version = 'v2020_01_01'\n\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'skill',\n\t\t\teventName: 'will-boot',\n\t\t\tversion,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`will-boot.${version}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(match, version)\n\n\t\tawait this.Service('typeChecker').check(match)\n\n\t\tconst health = await cli.checkHealth()\n\n\t\tassert.isTruthy(health.skill)\n\n\t\tassert.isUndefined(health.skill.errors)\n\t\tassert.isTruthy(health.event)\n\n\t\tassert.doesInclude(health.event.listeners, {\n\t\t\teventName: 'will-boot',\n\t\t\teventNamespace: 'skill',\n\t\t\tversion,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async creatingANewListenerAsksWhichEventToListenTo() {\n\t\tawait this.installEventFeature('events')\n\n\t\tvoid this.Action('event', 'listen').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tlet lastInvocation = this.ui.lastInvocation()\n\n\t\tassert.isEqual(lastInvocation.command, 'prompt')\n\t\tassert.doesInclude(lastInvocation.options.label, 'namespace')\n\n\t\tawait this.ui.sendInput(MERCURY_API_NAMESPACE)\n\n\t\tawait this.waitForInput()\n\n\t\tlastInvocation = this.ui.lastInvocation()\n\n\t\tassert.doesInclude(lastInvocation.options.label, 'event')\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async generatesTypedListenerWithoutPayloads() {\n\t\tconst { contents } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\tisGlobal: true,\n\t\t\t\t}\n\t\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'export default async (event: SpruceEvent): SpruceEventResponse'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatesTypedListenerWithEmitPayload() {\n\t\tconst { contents, skill2 } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\teventName: 'my-new-event',\n\t\t\t\t\t\ttargetSchema: eventTargetSchema,\n\t\t\t\t\t\tpayloadSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitPayload',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t}\n\t\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'event: SpruceEvent<SkillEventContract, EmitPayload>'\n\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t`fullyQualifiedEventName: '${skill2.slug}.my-new-event::${this.expectedVersion}'`\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async emittingEventTriggersListenerAndCrashesWithListenerNotImplemented() {\n\t\tconst { currentSkill, skill2, eventContract, org } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\teventName: 'my-new-event',\n\t\t\t\t\t\ttargetSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitTarget',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\torganizationId: {\n\t\t\t\t\t\t\t\t\ttype: 'id',\n\t\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tpayloadSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitPayload',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\t\t\tid: 'myNewEventResponsePayload',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t}\n\t\t\t)\n\n\t\tconst currentClient = await this.connectToApi({\n\t\t\tshouldAuthAsCurrentSkill: true,\n\t\t})\n\n\t\tawait currentClient.disconnect()\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tassert.isFalsy(boot.errors)\n\n\t\t//give the skill time to boot\n\t\tawait this.wait(20000)\n\n\t\tconst client = (await this.connectToApi({\n\t\t\tskillId: skill2.id,\n\t\t\tapiKey: skill2.apiKey,\n\t\t})) as any\n\n\t\tconst eventName = `${skill2.slug}.my-new-event::${this.expectedVersion}`\n\n\t\tclient.mixinContract({\n\t\t\teventSignatures: {\n\t\t\t\t[eventName]:\n\t\t\t\t\teventContract.eventSignatures[\n\t\t\t\t\t\t`my-new-event::${this.expectedVersion}`\n\t\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tlet results: any\n\n\t\tdo {\n\t\t\tawait this.wait(5000)\n\n\t\t\tresults = await client.emit(eventName, {\n\t\t\t\ttarget: {\n\t\t\t\t\torganizationId: org.id,\n\t\t\t\t},\n\t\t\t\tpayload: {\n\t\t\t\t\tbooleanField: true,\n\t\t\t\t},\n\t\t\t})\n\t\t} while (results.totalContracts < 1)\n\n\t\tassert.isEqual(results.totalContracts, 1)\n\t\tassert.isEqual(results.totalErrors, 1)\n\t\tassert.isEqual(results.totalResponses, 1)\n\n\t\tboot.meta?.promise?.catch((err: Error) => {\n\t\t\tassert.fail(err.stack)\n\t\t})\n\n\t\tawait boot.meta?.kill()\n\n\t\tconst error = assert.doesThrow(() =>\n\t\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t\t)\n\n\t\teventAssertUtil.assertError(error, 'LISTENER_NOT_IMPLEMENTED')\n\n\t\tconst responderRef = results.responses[0].responderRef\n\t\tassert.isEqual(\n\t\t\tresponderRef,\n\t\t\t`skill:${currentSkill.id}:${currentSkill.slug}`\n\t\t)\n\t}\n\n\tprivate static async setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\teventSignature: EventSignature\n\t) {\n\t\tconst expectedVersion = this.expectedVersion\n\n\t\tconst eventContract = {\n\t\t\teventSignatures: {\n\t\t\t\t[`my-new-event::${expectedVersion}`]: eventSignature,\n\t\t\t},\n\t\t} as const\n\n\t\tconst { skillFixture, skill2, currentSkill, cli, org } =\n\t\t\tawait this.seedDummySkillRegisterCurrentSkillAndInstallToOrg()\n\n\t\tawait skillFixture.registerEventContract(skill2, eventContract)\n\n\t\tthis.Service('dependency').add({\n\t\t\tid: skill2.id,\n\t\t\tnamespace: skill2.slug,\n\t\t})\n\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: skill2.slug,\n\t\t\teventName: `my-new-event`,\n\t\t\tversion: expectedVersion,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst listener = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`my-new-event.${expectedVersion}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(listener)\n\n\t\tconst contents = diskUtil.readFile(listener)\n\n\t\treturn {\n\t\t\tcontents,\n\t\t\tskill2,\n\t\t\tlistenerPath: listener,\n\t\t\tcli,\n\t\t\teventContract,\n\t\t\torg,\n\t\t\tcurrentSkill,\n\t\t}\n\t}\n}\n"],"file":"CreatingAListener.test.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/__tests__/behavioral/events/CreatingAListener.test.ts"],"names":["CreatingAListenerTest","installEventFeature","Action","execute","eventNamespace","results","assert","isTruthy","errors","err","errorAssertUtil","assertError","parameters","eventName","cli","version","isFalsy","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","Service","check","checkHealth","health","skill","isUndefined","event","listeners","waitForInput","lastInvocation","ui","getLastInvocation","isEqual","command","options","label","sendInput","MERCURY_API_NAMESPACE","reset","setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener","isGlobal","contents","emitPayloadSchema","targetSchema","eventTargetSchema","payloadSchema","id","fields","booleanField","type","skill2","slug","expectedVersion","organizationId","isRequired","responsePayloadSchema","currentSkill","eventContract","org","connectToApi","shouldAuthAsCurrentSkill","currentClient","disconnect","local","boot","wait","skillId","apiKey","client","mixinContract","eventSignatures","emit","target","payload","totalContracts","totalErrors","totalResponses","meta","promise","fail","stack","kill","error","doesThrow","eventResponseUtil","getFirstResponseOrThrow","eventAssertUtil","responderRef","responses","eventSignature","seedDummySkillRegisterCurrentSkillAndInstallToOrg","skillFixture","registerEventContract","add","namespace","listener","diskUtil","readFile","listenerPath","AbstractEventTest","versionUtil","generateVersion","constValue"],"mappings":"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","sourcesContent":["import { EventSignature } from '@sprucelabs/mercury-types'\nimport { buildSchema } from '@sprucelabs/schema'\nimport {\n\tbuildEmitTargetAndPayloadSchema,\n\teventAssertUtil,\n\teventResponseUtil,\n\teventTargetSchema,\n} from '@sprucelabs/spruce-event-utils'\nimport {\n\tdiskUtil,\n\tMERCURY_API_NAMESPACE,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssertUtil } from '@sprucelabs/test-utils'\nimport AbstractEventTest from '../../../tests/AbstractEventTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class CreatingAListenerTest extends AbstractEventTest {\n\tprivate static readonly expectedVersion =\n\t\tversionUtil.generateVersion().constValue\n\n\t@test()\n\tprotected static async throwsWithBadNamespace() {\n\t\tawait this.installEventFeature('events')\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'taco-bell',\n\t\t})\n\n\t\tassert.isTruthy(results.errors)\n\t\tconst err = results.errors[0]\n\n\t\terrorAssertUtil.assertError(err, 'INVALID_PARAMETERS', {\n\t\t\tparameters: ['eventNamespace'],\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async throwsWithBadEventName() {\n\t\tawait this.installEventFeature('events')\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'mercury',\n\t\t\teventName: 'bad-time',\n\t\t})\n\n\t\tassert.isTruthy(results.errors)\n\t\tconst err = results.errors[0]\n\n\t\terrorAssertUtil.assertError(err, 'INVALID_PARAMETERS', {\n\t\t\tparameters: ['eventName'],\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async createsValidListener() {\n\t\tconst cli = await this.installEventFeature('events')\n\n\t\tconst version = 'v2020_01_01'\n\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: 'skill',\n\t\t\teventName: 'will-boot',\n\t\t\tversion,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`will-boot.${version}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(match, version)\n\n\t\tawait this.Service('typeChecker').check(match)\n\n\t\tconst health = await cli.checkHealth()\n\n\t\tassert.isTruthy(health.skill)\n\n\t\tassert.isUndefined(health.skill.errors)\n\t\tassert.isTruthy(health.event)\n\n\t\tassert.doesInclude(health.event.listeners, {\n\t\t\teventName: 'will-boot',\n\t\t\teventNamespace: 'skill',\n\t\t\tversion,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async creatingANewListenerAsksWhichEventToListenTo() {\n\t\tawait this.installEventFeature('events')\n\n\t\tvoid this.Action('event', 'listen').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tlet lastInvocation = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(lastInvocation.command, 'prompt')\n\t\tassert.doesInclude(lastInvocation.options.label, 'namespace')\n\n\t\tawait this.ui.sendInput(MERCURY_API_NAMESPACE)\n\n\t\tawait this.waitForInput()\n\n\t\tlastInvocation = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(lastInvocation.options.label, 'event')\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async generatesTypedListenerWithoutPayloads() {\n\t\tconst { contents } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\tisGlobal: true,\n\t\t\t\t}\n\t\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'export default async (event: SpruceEvent): SpruceEventResponse'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatesTypedListenerWithEmitPayload() {\n\t\tconst { contents, skill2 } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\teventName: 'my-new-event',\n\t\t\t\t\t\ttargetSchema: eventTargetSchema,\n\t\t\t\t\t\tpayloadSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitPayload',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t}\n\t\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'event: SpruceEvent<SkillEventContract, EmitPayload>'\n\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t`fullyQualifiedEventName: '${skill2.slug}.my-new-event::${this.expectedVersion}'`\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async emittingEventTriggersListenerAndCrashesWithListenerNotImplemented() {\n\t\tconst { currentSkill, skill2, eventContract, org } =\n\t\t\tawait this.setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\t\t\t{\n\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\teventName: 'my-new-event',\n\t\t\t\t\t\ttargetSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitTarget',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\torganizationId: {\n\t\t\t\t\t\t\t\t\ttype: 'id',\n\t\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tpayloadSchema: {\n\t\t\t\t\t\t\tid: 'myNewEventEmitPayload',\n\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\t\t\tid: 'myNewEventResponsePayload',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tbooleanField: {\n\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t}\n\t\t\t)\n\n\t\tconst currentClient = await this.connectToApi({\n\t\t\tshouldAuthAsCurrentSkill: true,\n\t\t})\n\n\t\tawait currentClient.disconnect()\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tassert.isFalsy(boot.errors)\n\n\t\t//give the skill time to boot\n\t\tawait this.wait(20000)\n\n\t\tconst client = (await this.connectToApi({\n\t\t\tskillId: skill2.id,\n\t\t\tapiKey: skill2.apiKey,\n\t\t})) as any\n\n\t\tconst eventName = `${skill2.slug}.my-new-event::${this.expectedVersion}`\n\n\t\tclient.mixinContract({\n\t\t\teventSignatures: {\n\t\t\t\t[eventName]:\n\t\t\t\t\teventContract.eventSignatures[\n\t\t\t\t\t\t`my-new-event::${this.expectedVersion}`\n\t\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tlet results: any\n\n\t\tdo {\n\t\t\tawait this.wait(5000)\n\n\t\t\tresults = await client.emit(eventName, {\n\t\t\t\ttarget: {\n\t\t\t\t\torganizationId: org.id,\n\t\t\t\t},\n\t\t\t\tpayload: {\n\t\t\t\t\tbooleanField: true,\n\t\t\t\t},\n\t\t\t})\n\t\t} while (results.totalContracts < 1)\n\n\t\tassert.isEqual(results.totalContracts, 1)\n\t\tassert.isEqual(results.totalErrors, 1)\n\t\tassert.isEqual(results.totalResponses, 1)\n\n\t\tboot.meta?.promise?.catch((err: Error) => {\n\t\t\tassert.fail(err.stack)\n\t\t})\n\n\t\tawait boot.meta?.kill()\n\n\t\tconst error = assert.doesThrow(() =>\n\t\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t\t)\n\n\t\teventAssertUtil.assertError(error, 'LISTENER_NOT_IMPLEMENTED')\n\n\t\tconst responderRef = results.responses[0].responderRef\n\t\tassert.isEqual(\n\t\t\tresponderRef,\n\t\t\t`skill:${currentSkill.id}:${currentSkill.slug}`\n\t\t)\n\t}\n\n\tprivate static async setupSkillsInstallAtOrgRegisterEventContractAndGenerateListener(\n\t\teventSignature: EventSignature\n\t) {\n\t\tconst expectedVersion = this.expectedVersion\n\n\t\tconst eventContract = {\n\t\t\teventSignatures: {\n\t\t\t\t[`my-new-event::${expectedVersion}`]: eventSignature,\n\t\t\t},\n\t\t} as const\n\n\t\tconst { skillFixture, skill2, currentSkill, cli, org } =\n\t\t\tawait this.seedDummySkillRegisterCurrentSkillAndInstallToOrg()\n\n\t\tawait skillFixture.registerEventContract(skill2, eventContract)\n\n\t\tthis.Service('dependency').add({\n\t\t\tid: skill2.id,\n\t\t\tnamespace: skill2.slug,\n\t\t})\n\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventNamespace: skill2.slug,\n\t\t\teventName: `my-new-event`,\n\t\t\tversion: expectedVersion,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst listener = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`my-new-event.${expectedVersion}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(listener)\n\n\t\tconst contents = diskUtil.readFile(listener)\n\n\t\treturn {\n\t\t\tcontents,\n\t\t\tskill2,\n\t\t\tlistenerPath: listener,\n\t\t\tcli,\n\t\t\teventContract,\n\t\t\torg,\n\t\t\tcurrentSkill,\n\t\t}\n\t}\n}\n"],"file":"CreatingAListener.test.js"}
|
|
@@ -4,14 +4,15 @@ export default class CreatingAnEventTest extends AbstractEventTest {
|
|
|
4
4
|
protected static hasCreateAction(): Promise<void>;
|
|
5
5
|
protected static cantCreateEventWithoutBeingRegistered(): Promise<void>;
|
|
6
6
|
protected static createsPayloadBuildersAndSchemas(): Promise<void>;
|
|
7
|
-
protected static
|
|
7
|
+
protected static createsEventWithPayloadsPermissionsAndOptions(): Promise<void>;
|
|
8
8
|
protected static createdEventsAreTypedCorrectly(): Promise<void>;
|
|
9
9
|
protected static canReferenceSchemaFromOtherModule(): Promise<void>;
|
|
10
|
+
protected static asksForVersionIfPreviousVersionExistsOnDifferentDay(): Promise<void>;
|
|
10
11
|
private static createEvent;
|
|
12
|
+
private static registerCurrentSkill;
|
|
11
13
|
private static assertCreatesOptionsFile;
|
|
12
14
|
private static assertExpectedTargetAndPayload;
|
|
13
15
|
protected static createsExpectedPermissionContract(results: any): Promise<void>;
|
|
14
|
-
protected static assertCantCreateWithoutBeingRegistered(): Promise<void>;
|
|
15
16
|
private static assertReturnsEventFromHealthCheck;
|
|
16
17
|
private static assertExpectedPayloadSchemas;
|
|
17
18
|
}
|