@sprucelabs/spruce-cli 14.21.9 → 14.21.13
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 +32 -0
- package/build/.spruce/schemas/fields/fields.types.js +8 -8
- package/build/GlobalEmitter.js +4 -2
- package/build/GlobalEmitter.js.map +1 -1
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +28 -17
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/implementation/GlobalEmitter.d.ts +4 -0
- package/build/__tests__/implementation/GlobalEmitter.js +77 -0
- package/build/__tests__/implementation/GlobalEmitter.js.map +1 -0
- package/build/__tests__/testDirsAndFiles/mercury-types-package.json +2 -2
- package/build/cli.js +1 -1
- package/build/constants.js +1 -1
- package/build/errors/SpruceError.js +10 -3
- package/build/errors/SpruceError.js.map +1 -1
- package/build/features/cache/constants.js +1 -1
- package/build/features/event/writers/EventWriter.js +1 -1
- package/build/features/onboard/scripts/onboarding.first.script.js +1 -1
- package/build/features/onboard/scripts/onboarding.short.script.js +2 -2
- package/build/features/skill/actions/DashboardAction.js +1 -1
- package/build/features/skill/actions/RegisterAction.js +1 -1
- package/build/features/test/TestReporter.js +1 -1
- package/build/features/test/TestReporter.js.map +1 -1
- package/build/features/test/actions/TestAction.js +1 -1
- package/build/features/vscode/actions/SetupAction.js +1 -0
- package/build/features/vscode/actions/SetupAction.js.map +1 -1
- package/build/services/LintService.js +23 -23
- package/build/services/LintService.js.map +1 -1
- package/build/types/graphicsInterface.types.js +6 -6
- package/build/widgets/types/factory.types.js +1 -1
- package/package.json +39 -38
- package/src/GlobalEmitter.ts +3 -1
- package/src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts +1 -1
- package/src/__tests__/behavioral/WatchingSkillViews.test.ts +1 -0
- package/src/__tests__/behavioral/events/CreatingAListener.test.ts +6 -0
- package/src/__tests__/implementation/GlobalEmitter.ts +12 -0
- package/src/__tests__/testDirsAndFiles/mercury-types-package.json +2 -2
- package/src/errors/SpruceError.ts +7 -0
- package/src/features/test/TestReporter.ts +1 -1
- package/src/features/vscode/actions/SetupAction.ts +1 -0
- package/src/services/LintService.ts +6 -8
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,38 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [14.21.13](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.21.12...v14.21.13) (2021-10-13)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [14.21.12](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.21.11...v14.21.12) (2021-10-09)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [14.21.11](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.21.10...v14.21.11) (2021-10-08)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## [14.21.10](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.21.9...v14.21.10) (2021-10-08)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
6
38
|
## [14.21.9](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v14.21.8...v14.21.9) (2021-10-04)
|
|
7
39
|
|
|
8
40
|
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
@@ -3,22 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "FieldDefinitions", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _schema.FieldDefinitions;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
6
|
Object.defineProperty(exports, "FieldDefinitionMap", {
|
|
13
7
|
enumerable: true,
|
|
14
8
|
get: function get() {
|
|
15
9
|
return _schema.FieldDefinitionMap;
|
|
16
10
|
}
|
|
17
11
|
});
|
|
18
|
-
Object.defineProperty(exports, "
|
|
12
|
+
Object.defineProperty(exports, "FieldDefinitions", {
|
|
19
13
|
enumerable: true,
|
|
20
14
|
get: function get() {
|
|
21
|
-
return _schema.
|
|
15
|
+
return _schema.FieldDefinitions;
|
|
22
16
|
}
|
|
23
17
|
});
|
|
24
18
|
Object.defineProperty(exports, "FieldMap", {
|
|
@@ -27,6 +21,12 @@ Object.defineProperty(exports, "FieldMap", {
|
|
|
27
21
|
return _schema.FieldMap;
|
|
28
22
|
}
|
|
29
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "FieldValueTypeGeneratorMap", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _schema.FieldValueTypeGeneratorMap;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
30
|
|
|
31
31
|
var _schema = require("@sprucelabs/schema");
|
|
32
32
|
//# sourceMappingURL=fields.types.js.map
|
package/build/GlobalEmitter.js
CHANGED
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports["default"] =
|
|
8
|
+
exports.globalContract = exports["default"] = void 0;
|
|
9
9
|
|
|
10
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
|
|
@@ -198,7 +198,9 @@ var CliGlobalEmitter = /*#__PURE__*/function (_AbstractEventEmitter) {
|
|
|
198
198
|
(0, _createClass2["default"])(CliGlobalEmitter, null, [{
|
|
199
199
|
key: "Emitter",
|
|
200
200
|
value: function Emitter() {
|
|
201
|
-
return new CliGlobalEmitter(globalContract
|
|
201
|
+
return new CliGlobalEmitter(globalContract, {
|
|
202
|
+
shouldEmitSequentally: true
|
|
203
|
+
});
|
|
202
204
|
}
|
|
203
205
|
}]);
|
|
204
206
|
return CliGlobalEmitter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/GlobalEmitter.ts"],"names":["globalContract","eventSignatures","emitPayloadSchema","watcherDidDetectChangesEmitPayloadSchema","id","fields","schemas","type","isArray","options","valueType","responsePayloadSchema","abstractClasses","isRequired","schema","name","label","featureCode","importsWhenLocal","actionCode","actionResponseSchema","results","reporter","filesToSkip","CliGlobalEmitter","AbstractEventEmitter"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../src/GlobalEmitter.ts"],"names":["globalContract","eventSignatures","emitPayloadSchema","watcherDidDetectChangesEmitPayloadSchema","id","fields","schemas","type","isArray","options","valueType","responsePayloadSchema","abstractClasses","isRequired","schema","name","label","featureCode","importsWhenLocal","actionCode","actionResponseSchema","results","reporter","filesToSkip","CliGlobalEmitter","shouldEmitSequentally","AbstractEventEmitter"],"mappings":"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","sourcesContent":["import { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter'\nimport {\n\tbuildEventContract,\n\tMercuryEventEmitter,\n} from '@sprucelabs/mercury-types'\nimport { buildSchema } from '@sprucelabs/schema'\nimport watcherDidDetectChangesEmitPayloadSchema from '#spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema'\nimport { actionResponseSchema } from './features/features.types'\n\nexport const globalContract = buildEventContract({\n\teventSignatures: {\n\t\t'watcher.did-detect-change': {\n\t\t\temitPayloadSchema: watcherDidDetectChangesEmitPayloadSchema,\n\t\t},\n\t\t'schema.did-fetch-schemas': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'didFetchSchemasEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\tschemas: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'Schema',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\tid: 'didFetchSchemasResponsePayload',\n\t\t\t\tfields: {\n\t\t\t\t\tschemas: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'Schema',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'skill.register-dashboard-widgets': {},\n\n\t\t'test.register-abstract-test-classes': {\n\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\tid: 'registerAbstractTestClassResponsePayload',\n\t\t\t\tfields: {\n\t\t\t\t\tabstractClasses: {\n\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tschema: buildSchema({\n\t\t\t\t\t\t\t\tid: 'abstractClassRegistration',\n\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\tname: {\n\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tlabel: {\n\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\timport: {\n\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tfeatureCode: {\n\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t},\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\t\t},\n\t\t'feature.will-execute': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'willExecuteEmitPayload',\n\t\t\t\timportsWhenLocal: [\n\t\t\t\t\t'import { FeatureActionResponse } from #spruce/../features/features/features.types',\n\t\t\t\t],\n\t\t\t\tfields: {\n\t\t\t\t\tfeatureCode: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t\tactionCode: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t\toptions: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\tid: 'willExecuteResponsePayload',\n\t\t\t\tfields: {\n\t\t\t\t\t...actionResponseSchema.fields,\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'feature.did-execute': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'didExecuteEmitPayload',\n\t\t\t\timportsWhenLocal: [\n\t\t\t\t\t'import { FeatureActionResponse } from #spruce/../features/features/features.types',\n\t\t\t\t],\n\t\t\t\tfields: {\n\t\t\t\t\tfeatureCode: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t\tactionCode: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t},\n\t\t\t\t\tresults: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'FeatureActionResponse',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\tid: 'didExecuteResponsePayload',\n\t\t\t\tfields: {\n\t\t\t\t\t...actionResponseSchema.fields,\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'test.reporter-did-boot': {\n\t\t\temitPayloadSchema: buildSchema({\n\t\t\t\tid: 'testReporterDidBootEmitPayload',\n\t\t\t\tfields: {\n\t\t\t\t\treporter: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tvalueType: 'TestAction',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t\t'skill.will-write-directory-template': {\n\t\t\tresponsePayloadSchema: buildSchema({\n\t\t\t\tid: 'wilLWriteDirectoryTemplateResponsePayload',\n\t\t\t\tfields: {\n\t\t\t\t\tfilesToSkip: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t},\n\t},\n})\n\nexport type GlobalEventContract = typeof globalContract\nexport type GlobalEmitter = MercuryEventEmitter<GlobalEventContract>\n\nexport default class CliGlobalEmitter extends AbstractEventEmitter<GlobalEventContract> {\n\tpublic static Emitter() {\n\t\treturn new CliGlobalEmitter(globalContract, {\n\t\t\tshouldEmitSequentally: true,\n\t\t}) as GlobalEmitter\n\t}\n}\n"],"file":"GlobalEmitter.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts"],"names":["SettingLogTransportsInASkillTest","action","Action","assert","isFunction","execute","createTransport","results","isFalsy","errors","nameReadable","nameCamel","namesUtil","toCamel","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","resolvePath","isTrue","diskUtil","doesFileExist","isTruthy","errorAssertUtil","assertError","name","transportContents","createTransportWithContents","Service","build","boot","meta","kill","cwd","writeFile","AbstractSkillTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,gC,WAGnB,iB,UAMA,iB,UAMA,gBAAK,wBAAL,EAA+B,KAA/B,C,UACA,gBAAK,wBAAL,EAA+B,OAA/B,C,UAiBA,iB,UASA,iB;;;;;;;;;;;;;qHAvCD;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOC,gBAAAA,MAFP,GAEgB,KAAKC,MAAL,CAAY,KAAZ,EAAmB,iBAAnB,CAFhB;;AAGCC,6BAAOC,UAAP,CAAkBH,MAAM,CAACI,OAAzB;;AAHD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;gHAMA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEuB,KAAKC,eAAL,EAFvB;;AAAA;AAEOC,gBAAAA,OAFP;;AAGCJ,6BAAOK,OAAP,CAAeD,OAAO,CAACE,MAAvB;;AAHD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;gHAMA,kBAE4CC,YAF5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAGuB,KAAKJ,eAAL,CAAqBI,YAArB,CAHvB;;AAAA;AAGOH,gBAAAA,OAHP;AAIOI,gBAAAA,SAJP,GAImBC,4BAAUC,OAAV,CAAkBH,YAAlB,CAJnB;AAKOI,gBAAAA,KALP,GAKeC,kBAASC,gCAAT,WACVL,SADU,0BAEbJ,OAAO,CAACU,KAFK,CALf;;AAUCd,6BAAOe,WAAP,CACCJ,KADD,EAEC,KAAKK,WAAL,CAAiB,mBAAjB,YAAyCR,SAAzC,yBAFD;;AAKAR,6BAAOiB,MAAP,CAAcC,2BAASC,aAAT,CAAuBR,KAAvB,CAAd;;AAfD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;gIAkBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEuB,KAAKR,eAAL,CAAqB,OAArB,CAFvB;;AAAA;AAEOC,gBAAAA,OAFP;;AAGCJ,6BAAOoB,QAAP,CAAgBhB,OAAO,CAACE,MAAxB;;AACAe,2CAAgBC,WAAhB,CAA4BlB,OAAO,CAACE,MAAR,CAAe,CAAf,CAA5B,EAA+C,0BAA/C,EAA2E;AAC1EiB,kBAAAA,IAAI,EAAE;AADoE,iBAA3E;;AAJD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;iHASA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOC,gBAAAA,iBAFP;AAAA;AAAA,uBAsBO,KAAKC,2BAAL,CAAiCD,iBAAjC,EAAoD,MAApD,CAtBP;;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts"],"names":["SettingLogTransportsInASkillTest","action","Action","assert","isFunction","execute","createTransport","results","isFalsy","errors","nameReadable","nameCamel","namesUtil","toCamel","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","resolvePath","isTrue","diskUtil","doesFileExist","isTruthy","errorAssertUtil","assertError","name","transportContents","createTransportWithContents","Service","build","boot","meta","kill","cwd","writeFile","AbstractSkillTest"],"mappings":"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","sourcesContent":["import { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssertUtil } from '@sprucelabs/test-utils'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingLogTransportsInASkillTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'skills'\n\n\t@test()\n\tprotected static async hasCreateTransportCommand() {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tassert.isFunction(action.execute)\n\t}\n\n\t@test()\n\tprotected static async needsNameOfTransport() {\n\t\tconst results = await this.createTransport()\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\t@test('can create transport 1', 'Sms')\n\t@test('can create transport 2', 'Email')\n\tprotected static async createsTransportFile(nameReadable: string) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst nameCamel = namesUtil.toCamel(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tmatch,\n\t\t\tthis.resolvePath('src/logTransports', `${nameCamel}Transport.plugin.ts`)\n\t\t)\n\n\t\tassert.isTrue(diskUtil.doesFileExist(match))\n\t}\n\n\t@test()\n\tprotected static async cantCreateTransportThatAlreadyExists() {\n\t\tconst results = await this.createTransport('Slack')\n\t\tassert.isTruthy(results.errors)\n\t\terrorAssertUtil.assertError(results.errors[0], 'TRANSPORT_ALREADY_EXISTS', {\n\t\t\tname: 'Slack',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async logsWriteToTransports() {\n\t\tconst transportContents = `\n\t\timport { diskUtil, Level, LogTransport } from '@sprucelabs/spruce-skill-utils'\n\t\t\n\t\texport default function (): {\n\t\t\tlevels: Level[]\n\t\t\ttransport: LogTransport\n\t\t} | null {\n\t\t\treturn {\n\t\t\t\tlevels: ['ERROR', 'INFO', 'WARN'],\n\t\t\t\ttransport: (...messageParts: string[]) => {\n\t\t\t\t\tconst message = messageParts.join(' ')\n\t\t\t\t\tdiskUtil.writeFile(\n\t\t\t\t\t\tdiskUtil.resolvePath(__dirname, '..', '..', 'log.txt'),\n\t\t\t\t\t\tmessage\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t\t`\n\n\t\tawait this.createTransportWithContents(transportContents, 'File')\n\t\tawait this.Service('build').build()\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({})\n\n\t\tawait boot.meta?.kill()\n\n\t\tassert.isTrue(\n\t\t\tdiskUtil.doesFileExist(diskUtil.resolvePath(this.cwd, 'log.txt'))\n\t\t)\n\t}\n\n\tprivate static async createTransportWithContents(\n\t\ttransportContents: string,\n\t\tnameReadable: string\n\t) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${namesUtil.toCamel(nameReadable)}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, transportContents)\n\t}\n\n\tprivate static async createTransport(nameReadable = 'Slack') {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tconst results = await action.execute({\n\t\t\tnameReadable,\n\t\t\tnameCamel: namesUtil.toCamel(nameReadable),\n\t\t})\n\t\treturn results\n\t}\n}\n"],"file":"SettingLogTransportsInASkill.test.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/behavioral/WatchingSkillViews.test.ts"],"names":["WatchingSkillViewsTest","oldBootExecute","BootAction","prototype","execute","getFeatureInstaller","isInstalled","SettingsService","isMarkedAsInstalled","assert","isFunction","Action","wasHit","CommandService","setMockResponse","code","callback","watchAction","wait","isTrue","kill","hitCount","isEqual","emitFileChangeEvent","passedOptions","options","shouldReturnImmediately","actionPromise","didWait","waitPromise","Promise","resolve","setTimeout","isFalse","watchFeature","getFeature","wasStarted","wasStopped","startWatching","stopWatching","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","name","getViewFixture","createViewController","nameKebab","namePascal","Service","build","results","isFalsy","errors","pid","getPid","meta","bootPromise","assertProcessRunning","doesThrowAsync","reject","ps","lookup","err","length","emitter","getEmitter","emit","changes","schemaId","version","values","action","path","AbstractSkillTest"],"mappings":"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","sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport ps from 'ps-node'\nimport BootAction from '../../features/skill/actions/BootAction'\nimport WatchAction from '../../features/view/actions/WatchAction'\nimport CommandService from '../../services/CommandService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class WatchingSkillViewsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\tprotected static oldBootExecute: any\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\t\tthis.oldBootExecute = BootAction.prototype.execute\n\t}\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.getFeatureInstaller().isInstalled = async () => true\n\t\tSettingsService.prototype.isMarkedAsInstalled = () => true\n\t\tBootAction.prototype.execute = this.oldBootExecute\n\t}\n\n\t@test()\n\tprotected static async hasWatchSkillViewsEvent() {\n\t\tassert.isFunction(this.Action('view', 'watch').execute)\n\t}\n\n\t@test()\n\tprotected static async shouldCallBoot() {\n\t\tlet wasHit = false\n\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasHit = true\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute({})\n\t\tawait this.wait(10)\n\t\tassert.isTrue(wasHit)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async shouldCallBootAgainOnFileChange() {\n\t\tlet hitCount = 0\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\thitCount++\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tvoid watchAction.execute({})\n\n\t\tawait this.wait(10)\n\n\t\tassert.isEqual(hitCount, 1)\n\n\t\tawait this.emitFileChangeEvent()\n\n\t\tassert.isEqual(hitCount, 2)\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async changesDuringBootOfSkillKillSkill() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tlet passedOptions: any = null\n\n\t\t//@ts-ignore\n\t\tBootAction.prototype.execute = (options: any) => {\n\t\t\tpassedOptions = options\n\t\t}\n\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(passedOptions.shouldReturnImmediately)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async holdsOnAction() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(async () => {\n\t\t\t\tdidWait = true\n\t\t\t\tawait watchAction.kill()\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait actionPromise\n\t\tawait waitPromise\n\n\t\tassert.isTrue(didWait)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async canKillAction() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tdidWait = true\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait this.wait(100)\n\n\t\tawait watchAction.kill()\n\n\t\tawait actionPromise\n\n\t\tassert.isFalse(didWait)\n\n\t\tawait waitPromise\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async makeSureWatcherIsStartedAndStopped() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchFeature = this.getFeatureInstaller().getFeature('watch')\n\t\tlet wasStarted = false\n\t\tlet wasStopped = false\n\n\t\twatchFeature.startWatching = async () => {\n\t\t\twasStarted = true\n\t\t}\n\n\t\twatchFeature.stopWatching = async () => {\n\t\t\twasStopped = true\n\t\t}\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isFalse(wasStopped)\n\n\t\tawait watchAction.kill()\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isTrue(wasStopped)\n\t}\n\n\t@test()\n\tprotected static async killingActionKillsProcess() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: `Watching skill views`,\n\t\t})\n\n\t\tawait this.getViewFixture().createViewController({\n\t\t\tnameKebab: 'root',\n\t\t\tnamePascal: 'Root',\n\t\t})\n\n\t\tawait this.Action('view', 'sync').execute({})\n\t\tawait this.Service('build').build()\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst results = await watchAction.execute({ shouldReturnImmediately: true })\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tlet pid = watchAction.getPid()\n\n\t\twhile (!pid) {\n\t\t\tawait this.wait(100)\n\t\t\tpid = watchAction.getPid()\n\t\t}\n\n\t\tawait results.meta?.bootPromise\n\n\t\tawait this.assertProcessRunning(pid)\n\n\t\tawait watchAction.kill()\n\n\t\tawait this.wait(500)\n\n\t\tawait assert.doesThrowAsync(() => this.assertProcessRunning(pid as number))\n\t}\n\n\tprivate static async assertProcessRunning(pid: number) {\n\t\tawait new Promise((resolve, reject) => {\n\t\t\tps.lookup({ pid }, (err: any, results: any) => {\n\t\t\t\tif (err || results.length !== 1) {\n\t\t\t\t\treject('boot process not running')\n\t\t\t\t}\n\n\t\t\t\tresolve(results)\n\t\t\t})\n\t\t})\n\t}\n\n\tprivate static async emitFileChangeEvent() {\n\t\tconst emitter = this.getEmitter()\n\n\t\tawait emitter.emit('watcher.did-detect-change', {\n\t\t\tchanges: [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'updated',\n\t\t\t\t\t\tname: 'Cool name!',\n\t\t\t\t\t\tpath: '/',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t}\n}\n"],"file":"WatchingSkillViews.test.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/behavioral/WatchingSkillViews.test.ts"],"names":["WatchingSkillViewsTest","oldBootExecute","BootAction","prototype","execute","getFeatureInstaller","isInstalled","SettingsService","isMarkedAsInstalled","assert","isFunction","Action","wasHit","CommandService","setMockResponse","code","callback","watchAction","wait","isTrue","kill","hitCount","isEqual","emitFileChangeEvent","passedOptions","options","shouldReturnImmediately","actionPromise","didWait","waitPromise","Promise","resolve","setTimeout","isFalse","watchFeature","getFeature","wasStarted","wasStopped","startWatching","stopWatching","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","name","getViewFixture","createViewController","nameKebab","namePascal","Service","build","results","isFalsy","errors","pid","getPid","meta","bootPromise","assertProcessRunning","doesThrowAsync","reject","ps","lookup","err","length","emitter","getEmitter","emit","changes","schemaId","version","values","action","path","AbstractSkillTest"],"mappings":"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","sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport ps from 'ps-node'\nimport BootAction from '../../features/skill/actions/BootAction'\nimport WatchAction from '../../features/view/actions/WatchAction'\nimport CommandService from '../../services/CommandService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class WatchingSkillViewsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\tprotected static oldBootExecute: any\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\t\tthis.oldBootExecute = BootAction.prototype.execute\n\t}\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.getFeatureInstaller().isInstalled = async () => true\n\t\tSettingsService.prototype.isMarkedAsInstalled = () => true\n\t\tBootAction.prototype.execute = this.oldBootExecute\n\t}\n\n\t@test()\n\tprotected static async hasWatchSkillViewsEvent() {\n\t\tassert.isFunction(this.Action('view', 'watch').execute)\n\t}\n\n\t@test()\n\tprotected static async shouldCallBoot() {\n\t\tlet wasHit = false\n\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasHit = true\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute({})\n\t\tawait this.wait(10)\n\t\tassert.isTrue(wasHit)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async shouldCallBootAgainOnFileChange() {\n\t\tlet hitCount = 0\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\thitCount++\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tvoid watchAction.execute({})\n\n\t\tawait this.wait(10)\n\n\t\tassert.isEqual(hitCount, 1)\n\n\t\tawait this.emitFileChangeEvent()\n\n\t\tassert.isEqual(hitCount, 2)\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async changesDuringBootOfSkillKillSkill() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tlet passedOptions: any = null\n\n\t\t//@ts-ignore\n\t\tBootAction.prototype.execute = (options: any) => {\n\t\t\tpassedOptions = options\n\t\t}\n\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(passedOptions.shouldReturnImmediately)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async holdsOnAction() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(async () => {\n\t\t\t\tdidWait = true\n\t\t\t\tawait watchAction.kill()\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait actionPromise\n\t\tawait waitPromise\n\n\t\tassert.isTrue(didWait)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async canKillAction() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tdidWait = true\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait this.wait(100)\n\n\t\tawait watchAction.kill()\n\n\t\tawait actionPromise\n\n\t\tassert.isFalse(didWait)\n\n\t\tawait waitPromise\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async makeSureWatcherIsStartedAndStopped() {\n\t\tCommandService.setMockResponse(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchFeature = this.getFeatureInstaller().getFeature('watch')\n\t\tlet wasStarted = false\n\t\tlet wasStopped = false\n\n\t\twatchFeature.startWatching = async () => {\n\t\t\twasStarted = true\n\t\t}\n\n\t\twatchFeature.stopWatching = async () => {\n\t\t\twasStopped = true\n\t\t}\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isFalse(wasStopped)\n\n\t\tawait watchAction.kill()\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isTrue(wasStopped)\n\t}\n\n\t@test()\n\tprotected static async killingActionKillsProcess() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: `Watching skill views`,\n\t\t})\n\n\t\tawait this.getViewFixture().createViewController({\n\t\t\tnameKebab: 'root',\n\t\t\tnamePascal: 'Root',\n\t\t})\n\n\t\tawait this.Action('view', 'sync').execute({})\n\n\t\tawait this.Service('build').build()\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst results = await watchAction.execute({ shouldReturnImmediately: true })\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tlet pid = watchAction.getPid()\n\n\t\twhile (!pid) {\n\t\t\tawait this.wait(100)\n\t\t\tpid = watchAction.getPid()\n\t\t}\n\n\t\tawait results.meta?.bootPromise\n\n\t\tawait this.assertProcessRunning(pid)\n\n\t\tawait watchAction.kill()\n\n\t\tawait this.wait(500)\n\n\t\tawait assert.doesThrowAsync(() => this.assertProcessRunning(pid as number))\n\t}\n\n\tprivate static async assertProcessRunning(pid: number) {\n\t\tawait new Promise((resolve, reject) => {\n\t\t\tps.lookup({ pid }, (err: any, results: any) => {\n\t\t\t\tif (err || results.length !== 1) {\n\t\t\t\t\treject('boot process not running')\n\t\t\t\t}\n\n\t\t\t\tresolve(results)\n\t\t\t})\n\t\t})\n\t}\n\n\tprivate static async emitFileChangeEvent() {\n\t\tconst emitter = this.getEmitter()\n\n\t\tawait emitter.emit('watcher.did-detect-change', {\n\t\t\tchanges: [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'updated',\n\t\t\t\t\t\tname: 'Cool name!',\n\t\t\t\t\t\tpath: '/',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t}\n}\n"],"file":"WatchingSkillViews.test.js"}
|
|
@@ -351,7 +351,7 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
351
351
|
var _emittingEventTriggersListenerAndCrashesWithListenerNotImplemented = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
352
352
|
var _boot$meta, _boot$meta$promise, _boot$meta2;
|
|
353
353
|
|
|
354
|
-
var _yield$this$setupSkil3, currentSkill, skill2, eventContract, org, boot, client, eventName, results, error, responderRef;
|
|
354
|
+
var _yield$this$setupSkil3, currentSkill, skill2, eventContract, org, currentClient, boot, client, eventName, results, error, responderRef;
|
|
355
355
|
|
|
356
356
|
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
|
357
357
|
while (1) {
|
|
@@ -396,39 +396,50 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
396
396
|
eventContract = _yield$this$setupSkil3.eventContract;
|
|
397
397
|
org = _yield$this$setupSkil3.org;
|
|
398
398
|
_context7.next = 9;
|
|
399
|
+
return this.connectToApi({
|
|
400
|
+
shouldAuthAsCurrentSkill: true
|
|
401
|
+
});
|
|
402
|
+
|
|
403
|
+
case 9:
|
|
404
|
+
currentClient = _context7.sent;
|
|
405
|
+
_context7.next = 12;
|
|
406
|
+
return currentClient.disconnect();
|
|
407
|
+
|
|
408
|
+
case 12:
|
|
409
|
+
_context7.next = 14;
|
|
399
410
|
return this.Action('skill', 'boot').execute({
|
|
400
411
|
local: true
|
|
401
412
|
});
|
|
402
413
|
|
|
403
|
-
case
|
|
414
|
+
case 14:
|
|
404
415
|
boot = _context7.sent;
|
|
405
416
|
|
|
406
417
|
_test.assert.isFalsy(boot.errors); //give the skill time to boot
|
|
407
418
|
|
|
408
419
|
|
|
409
|
-
_context7.next =
|
|
420
|
+
_context7.next = 18;
|
|
410
421
|
return this.wait(20000);
|
|
411
422
|
|
|
412
|
-
case
|
|
413
|
-
_context7.next =
|
|
423
|
+
case 18:
|
|
424
|
+
_context7.next = 20;
|
|
414
425
|
return this.connectToApi({
|
|
415
426
|
skillId: skill2.id,
|
|
416
427
|
apiKey: skill2.apiKey
|
|
417
428
|
});
|
|
418
429
|
|
|
419
|
-
case
|
|
430
|
+
case 20:
|
|
420
431
|
client = _context7.sent;
|
|
421
432
|
eventName = "".concat(skill2.slug, ".my-new-event::").concat(this.expectedVersion);
|
|
422
433
|
client.mixinContract({
|
|
423
434
|
eventSignatures: (0, _defineProperty2["default"])({}, eventName, eventContract.eventSignatures["my-new-event::".concat(this.expectedVersion)])
|
|
424
435
|
});
|
|
425
436
|
|
|
426
|
-
case
|
|
427
|
-
_context7.next =
|
|
437
|
+
case 23:
|
|
438
|
+
_context7.next = 25;
|
|
428
439
|
return this.wait(5000);
|
|
429
440
|
|
|
430
|
-
case
|
|
431
|
-
_context7.next =
|
|
441
|
+
case 25:
|
|
442
|
+
_context7.next = 27;
|
|
432
443
|
return client.emit(eventName, {
|
|
433
444
|
target: {
|
|
434
445
|
organizationId: org.id
|
|
@@ -438,16 +449,16 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
438
449
|
}
|
|
439
450
|
});
|
|
440
451
|
|
|
441
|
-
case
|
|
452
|
+
case 27:
|
|
442
453
|
results = _context7.sent;
|
|
443
454
|
|
|
444
|
-
case
|
|
455
|
+
case 28:
|
|
445
456
|
if (results.totalContracts < 1) {
|
|
446
|
-
_context7.next =
|
|
457
|
+
_context7.next = 23;
|
|
447
458
|
break;
|
|
448
459
|
}
|
|
449
460
|
|
|
450
|
-
case
|
|
461
|
+
case 29:
|
|
451
462
|
_test.assert.isEqual(results.totalContracts, 1);
|
|
452
463
|
|
|
453
464
|
_test.assert.isEqual(results.totalErrors, 1);
|
|
@@ -457,10 +468,10 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
457
468
|
(_boot$meta = boot.meta) === null || _boot$meta === void 0 ? void 0 : (_boot$meta$promise = _boot$meta.promise) === null || _boot$meta$promise === void 0 ? void 0 : _boot$meta$promise["catch"](function (err) {
|
|
458
469
|
_test.assert.fail(err.stack);
|
|
459
470
|
});
|
|
460
|
-
_context7.next =
|
|
471
|
+
_context7.next = 35;
|
|
461
472
|
return (_boot$meta2 = boot.meta) === null || _boot$meta2 === void 0 ? void 0 : _boot$meta2.kill();
|
|
462
473
|
|
|
463
|
-
case
|
|
474
|
+
case 35:
|
|
464
475
|
error = _test.assert.doesThrow(function () {
|
|
465
476
|
return _spruceEventUtils.eventResponseUtil.getFirstResponseOrThrow(results);
|
|
466
477
|
});
|
|
@@ -471,7 +482,7 @@ var CreatingAListenerTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)()
|
|
|
471
482
|
|
|
472
483
|
_test.assert.isEqual(responderRef, "skill:".concat(currentSkill.id, ":").concat(currentSkill.slug));
|
|
473
484
|
|
|
474
|
-
case
|
|
485
|
+
case 39:
|
|
475
486
|
case "end":
|
|
476
487
|
return _context7.stop();
|
|
477
488
|
}
|
|
@@ -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","local","boot","wait","connectToApi","skillId","apiKey","client","mixinContract","eventSignatures","emit","target","payload","totalContracts","totalErrors","totalResponses","meta","promise","fail","stack","kill","error","doesThrow","eventResponseUtil","getFirstResponseOrThrow","eventErrorAssertUtil","responderRef","responses","eventSignature","seedDummySkillRegisterCurrentSkillAndInstallToOrg","skillFixture","registerEventContract","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\teventErrorAssertUtil,\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 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\teventErrorAssertUtil.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\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","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","eventErrorAssertUtil","responderRef","responses","eventSignature","seedDummySkillRegisterCurrentSkillAndInstallToOrg","skillFixture","registerEventContract","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\teventErrorAssertUtil,\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\teventErrorAssertUtil.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\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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
14
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
+
|
|
16
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
+
|
|
18
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
+
|
|
20
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
+
|
|
22
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
+
|
|
24
|
+
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
25
|
+
|
|
26
|
+
var _test = require("@sprucelabs/test");
|
|
27
|
+
|
|
28
|
+
var _AbstractCliTest2 = _interopRequireDefault(require("../../tests/AbstractCliTest"));
|
|
29
|
+
|
|
30
|
+
var _dec, _class;
|
|
31
|
+
|
|
32
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
33
|
+
|
|
34
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
|
+
|
|
36
|
+
var GlobalEmitterTest = (_dec = (0, _test.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
37
|
+
(0, _inherits2["default"])(GlobalEmitterTest, _AbstractCliTest);
|
|
38
|
+
|
|
39
|
+
var _super = _createSuper(GlobalEmitterTest);
|
|
40
|
+
|
|
41
|
+
function GlobalEmitterTest() {
|
|
42
|
+
(0, _classCallCheck2["default"])(this, GlobalEmitterTest);
|
|
43
|
+
return _super.apply(this, arguments);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
(0, _createClass2["default"])(GlobalEmitterTest, null, [{
|
|
47
|
+
key: "globalEmitterEmitsSEquentally",
|
|
48
|
+
value: function () {
|
|
49
|
+
var _globalEmitterEmitsSEquentally = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
50
|
+
var emitter;
|
|
51
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
52
|
+
while (1) {
|
|
53
|
+
switch (_context.prev = _context.next) {
|
|
54
|
+
case 0:
|
|
55
|
+
emitter = this.getEmitter(); //@ts-ignore
|
|
56
|
+
|
|
57
|
+
_test.assert.isTrue(emitter.shouldEmitSequentally);
|
|
58
|
+
|
|
59
|
+
case 2:
|
|
60
|
+
case "end":
|
|
61
|
+
return _context.stop();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}, _callee, this);
|
|
65
|
+
}));
|
|
66
|
+
|
|
67
|
+
function globalEmitterEmitsSEquentally() {
|
|
68
|
+
return _globalEmitterEmitsSEquentally.apply(this, arguments);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return globalEmitterEmitsSEquentally;
|
|
72
|
+
}()
|
|
73
|
+
}]);
|
|
74
|
+
return GlobalEmitterTest;
|
|
75
|
+
}(_AbstractCliTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "globalEmitterEmitsSEquentally", [_dec], Object.getOwnPropertyDescriptor(_class, "globalEmitterEmitsSEquentally"), _class)), _class));
|
|
76
|
+
exports["default"] = GlobalEmitterTest;
|
|
77
|
+
//# sourceMappingURL=GlobalEmitter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/__tests__/implementation/GlobalEmitter.ts"],"names":["GlobalEmitterTest","emitter","getEmitter","assert","isTrue","shouldEmitSequentally","AbstractCliTest"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;;;IAEqBA,iB,WACnB,iB;;;;;;;;;;;;;yHAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAEOC,gBAAAA,OAFP,GAEiB,KAAKC,UAAL,EAFjB,EAIC;;AACAC,6BAAOC,MAAP,CAAcH,OAAO,CAACI,qBAAtB;;AALD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAD8CC,4B","sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nexport default class GlobalEmitterTest extends AbstractCliTest {\n\t@test()\n\tprotected static async globalEmitterEmitsSEquentally() {\n\t\tconst emitter = this.getEmitter()\n\n\t\t//@ts-ignore\n\t\tassert.isTrue(emitter.shouldEmitSequentally)\n\t}\n}\n"],"file":"GlobalEmitter.js"}
|
|
@@ -58,8 +58,8 @@
|
|
|
58
58
|
"chokidar-cli": "^2.1.0",
|
|
59
59
|
"concurrently": "^5.3.0",
|
|
60
60
|
"conventional-changelog-sprucelabs": "^1.1.2",
|
|
61
|
-
"eslint": "^
|
|
62
|
-
"eslint-config-spruce": "10.
|
|
61
|
+
"eslint": "^8.0.0",
|
|
62
|
+
"eslint-config-spruce": "^10.10.14",
|
|
63
63
|
"jest": "^26.6.3",
|
|
64
64
|
"jest-circus": "^26.6.3",
|
|
65
65
|
"prettier": "^2.2.0",
|
package/build/cli.js
CHANGED
|
@@ -5,8 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.run = run;
|
|
9
8
|
exports["default"] = void 0;
|
|
9
|
+
exports.run = run;
|
|
10
10
|
|
|
11
11
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
12
12
|
|
package/build/constants.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.FILE_ACTION_SKIP = exports.FILE_ACTION_OVERWRITE = exports.FILE_ACTION_ALWAYS_SKIP = exports.DEFAULT_HOST = exports.CLI_HERO = void 0;
|
|
7
7
|
var DEFAULT_HOST = 'https://mercury.spruce.ai';
|
|
8
8
|
exports.DEFAULT_HOST = DEFAULT_HOST;
|
|
9
9
|
var CLI_HERO = 'Sprucebot';
|
|
@@ -50,7 +50,7 @@ var SpruceError = /*#__PURE__*/function (_AbstractSpruceError) {
|
|
|
50
50
|
value:
|
|
51
51
|
/** An easy to understand version of the errors */
|
|
52
52
|
function friendlyMessage() {
|
|
53
|
-
var _options$friendlyMess, _options$originalErro2, _options$originalErro3, _options$friendlyMess2, _options$originalErro4, _options$originalErro5, _options$
|
|
53
|
+
var _options$friendlyMess, _options$originalErro2, _options$originalErro3, _options$friendlyMess2, _options$originalErro4, _options$originalErro5, _options$originalErro7, _ref, _options$friendlyMess3, _options$originalErro8;
|
|
54
54
|
|
|
55
55
|
var options = this.options;
|
|
56
56
|
var message;
|
|
@@ -109,6 +109,13 @@ var SpruceError = /*#__PURE__*/function (_AbstractSpruceError) {
|
|
|
109
109
|
|
|
110
110
|
case 'LINT_FAILED':
|
|
111
111
|
message = "Lint failed on pattern ".concat(options.pattern, ".");
|
|
112
|
+
|
|
113
|
+
if (options.originalError) {
|
|
114
|
+
var _options$originalErro6;
|
|
115
|
+
|
|
116
|
+
message += "\n\nOriginal error:".concat((_options$originalErro6 = options.originalError.stack) !== null && _options$originalErro6 !== void 0 ? _options$originalErro6 : options.originalError.message);
|
|
117
|
+
}
|
|
118
|
+
|
|
112
119
|
break;
|
|
113
120
|
|
|
114
121
|
case 'EXECUTING_COMMAND_FAILED':
|
|
@@ -213,11 +220,11 @@ var SpruceError = /*#__PURE__*/function (_AbstractSpruceError) {
|
|
|
213
220
|
break;
|
|
214
221
|
|
|
215
222
|
case 'INVALID_EVENT_CONTRACT':
|
|
216
|
-
message = "The event named `".concat(options.fullyQualifiedEventName, "` is not valid. Check ").concat(options.brokenProperty, ". The original error is:\n\n").concat((_options$
|
|
223
|
+
message = "The event named `".concat(options.fullyQualifiedEventName, "` is not valid. Check ").concat(options.brokenProperty, ". The original error is:\n\n").concat((_options$originalErro7 = options.originalError) === null || _options$originalErro7 === void 0 ? void 0 : _options$originalErro7.message);
|
|
217
224
|
break;
|
|
218
225
|
|
|
219
226
|
case 'BOOT_ERROR':
|
|
220
|
-
message = "Booting your skill failed: ".concat((_ref = (_options$friendlyMess3 = options.friendlyMessage) !== null && _options$friendlyMess3 !== void 0 ? _options$friendlyMess3 : (_options$
|
|
227
|
+
message = "Booting your skill failed: ".concat((_ref = (_options$friendlyMess3 = options.friendlyMessage) !== null && _options$friendlyMess3 !== void 0 ? _options$friendlyMess3 : (_options$originalErro8 = options.originalError) === null || _options$originalErro8 === void 0 ? void 0 : _options$originalErro8.message) !== null && _ref !== void 0 ? _ref : 'Not sure why, tho.');
|
|
221
228
|
break;
|
|
222
229
|
|
|
223
230
|
case 'DEPLOY_FAILED':
|