@sprucelabs/spruce-cli 18.3.0 → 18.4.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.
Files changed (145) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +2 -14
  3. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  4. package/build/__tests__/behavioral/events/EventWriter.test.d.ts +4 -0
  5. package/build/__tests__/behavioral/events/EventWriter.test.js +116 -0
  6. package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -0
  7. package/build/__tests__/behavioral/{ListeningToCoreEvents.test.d.ts → events/ListeningToCoreEvents.test.d.ts} +1 -1
  8. package/build/__tests__/behavioral/{ListeningToCoreEvents.test.js → events/ListeningToCoreEvents.test.js} +1 -1
  9. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -0
  10. package/build/__tests__/behavioral/{RegisteringEventsOnBoot.test.d.ts → events/RegisteringEventsOnBoot.test.d.ts} +1 -1
  11. package/build/__tests__/behavioral/{RegisteringEventsOnBoot.test.js → events/RegisteringEventsOnBoot.test.js} +2 -2
  12. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -0
  13. package/build/__tests__/behavioral/{RegisteringGlobalEvents.test.d.ts → events/RegisteringGlobalEvents.test.d.ts} +2 -3
  14. package/build/__tests__/behavioral/{RegisteringGlobalEvents.test.js → events/RegisteringGlobalEvents.test.js} +45 -70
  15. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -0
  16. package/build/__tests__/behavioral/{SyncingEventsOnlyFromDependencies.test.d.ts → events/SyncingEventsOnlyFromDependencies.test.d.ts} +1 -1
  17. package/build/__tests__/behavioral/{SyncingEventsOnlyFromDependencies.test.js → events/SyncingEventsOnlyFromDependencies.test.js} +1 -1
  18. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -0
  19. package/build/__tests__/behavioral/permissions/PermissionStore.test.js +1 -0
  20. package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
  21. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +1 -1
  22. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
  23. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.d.ts +1 -0
  24. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +53 -18
  25. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  26. package/build/__tests__/behavioral/{CreatingSchemasWithGenerics.test.d.ts → schemas/CreatingSchemasWithGenerics.test.d.ts} +1 -1
  27. package/build/__tests__/behavioral/{CreatingSchemasWithGenerics.test.js → schemas/CreatingSchemasWithGenerics.test.js} +2 -2
  28. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -0
  29. package/build/__tests__/behavioral/{SettingUpSchemasForModuleDistribution.test.d.ts → schemas/SettingUpSchemasForModuleDistribution.test.d.ts} +1 -1
  30. package/build/__tests__/behavioral/{SettingUpSchemasForModuleDistribution.test.js → schemas/SettingUpSchemasForModuleDistribution.test.js} +3 -3
  31. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -0
  32. package/build/__tests__/behavioral/{InstallingASkillAtAnOrg.test.d.ts → skill/InstallingASkillAtAnOrg.test.d.ts} +1 -1
  33. package/build/__tests__/behavioral/{InstallingASkillAtAnOrg.test.js → skill/InstallingASkillAtAnOrg.test.js} +2 -2
  34. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -0
  35. package/build/__tests__/behavioral/{LoggingInAsASkill.test.d.ts → skill/LoggingInAsASkill.test.d.ts} +1 -1
  36. package/build/__tests__/behavioral/{LoggingInAsASkill.test.js → skill/LoggingInAsASkill.test.js} +2 -2
  37. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -0
  38. package/build/__tests__/behavioral/{RebuildingASkill.test.d.ts → skill/RebuildingASkill.test.d.ts} +1 -1
  39. package/build/__tests__/behavioral/{RebuildingASkill.test.js → skill/RebuildingASkill.test.js} +2 -2
  40. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -0
  41. package/build/__tests__/behavioral/{SettingUpASkillForTesting.test.d.ts → tests/SettingUpASkillForTesting.test.d.ts} +1 -1
  42. package/build/__tests__/behavioral/{SettingUpASkillForTesting.test.js → tests/SettingUpASkillForTesting.test.js} +2 -2
  43. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -0
  44. package/build/__tests__/behavioral/{TestReporterSettingsRemembered.test.d.ts → tests/TestReporterSettingsRemembered.test.d.ts} +1 -1
  45. package/build/__tests__/behavioral/{TestReporterSettingsRemembered.test.js → tests/TestReporterSettingsRemembered.test.js} +1 -1
  46. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -0
  47. package/build/__tests__/behavioral/{TestingDataStores.test.d.ts → tests/TestingDataStores.test.d.ts} +1 -1
  48. package/build/__tests__/behavioral/{TestingDataStores.test.js → tests/TestingDataStores.test.js} +3 -3
  49. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -0
  50. package/build/__tests__/behavioral/{RegisteringSkillViewOnBoot.test.d.ts → views/RegisteringSkillViewOnBoot.test.d.ts} +4 -4
  51. package/build/__tests__/behavioral/{RegisteringSkillViewOnBoot.test.js → views/RegisteringSkillViewOnBoot.test.js} +2 -2
  52. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -0
  53. package/build/__tests__/behavioral/{WatchingSkillViews.test.d.ts → views/WatchingSkillViews.test.d.ts} +1 -1
  54. package/build/__tests__/behavioral/{WatchingSkillViews.test.js → views/WatchingSkillViews.test.js} +3 -3
  55. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -0
  56. package/build/__tests__/support/EventFaker.d.ts +1 -1
  57. package/build/__tests__/support/EventFaker.js.map +1 -1
  58. package/build/features/eventContract/EventContractFeature.js +1 -4
  59. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  60. package/build/features/eventContract/actions/PullAction.d.ts +1 -0
  61. package/build/features/eventContract/actions/PullAction.js +49 -8
  62. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  63. package/build/features/permission/PermissionFeature.js +20 -12
  64. package/build/features/permission/PermissionFeature.js.map +1 -1
  65. package/build/features/permission/actions/SyncAction.d.ts +22 -3
  66. package/build/features/permission/actions/SyncAction.js +58 -16
  67. package/build/features/permission/actions/SyncAction.js.map +1 -1
  68. package/build/features/permission/stores/PermissionStore.d.ts +6 -2
  69. package/build/features/permission/stores/PermissionStore.js +25 -21
  70. package/build/features/permission/stores/PermissionStore.js.map +1 -1
  71. package/build/features/permission/writers/PermissionWriter.d.ts +1 -1
  72. package/build/features/permission/writers/PermissionWriter.js +2 -2
  73. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  74. package/build/features/view/actions/WatchAction.js +1 -1
  75. package/build/features/view/actions/WatchAction.js.map +1 -1
  76. package/node_modules/@typescript-eslint/parser/README.md +6 -300
  77. package/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +1 -1
  78. package/node_modules/@typescript-eslint/parser/dist/parser.js +15 -17
  79. package/node_modules/@typescript-eslint/parser/dist/parser.js.map +1 -1
  80. package/node_modules/@typescript-eslint/parser/package.json +5 -5
  81. package/node_modules/@typescript-eslint/scope-manager/README.md +5 -117
  82. package/node_modules/@typescript-eslint/scope-manager/package.json +5 -5
  83. package/node_modules/@typescript-eslint/types/README.md +6 -11
  84. package/node_modules/@typescript-eslint/types/package.json +2 -2
  85. package/node_modules/@typescript-eslint/typescript-estree/README.md +6 -379
  86. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/{createWatchProgram.d.ts → getWatchProgramsForProjects.d.ts} +3 -4
  87. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/index.d.ts +1 -1
  88. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +3 -3
  89. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +1 -1
  90. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/{createWatchProgram.d.ts → getWatchProgramsForProjects.d.ts} +3 -4
  91. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.d.ts.map +1 -0
  92. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/{createWatchProgram.js → getWatchProgramsForProjects.js} +4 -5
  93. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js.map +1 -0
  94. package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts +1 -1
  95. package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map +1 -1
  96. package/node_modules/@typescript-eslint/typescript-estree/dist/index.js +2 -2
  97. package/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map +1 -1
  98. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +2 -2
  99. package/node_modules/@typescript-eslint/typescript-estree/package.json +5 -5
  100. package/node_modules/@typescript-eslint/visitor-keys/README.md +6 -9
  101. package/node_modules/@typescript-eslint/visitor-keys/package.json +3 -3
  102. package/package.json +22 -22
  103. package/src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts +0 -5
  104. package/src/__tests__/behavioral/events/EventWriter.test.ts +75 -0
  105. package/src/__tests__/behavioral/{ListeningToCoreEvents.test.ts → events/ListeningToCoreEvents.test.ts} +1 -1
  106. package/src/__tests__/behavioral/{RegisteringEventsOnBoot.test.ts → events/RegisteringEventsOnBoot.test.ts} +2 -2
  107. package/src/__tests__/behavioral/{RegisteringGlobalEvents.test.ts → events/RegisteringGlobalEvents.test.ts} +4 -12
  108. package/src/__tests__/behavioral/{SyncingEventsOnlyFromDependencies.test.ts → events/SyncingEventsOnlyFromDependencies.test.ts} +2 -2
  109. package/src/__tests__/behavioral/permissions/PermissionStore.test.ts +2 -1
  110. package/src/__tests__/behavioral/permissions/PermissionWriter.test.ts +1 -0
  111. package/src/__tests__/behavioral/permissions/SyncingPermissions.test.ts +21 -3
  112. package/src/__tests__/behavioral/{CreatingSchemasWithGenerics.test.ts → schemas/CreatingSchemasWithGenerics.test.ts} +2 -2
  113. package/src/__tests__/behavioral/{SettingUpSchemasForModuleDistribution.test.ts → schemas/SettingUpSchemasForModuleDistribution.test.ts} +4 -4
  114. package/src/__tests__/behavioral/{InstallingASkillAtAnOrg.test.ts → skill/InstallingASkillAtAnOrg.test.ts} +2 -2
  115. package/src/__tests__/behavioral/{LoggingInAsASkill.test.ts → skill/LoggingInAsASkill.test.ts} +3 -3
  116. package/src/__tests__/behavioral/{RebuildingASkill.test.ts → skill/RebuildingASkill.test.ts} +2 -2
  117. package/src/__tests__/behavioral/{SettingUpASkillForTesting.test.ts → tests/SettingUpASkillForTesting.test.ts} +2 -2
  118. package/src/__tests__/behavioral/{TestReporterSettingsRemembered.test.ts → tests/TestReporterSettingsRemembered.test.ts} +2 -2
  119. package/src/__tests__/behavioral/{TestingDataStores.test.ts → tests/TestingDataStores.test.ts} +3 -3
  120. package/src/__tests__/behavioral/{RegisteringSkillViewOnBoot.test.ts → views/RegisteringSkillViewOnBoot.test.ts} +2 -2
  121. package/src/__tests__/behavioral/{WatchingSkillViews.test.ts → views/WatchingSkillViews.test.ts} +4 -4
  122. package/src/__tests__/support/EventFaker.ts +1 -2
  123. package/src/features/eventContract/EventContractFeature.ts +1 -6
  124. package/src/features/eventContract/actions/PullAction.ts +21 -3
  125. package/src/features/permission/PermissionFeature.ts +7 -10
  126. package/src/features/permission/actions/SyncAction.ts +42 -5
  127. package/src/features/permission/stores/PermissionStore.ts +26 -12
  128. package/src/features/permission/writers/PermissionWriter.ts +2 -5
  129. package/src/features/view/actions/WatchAction.ts +1 -1
  130. package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js.map +0 -1
  131. package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +0 -1
  132. package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +0 -1
  133. package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +0 -1
  134. package/build/__tests__/behavioral/RebuildingASkill.test.js.map +0 -1
  135. package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +0 -1
  136. package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +0 -1
  137. package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js.map +0 -1
  138. package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js.map +0 -1
  139. package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +0 -1
  140. package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js.map +0 -1
  141. package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js.map +0 -1
  142. package/build/__tests__/behavioral/TestingDataStores.test.js.map +0 -1
  143. package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +0 -1
  144. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map +0 -1
  145. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
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
+ # [18.4.0](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v18.3.1...v18.4.0) (2022-12-07)
7
+
8
+ ### Features
9
+
10
+ - can now pull core permissions ([9fc1838](https://github.com/sprucelabsai/spruce-cli-workspace/commit/9fc1838))
11
+
12
+ ## [18.3.1](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v18.3.0...v18.3.1) (2022-12-02)
13
+
14
+ **Note:** Version bump only for package @sprucelabs/spruce-cli
15
+
6
16
  # [18.3.0](https://github.com/sprucelabsai/spruce-cli-workspace/compare/v18.2.0...v18.3.0) (2022-12-01)
7
17
 
8
18
  ### Features
@@ -274,27 +274,15 @@ var GeneratingMercuryEventContractTest = (_dec = (0, _testUtils.test)(), _dec2 =
274
274
  shouldAutoHandleDependencies: true
275
275
  }).execute({});
276
276
  _context8.next = 6;
277
- return this.waitForInput();
278
- case 6:
279
- _context8.next = 8;
280
- return this.ui.sendInput('Y');
281
- case 8:
282
- _context8.next = 10;
283
- return this.waitForInput();
284
- case 10:
285
- _context8.next = 12;
286
- return this.ui.sendInput('\n');
287
- case 12:
288
- _context8.next = 14;
289
277
  return promise;
290
- case 14:
278
+ case 6:
291
279
  results = _context8.sent;
292
280
  match = _test["default"].assertFileByNameInGeneratedFiles('events.contract.ts', results.files);
293
281
  contents = _spruceSkillUtils.diskUtil.readFile(match);
294
282
  _testUtils.assert.doesInclude(contents, 'export default eventContracts');
295
283
  _testUtils.assert.doesInclude(contents, 'as const');
296
284
  _testUtils.assert.doesInclude(contents, 'export type CoreEventContract = typeof eventContracts[0] & typeof eventContracts[1]');
297
- case 20:
285
+ case 12:
298
286
  case "end":
299
287
  return _context8.stop();
300
288
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PullingMercuryEventContract.test.js","names":["GeneratingMercuryEventContractTest","test","Cli","cli","diskUtil","writeFile","resolvePath","assert","isTruthy","getFeature","isFunction","Action","execute","FeatureFixture","installCachedFeatures","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","isEqual","doesInclude","name","action","contents","readFile","destination","expected","installSkillAndPullContracts","contracts","isArray","isObject","eventSignatures","getSkillFixture","registerCurrentSkill","skill","Store","events","registerEventContract","eventContract","isGlobal","fqen","eventNameUtil","join","eventName","eventNamespace","slug","version","isAbove","length","promise","shouldAutoHandleDependencies","waitForInput","ui","sendInput","pullContracts","Service","importDefault","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts"],"sourcesContent":["import { EventContract } from '@sprucelabs/mercury-types'\nimport { eventNameUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport { CliInterface } from '../../../cli'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class GeneratingMercuryEventContractTest extends AbstractCliTest {\n\tprivate static cli: CliInterface\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.cli = await this.Cli()\n\t\tdiskUtil.writeFile(this.resolvePath('package.json'), '{}')\n\t}\n\n\t@test()\n\tprotected static async hasEventContractFeature() {\n\t\tassert.isTruthy(this.cli.getFeature('eventContract'))\n\t}\n\n\t@test()\n\tprotected static async hasPullFeature() {\n\t\tassert.isFunction(this.Action('eventContract', 'pull').execute)\n\t}\n\n\t@test()\n\tprotected static async generatesContractAtCwd() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.isEqual(match, this.resolvePath('events.contract.ts'))\n\n\t\tassert.doesInclude(results.files ?? [], {\n\t\t\tname: 'events.contract.ts',\n\t\t\taction: 'generated',\n\t\t})\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t\"import { buildEventContract } from '@sprucelabs/mercury-types'\"\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatesAtDestination() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tconst results = await this.Action('eventContract', 'pull').execute({\n\t\t\tdestination: './src/tests',\n\t\t})\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\t\tconst expected = this.resolvePath('src/tests/events.contract.ts')\n\n\t\tassert.isEqual(expected, match)\n\t}\n\n\t@test()\n\tprotected static async savesContractLocallyAndImportsAsDefault() {\n\t\tconst contracts = await this.installSkillAndPullContracts()\n\n\t\tassert.isArray(contracts)\n\t\tassert.isObject(contracts[0].eventSignatures)\n\t\tassert.isObject(contracts[0].eventSignatures[`did-message::v2020_12_25`])\n\t}\n\n\t@test()\n\tprotected static async pullsGlobalContracts() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'heartwood test',\n\t\t})\n\n\t\tconst events = await this.Store('event')\n\t\tawait events.registerEventContract({\n\t\t\teventContract: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\t'test-event::v2020_01_01': {\n\t\t\t\t\t\tisGlobal: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\n\t\tconst fqen = eventNameUtil.join({\n\t\t\teventName: 'test-event',\n\t\t\teventNamespace: skill.slug,\n\t\t\tversion: 'v2020_01_01',\n\t\t})\n\n\t\tconst contracts = await this.installSkillAndPullContracts()\n\n\t\tassert.isAbove(contracts.length, 1)\n\t\tassert.isObject(contracts[1].eventSignatures)\n\t\tassert.isObject(contracts[1].eventSignatures[fqen])\n\t}\n\n\t@test()\n\tprotected static async contractHasTypes() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('node')\n\n\t\tconst promise = this.Action('eventContract', 'pull', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t}).execute({})\n\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput('Y')\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tconst results = await promise\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(contents, 'export default eventContracts')\n\t\tassert.doesInclude(contents, 'as const')\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'export type CoreEventContract = typeof eventContracts[0] & typeof eventContracts[1]'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatingASecondTimeReportsAnUpdate() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.Action('eventContract', 'pull').execute({})\n\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(results.files ?? [], {\n\t\t\tname: 'events.contract.ts',\n\t\t\taction: 'updated',\n\t\t})\n\t}\n\n\tprivate static async installSkillAndPullContracts() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\t\treturn await this.pullContracts()\n\t}\n\n\tprivate static async pullContracts() {\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contracts = await this.Service('import').importDefault(match)\n\t\treturn contracts as EventContract[]\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PullingMercuryEventContract.test.js","names":["GeneratingMercuryEventContractTest","test","Cli","cli","diskUtil","writeFile","resolvePath","assert","isTruthy","getFeature","isFunction","Action","execute","FeatureFixture","installCachedFeatures","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","isEqual","doesInclude","name","action","contents","readFile","destination","expected","installSkillAndPullContracts","contracts","isArray","isObject","eventSignatures","getSkillFixture","registerCurrentSkill","skill","Store","events","registerEventContract","eventContract","isGlobal","fqen","eventNameUtil","join","eventName","eventNamespace","slug","version","isAbove","length","promise","shouldAutoHandleDependencies","pullContracts","Service","importDefault","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts"],"sourcesContent":["import { EventContract } from '@sprucelabs/mercury-types'\nimport { eventNameUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport { CliInterface } from '../../../cli'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class GeneratingMercuryEventContractTest extends AbstractCliTest {\n\tprivate static cli: CliInterface\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.cli = await this.Cli()\n\t\tdiskUtil.writeFile(this.resolvePath('package.json'), '{}')\n\t}\n\n\t@test()\n\tprotected static async hasEventContractFeature() {\n\t\tassert.isTruthy(this.cli.getFeature('eventContract'))\n\t}\n\n\t@test()\n\tprotected static async hasPullFeature() {\n\t\tassert.isFunction(this.Action('eventContract', 'pull').execute)\n\t}\n\n\t@test()\n\tprotected static async generatesContractAtCwd() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.isEqual(match, this.resolvePath('events.contract.ts'))\n\n\t\tassert.doesInclude(results.files ?? [], {\n\t\t\tname: 'events.contract.ts',\n\t\t\taction: 'generated',\n\t\t})\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t\"import { buildEventContract } from '@sprucelabs/mercury-types'\"\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatesAtDestination() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tconst results = await this.Action('eventContract', 'pull').execute({\n\t\t\tdestination: './src/tests',\n\t\t})\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\t\tconst expected = this.resolvePath('src/tests/events.contract.ts')\n\n\t\tassert.isEqual(expected, match)\n\t}\n\n\t@test()\n\tprotected static async savesContractLocallyAndImportsAsDefault() {\n\t\tconst contracts = await this.installSkillAndPullContracts()\n\n\t\tassert.isArray(contracts)\n\t\tassert.isObject(contracts[0].eventSignatures)\n\t\tassert.isObject(contracts[0].eventSignatures[`did-message::v2020_12_25`])\n\t}\n\n\t@test()\n\tprotected static async pullsGlobalContracts() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'heartwood test',\n\t\t})\n\n\t\tconst events = await this.Store('event')\n\t\tawait events.registerEventContract({\n\t\t\teventContract: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\t'test-event::v2020_01_01': {\n\t\t\t\t\t\tisGlobal: true,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\n\t\tconst fqen = eventNameUtil.join({\n\t\t\teventName: 'test-event',\n\t\t\teventNamespace: skill.slug,\n\t\t\tversion: 'v2020_01_01',\n\t\t})\n\n\t\tconst contracts = await this.installSkillAndPullContracts()\n\n\t\tassert.isAbove(contracts.length, 1)\n\t\tassert.isObject(contracts[1].eventSignatures)\n\t\tassert.isObject(contracts[1].eventSignatures[fqen])\n\t}\n\n\t@test()\n\tprotected static async contractHasTypes() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('node')\n\n\t\tconst promise = this.Action('eventContract', 'pull', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t}).execute({})\n\n\t\tconst results = await promise\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(contents, 'export default eventContracts')\n\t\tassert.doesInclude(contents, 'as const')\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'export type CoreEventContract = typeof eventContracts[0] & typeof eventContracts[1]'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async generatingASecondTimeReportsAnUpdate() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.Action('eventContract', 'pull').execute({})\n\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(results.files ?? [], {\n\t\t\tname: 'events.contract.ts',\n\t\t\taction: 'updated',\n\t\t})\n\t}\n\n\tprivate static async installSkillAndPullContracts() {\n\t\tthis.cli = await this.FeatureFixture().installCachedFeatures('events')\n\t\treturn await this.pullContracts()\n\t}\n\n\tprivate static async pullContracts() {\n\t\tconst results = await this.Action('eventContract', 'pull').execute({})\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contracts = await this.Service('import').importDefault(match)\n\t\treturn contracts as EventContract[]\n\t}\n}\n"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import AbstractCliTest from '../../../tests/AbstractCliTest';
2
+ export default class EventWriterTest extends AbstractCliTest {
3
+ protected static canCreateEventWriter(): Promise<void>;
4
+ }
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
+ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
17
+ var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
18
+ var _testUtils = require("@sprucelabs/test-utils");
19
+ var _AbstractCliTest2 = _interopRequireDefault(require("../../../tests/AbstractCliTest"));
20
+ var _dec, _class;
21
+ 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); }; }
22
+ 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; } }
23
+ var EventWriterTest = (_dec = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
24
+ (0, _inherits2["default"])(EventWriterTest, _AbstractCliTest);
25
+ var _super = _createSuper(EventWriterTest);
26
+ function EventWriterTest() {
27
+ (0, _classCallCheck2["default"])(this, EventWriterTest);
28
+ return _super.apply(this, arguments);
29
+ }
30
+ (0, _createClass2["default"])(EventWriterTest, null, [{
31
+ key: "canCreateEventWriter",
32
+ value: function () {
33
+ var _canCreateEventWriter = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
34
+ var _permWriter$writeType;
35
+ var writer, name, namespace, contractId1, contractId2, permissionId1, permissionId2, sig, permWriter, results, match, imported;
36
+ return _regenerator["default"].wrap(function _callee$(_context) {
37
+ while (1) {
38
+ switch (_context.prev = _context.next) {
39
+ case 0:
40
+ _context.next = 2;
41
+ return this.FeatureFixture().installCachedFeatures('events');
42
+ case 2:
43
+ writer = this.writers.Writer('event', {
44
+ fileDescriptions: []
45
+ });
46
+ name = 'My event';
47
+ namespace = 'appointments';
48
+ contractId1 = (0, _testUtils.generateId)();
49
+ contractId2 = (0, _testUtils.generateId)();
50
+ permissionId1 = (0, _testUtils.generateId)();
51
+ permissionId2 = (0, _testUtils.generateId)();
52
+ sig = {
53
+ isGlobal: true,
54
+ emitPermissions: {
55
+ contractId: contractId1,
56
+ permissionIdsAny: [permissionId1]
57
+ },
58
+ listenPermissions: {
59
+ contractId: contractId2,
60
+ permissionIdsAny: [permissionId2]
61
+ }
62
+ };
63
+ permWriter = this.writers.Writer('permission', {
64
+ fileDescriptions: []
65
+ }); //@ts-ignore
66
+ _context.next = 13;
67
+ return permWriter.writeTypesFile(this.cwd, (_permWriter$writeType = {}, (0, _defineProperty2["default"])(_permWriter$writeType, contractId1, [permissionId1]), (0, _defineProperty2["default"])(_permWriter$writeType, contractId2, [permissionId2]), _permWriter$writeType));
68
+ case 13:
69
+ _context.next = 15;
70
+ return writer.writeContracts(this.resolveHashSprucePath('events'), {
71
+ eventBuilderFile: '@sprucelabs/mercury-types',
72
+ schemaTemplateItems: [],
73
+ shouldImportCoreEvents: false,
74
+ skillEventContractTypesFile: '',
75
+ eventContractTemplateItems: [{
76
+ imports: [{
77
+ importAs: '{ buildEventContract }',
78
+ "package": '@sprucelabs/mercury-types'
79
+ }],
80
+ isLocal: true,
81
+ nameCamel: _spruceSkillUtils.namesUtil.toCamel(name),
82
+ namePascal: _spruceSkillUtils.namesUtil.toPascal(name),
83
+ namespace: namespace,
84
+ namespaceCamel: _spruceSkillUtils.namesUtil.toCamel(namespace),
85
+ namespacePascal: _spruceSkillUtils.namesUtil.toPascal(namespace),
86
+ version: _spruceSkillUtils.versionUtil.generateVersion().constValue,
87
+ eventSignatures: {
88
+ test: sig
89
+ }
90
+ }]
91
+ });
92
+ case 15:
93
+ results = _context.sent;
94
+ match = results[0];
95
+ _context.next = 19;
96
+ return this.Service('import').importDefault(match.path);
97
+ case 19:
98
+ imported = _context.sent;
99
+ _testUtils.assert.isEqualDeep(imported.eventSignatures.test, sig);
100
+ case 21:
101
+ case "end":
102
+ return _context.stop();
103
+ }
104
+ }
105
+ }, _callee, this);
106
+ }));
107
+ function canCreateEventWriter() {
108
+ return _canCreateEventWriter.apply(this, arguments);
109
+ }
110
+ return canCreateEventWriter;
111
+ }()
112
+ }]);
113
+ return EventWriterTest;
114
+ }(_AbstractCliTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "canCreateEventWriter", [_dec], Object.getOwnPropertyDescriptor(_class, "canCreateEventWriter"), _class)), _class));
115
+ exports["default"] = EventWriterTest;
116
+ //# sourceMappingURL=EventWriter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventWriter.test.js","names":["EventWriterTest","test","FeatureFixture","installCachedFeatures","writer","writers","Writer","fileDescriptions","name","namespace","contractId1","generateId","contractId2","permissionId1","permissionId2","sig","isGlobal","emitPermissions","contractId","permissionIdsAny","listenPermissions","permWriter","writeTypesFile","cwd","writeContracts","resolveHashSprucePath","eventBuilderFile","schemaTemplateItems","shouldImportCoreEvents","skillEventContractTypesFile","eventContractTemplateItems","imports","importAs","isLocal","nameCamel","namesUtil","toCamel","namePascal","toPascal","namespaceCamel","namespacePascal","version","versionUtil","generateVersion","constValue","eventSignatures","results","match","Service","importDefault","path","imported","assert","isEqualDeep","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/events/EventWriter.test.ts"],"sourcesContent":["import { namesUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { EventSignatureTemplateItem } from '@sprucelabs/spruce-templates'\nimport { test, assert, generateId } from '@sprucelabs/test-utils'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\n\nexport default class EventWriterTest extends AbstractCliTest {\n\t@test()\n\tprotected static async canCreateEventWriter() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tconst writer = this.writers.Writer('event', { fileDescriptions: [] })\n\t\tconst name = 'My event'\n\t\tconst namespace = 'appointments'\n\n\t\tconst contractId1 = generateId() as any\n\t\tconst contractId2 = generateId() as any\n\t\tconst permissionId1 = generateId() as any\n\t\tconst permissionId2 = generateId() as any\n\n\t\tconst sig: EventSignatureTemplateItem = {\n\t\t\tisGlobal: true,\n\t\t\temitPermissions: {\n\t\t\t\tcontractId: contractId1,\n\t\t\t\tpermissionIdsAny: [permissionId1],\n\t\t\t},\n\t\t\tlistenPermissions: {\n\t\t\t\tcontractId: contractId2,\n\t\t\t\tpermissionIdsAny: [permissionId2],\n\t\t\t},\n\t\t}\n\n\t\tconst permWriter = this.writers.Writer('permission', {\n\t\t\tfileDescriptions: [],\n\t\t})\n\n\t\t//@ts-ignore\n\t\tawait permWriter.writeTypesFile(this.cwd, {\n\t\t\t[contractId1]: [permissionId1],\n\t\t\t[contractId2]: [permissionId2],\n\t\t})\n\n\t\tconst results = await writer.writeContracts(\n\t\t\tthis.resolveHashSprucePath('events'),\n\t\t\t{\n\t\t\t\teventBuilderFile: '@sprucelabs/mercury-types',\n\t\t\t\tschemaTemplateItems: [],\n\t\t\t\tshouldImportCoreEvents: false,\n\t\t\t\tskillEventContractTypesFile: '',\n\t\t\t\teventContractTemplateItems: [\n\t\t\t\t\t{\n\t\t\t\t\t\timports: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\timportAs: '{ buildEventContract }',\n\t\t\t\t\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tisLocal: true,\n\t\t\t\t\t\tnameCamel: namesUtil.toCamel(name),\n\t\t\t\t\t\tnamePascal: namesUtil.toPascal(name),\n\t\t\t\t\t\tnamespace,\n\t\t\t\t\t\tnamespaceCamel: namesUtil.toCamel(namespace),\n\t\t\t\t\t\tnamespacePascal: namesUtil.toPascal(namespace),\n\t\t\t\t\t\tversion: versionUtil.generateVersion().constValue,\n\t\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t\ttest: sig,\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\n\t\tconst match = results[0]\n\t\tconst imported = await this.Service('import').importDefault(match.path)\n\t\tassert.isEqualDeep(imported.eventSignatures.test, sig)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAEA;AACA;AAA4D;AAAA;AAAA;AAAA,IAEvCA,eAAe,WAClC,IAAAC,eAAI,GAAE;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;MAAA,0GAAP;QAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,IAAI,CAACC,cAAc,EAAE,CAACC,qBAAqB,CAAC,QAAQ,CAAC;cAAA;gBACrDC,MAAM,GAAG,IAAI,CAACC,OAAO,CAACC,MAAM,CAAC,OAAO,EAAE;kBAAEC,gBAAgB,EAAE;gBAAG,CAAC,CAAC;gBAC/DC,IAAI,GAAG,UAAU;gBACjBC,SAAS,GAAG,cAAc;gBAE1BC,WAAW,GAAG,IAAAC,qBAAU,GAAE;gBAC1BC,WAAW,GAAG,IAAAD,qBAAU,GAAE;gBAC1BE,aAAa,GAAG,IAAAF,qBAAU,GAAE;gBAC5BG,aAAa,GAAG,IAAAH,qBAAU,GAAE;gBAE5BI,GAA+B,GAAG;kBACvCC,QAAQ,EAAE,IAAI;kBACdC,eAAe,EAAE;oBAChBC,UAAU,EAAER,WAAW;oBACvBS,gBAAgB,EAAE,CAACN,aAAa;kBACjC,CAAC;kBACDO,iBAAiB,EAAE;oBAClBF,UAAU,EAAEN,WAAW;oBACvBO,gBAAgB,EAAE,CAACL,aAAa;kBACjC;gBACD,CAAC;gBAEKO,UAAU,GAAG,IAAI,CAAChB,OAAO,CAACC,MAAM,CAAC,YAAY,EAAE;kBACpDC,gBAAgB,EAAE;gBACnB,CAAC,CAAC,EAEF;gBAAA;gBAAA,OACMc,UAAU,CAACC,cAAc,CAAC,IAAI,CAACC,GAAG,uFACtCb,WAAW,EAAG,CAACG,aAAa,CAAC,2DAC7BD,WAAW,EAAG,CAACE,aAAa,CAAC,0BAC7B;cAAA;gBAAA;gBAAA,OAEoBV,MAAM,CAACoB,cAAc,CAC1C,IAAI,CAACC,qBAAqB,CAAC,QAAQ,CAAC,EACpC;kBACCC,gBAAgB,EAAE,2BAA2B;kBAC7CC,mBAAmB,EAAE,EAAE;kBACvBC,sBAAsB,EAAE,KAAK;kBAC7BC,2BAA2B,EAAE,EAAE;kBAC/BC,0BAA0B,EAAE,CAC3B;oBACCC,OAAO,EAAE,CACR;sBACCC,QAAQ,EAAE,wBAAwB;sBAClC,WAAS;oBACV,CAAC,CACD;oBACDC,OAAO,EAAE,IAAI;oBACbC,SAAS,EAAEC,2BAAS,CAACC,OAAO,CAAC5B,IAAI,CAAC;oBAClC6B,UAAU,EAAEF,2BAAS,CAACG,QAAQ,CAAC9B,IAAI,CAAC;oBACpCC,SAAS,EAATA,SAAS;oBACT8B,cAAc,EAAEJ,2BAAS,CAACC,OAAO,CAAC3B,SAAS,CAAC;oBAC5C+B,eAAe,EAAEL,2BAAS,CAACG,QAAQ,CAAC7B,SAAS,CAAC;oBAC9CgC,OAAO,EAAEC,6BAAW,CAACC,eAAe,EAAE,CAACC,UAAU;oBACjDC,eAAe,EAAE;sBAChB5C,IAAI,EAAEc;oBACP;kBACD,CAAC;gBAEH,CAAC,CACD;cAAA;gBA5BK+B,OAAO;gBA8BPC,KAAK,GAAGD,OAAO,CAAC,CAAC,CAAC;gBAAA;gBAAA,OACD,IAAI,CAACE,OAAO,CAAC,QAAQ,CAAC,CAACC,aAAa,CAACF,KAAK,CAACG,IAAI,CAAC;cAAA;gBAAjEC,QAAQ;gBACdC,iBAAM,CAACC,WAAW,CAACF,QAAQ,CAACN,eAAe,CAAC5C,IAAI,EAAEc,GAAG,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACtD;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;EAAA;AAAA,EApE2CuC,4BAAe;AAAA"}
@@ -1,4 +1,4 @@
1
- import AbstractSkillTest from '../../tests/AbstractSkillTest';
1
+ import AbstractSkillTest from '../../../tests/AbstractSkillTest';
2
2
  export default class ListeningToCoreEventsTest extends AbstractSkillTest {
3
3
  protected static skillCacheKey: string;
4
4
  protected static canListenToDidInstallWithoutErroring(): Promise<void>;
@@ -15,7 +15,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
15
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
16
  var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
17
17
  var _testUtils = require("@sprucelabs/test-utils");
18
- var _AbstractSkillTest2 = _interopRequireDefault(require("../../tests/AbstractSkillTest"));
18
+ var _AbstractSkillTest2 = _interopRequireDefault(require("../../../tests/AbstractSkillTest"));
19
19
  var _dec, _dec2, _class, _class2;
20
20
  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); }; }
21
21
  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; } }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListeningToCoreEvents.test.js","names":["ListeningToCoreEventsTest","test","Action","execute","eventName","namespace","version","results","assert","isFalsy","errors","getSkillFixture","registerCurrentSkill","name","local","response","AbstractSkillTest"],"sources":["../../../../src/__tests__/behavioral/events/ListeningToCoreEvents.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test-utils'\nimport AbstractSkillTest from '../../../tests/AbstractSkillTest'\n\nexport default class ListeningToCoreEventsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async canListenToDidInstallWithoutErroring() {\n\t\tconst results = await this.Action('event', 'listen').execute({\n\t\t\teventName: 'did-install',\n\t\t\tnamespace: 'mercury',\n\t\t\tversion: 'v2020_12_25',\n\t\t})\n\n\t\tassert.isFalsy(results.errors?.[0])\n\t}\n\n\t@test()\n\tprotected static async canBootASkillWithACoreListener() {\n\t\tawait this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'global listen test',\n\t\t})\n\t\tconst response = await this.Action('skill', 'boot').execute({ local: true })\n\t\tassert.isFalsy(response.errors)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AAAgE;AAAA;AAAA;AAAA,IAE3CA,yBAAyB,WAG5C,IAAAC,eAAI,GAAE,UAWN,IAAAA,eAAI,GAAE;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;MAAA,0HAXP;QAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEuB,IAAI,CAACC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAACC,OAAO,CAAC;kBAC5DC,SAAS,EAAE,aAAa;kBACxBC,SAAS,EAAE,SAAS;kBACpBC,OAAO,EAAE;gBACV,CAAC,CAAC;cAAA;gBAJIC,OAAO;gBAMbC,iBAAM,CAACC,OAAO,oBAACF,OAAO,CAACG,MAAM,oDAAd,gBAAiB,CAAC,CAAC,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACnC;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,oHAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,IAAI,CAACC,eAAe,EAAE,CAACC,oBAAoB,CAAC;kBACjDC,IAAI,EAAE;gBACP,CAAC,CAAC;cAAA;gBAAA;gBAAA,OACqB,IAAI,CAACX,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAACC,OAAO,CAAC;kBAAEW,KAAK,EAAE;gBAAK,CAAC,CAAC;cAAA;gBAAtEC,QAAQ;gBACdP,iBAAM,CAACC,OAAO,CAACM,QAAQ,CAACL,MAAM,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAC/B;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;EAAA;AAAA,EArBqDM,8BAAiB,8DACtC,QAAQ;AAAA"}
@@ -1,4 +1,4 @@
1
- import AbstractEventTest from '../../tests/AbstractEventTest';
1
+ import AbstractEventTest from '../../../tests/AbstractEventTest';
2
2
  export default class RegisteringEventsOnBootTest extends AbstractEventTest {
3
3
  protected static beforeEach(): Promise<void>;
4
4
  protected static registeringEventsOnBoot(): Promise<void>;
@@ -17,8 +17,8 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
17
17
  var _spruceEventUtils = require("@sprucelabs/spruce-event-utils");
18
18
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
19
19
  var _testUtils = require("@sprucelabs/test-utils");
20
- var _AbstractEventTest2 = _interopRequireDefault(require("../../tests/AbstractEventTest"));
21
- var _constants = require("../../tests/constants");
20
+ var _AbstractEventTest2 = _interopRequireDefault(require("../../../tests/AbstractEventTest"));
21
+ var _constants = require("../../../tests/constants");
22
22
  var _dec, _class;
23
23
  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); }; }
24
24
  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; } }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisteringEventsOnBoot.test.js","names":["EVENT_NAME_READABLE","EVENT_NAME","EVENT_CAMEL","RegisteringEventsOnBootTest","test","people","loginAsDemoPerson","DEMO_NUMBER_EVENTS_ON_BOOT","seedDummySkillRegisterCurrentSkillAndInstallToOrg","skill2","currentSkill","Action","execute","nameReadable","nameKebab","nameCamel","copyEventBuildersAndPermissions","local","boot","connectToApi","skillId","id","apiKey","client","Store","apiClientFactory","fetchEventContracts","contracts","meta","kill","version","versionUtil","generateVersion","constValue","name","eventNameUtil","join","eventNamespace","slug","eventName","assert","isTrue","length","namespace","namesUtil","toPascal","sig","eventContractUtil","getSignatureByName","doesInclude","emitPayloadSchema","responsePayloadSchema","emitPermissionContract","listenPermissionContract","AbstractEventTest"],"sources":["../../../../src/__tests__/behavioral/events/RegisteringEventsOnBoot.test.ts"],"sourcesContent":["import {\n\teventContractUtil,\n\teventNameUtil,\n} from '@sprucelabs/spruce-event-utils'\nimport { namesUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport AbstractEventTest from '../../../tests/AbstractEventTest'\nimport { DEMO_NUMBER_EVENTS_ON_BOOT } from '../../../tests/constants'\n\nconst EVENT_NAME_READABLE = 'did book appointment'\nconst EVENT_NAME = 'did-book-appointment'\nconst EVENT_CAMEL = 'didBookAppointment'\n\nexport default class RegisteringEventsOnBootTest extends AbstractEventTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tawait this.people.loginAsDemoPerson(DEMO_NUMBER_EVENTS_ON_BOOT)\n\t}\n\n\t@test()\n\tprotected static async registeringEventsOnBoot() {\n\t\tconst { skill2, currentSkill } =\n\t\t\tawait this.seedDummySkillRegisterCurrentSkillAndInstallToOrg()\n\n\t\tawait this.Action('event', 'create').execute({\n\t\t\tnameReadable: EVENT_NAME_READABLE,\n\t\t\tnameKebab: EVENT_NAME,\n\t\t\tnameCamel: EVENT_CAMEL,\n\t\t})\n\n\t\tawait this.copyEventBuildersAndPermissions(EVENT_NAME)\n\n\t\tawait this.Action('event', 'sync').execute({})\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tconst client = await this.connectToApi({\n\t\t\tskillId: skill2.id,\n\t\t\tapiKey: skill2.apiKey,\n\t\t})\n\n\t\tconst { contracts } = await this.Store('event', {\n\t\t\tapiClientFactory: async () => client,\n\t\t}).fetchEventContracts()\n\n\t\tboot.meta?.kill()\n\n\t\tconst version = versionUtil.generateVersion().constValue\n\t\tconst name = eventNameUtil.join({\n\t\t\teventNamespace: currentSkill.slug,\n\t\t\teventName: EVENT_NAME,\n\t\t\tversion,\n\t\t})\n\n\t\tassert.isTrue(contracts.length >= 2)\n\n\t\tconst namespace = namesUtil.toPascal(currentSkill.slug)\n\t\tconst sig = eventContractUtil.getSignatureByName(contracts[1], name)\n\n\t\tassert.doesInclude(sig.emitPayloadSchema, {\n\t\t\tid: 'didBookAppointmentEmitTargetAndPayload',\n\t\t\tversion,\n\t\t\tnamespace,\n\t\t})\n\n\t\tassert.doesInclude(sig.responsePayloadSchema, {\n\t\t\tid: 'myFantasticallyAmazingEventResponsePayload',\n\t\t\tversion,\n\t\t\tnamespace,\n\t\t})\n\t\tassert.doesInclude(sig.emitPermissionContract, {\n\t\t\tid: 'myFantasticallyAmazingEventEmitPermissions',\n\t\t\tname: 'my fantastically amazing event',\n\t\t})\n\n\t\tassert.doesInclude(sig.listenPermissionContract, {\n\t\t\tid: 'myFantasticallyAmazingEventListenPermissions',\n\t\t\tname: 'my fantastically amazing event',\n\t\t})\n\t}\n}\n"],"mappings":"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"}
@@ -1,11 +1,10 @@
1
- import AbstractSkillTest from '../../tests/AbstractSkillTest';
2
- import { RegisteredSkill } from '../../types/cli.types';
1
+ import AbstractSkillTest from '../../../tests/AbstractSkillTest';
2
+ import { RegisteredSkill } from '../../../types/cli.types';
3
3
  export default class RegisteringGlobalEventsTest extends AbstractSkillTest {
4
4
  protected static skillCacheKey: string;
5
5
  protected static skill: RegisteredSkill;
6
6
  protected static beforeAll(): Promise<void>;
7
7
  protected static afterAll(): Promise<void>;
8
- private static resetAccount;
9
8
  protected static canCreateGlobalEvent(): Promise<void>;
10
9
  protected static registersGloballyOnBoot(): Promise<void>;
11
10
  protected static canSyncGlobalEvents(): Promise<void>;
@@ -18,9 +18,9 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
18
18
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
19
19
  var _testUtils = require("@sprucelabs/test-utils");
20
20
  var _dotenv = _interopRequireDefault(require("dotenv"));
21
- var _AbstractSkillTest2 = _interopRequireDefault(require("../../tests/AbstractSkillTest"));
22
- var _constants = require("../../tests/constants");
23
- var _test = _interopRequireDefault(require("../../tests/utilities/test.utility"));
21
+ var _AbstractSkillTest2 = _interopRequireDefault(require("../../../tests/AbstractSkillTest"));
22
+ var _constants = require("../../../tests/constants");
23
+ var _test = _interopRequireDefault(require("../../../tests/utilities/test.utility"));
24
24
  var _dec, _dec2, _dec3, _class, _class2;
25
25
  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); }; }
26
26
  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; } }
@@ -51,26 +51,23 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
51
51
  _context.next = 4;
52
52
  return this.people.loginAsDemoPerson(_constants.DEMO_NUMBER_GLOBAL_EVENTS);
53
53
  case 4:
54
- _context.next = 6;
55
- return this.resetAccount();
56
- case 6:
57
54
  orgFixture = this.getOrganizationFixture();
58
55
  skillFixture = this.getSkillFixture();
59
- _context.next = 10;
56
+ _context.next = 8;
60
57
  return orgFixture.seedDemoOrg({
61
58
  name: 'my org'
62
59
  });
63
- case 10:
60
+ case 8:
64
61
  org = _context.sent;
65
- _context.next = 13;
62
+ _context.next = 11;
66
63
  return skillFixture.registerCurrentSkill({
67
64
  name: 'heartwood test'
68
65
  });
69
- case 13:
66
+ case 11:
70
67
  this.skill = _context.sent;
71
- _context.next = 16;
68
+ _context.next = 14;
72
69
  return orgFixture.installSkillAtOrganization(this.skill.id, org.id);
73
- case 16:
70
+ case 14:
74
71
  case "end":
75
72
  return _context.stop();
76
73
  }
@@ -93,9 +90,6 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
93
90
  _context2.next = 2;
94
91
  return (0, _get2["default"])((0, _getPrototypeOf2["default"])(RegisteringGlobalEventsTest), "afterAll", this).call(this);
95
92
  case 2:
96
- _context2.next = 4;
97
- return this.resetAccount();
98
- case 4:
99
93
  case "end":
100
94
  return _context2.stop();
101
95
  }
@@ -107,35 +101,16 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
107
101
  }
108
102
  return afterAll;
109
103
  }()
110
- }, {
111
- key: "resetAccount",
112
- value: function () {
113
- var _resetAccount = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
114
- return _regenerator["default"].wrap(function _callee3$(_context3) {
115
- while (1) {
116
- switch (_context3.prev = _context3.next) {
117
- case 0:
118
- case "end":
119
- return _context3.stop();
120
- }
121
- }
122
- }, _callee3);
123
- }));
124
- function resetAccount() {
125
- return _resetAccount.apply(this, arguments);
126
- }
127
- return resetAccount;
128
- }()
129
104
  }, {
130
105
  key: "canCreateGlobalEvent",
131
106
  value: function () {
132
- var _canCreateGlobalEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
107
+ var _canCreateGlobalEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
133
108
  var results, optionsFile, importedOptions, version, contractFile, importedContract, sig;
134
- return _regenerator["default"].wrap(function _callee4$(_context4) {
109
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
135
110
  while (1) {
136
- switch (_context4.prev = _context4.next) {
111
+ switch (_context3.prev = _context3.next) {
137
112
  case 0:
138
- _context4.next = 2;
113
+ _context3.next = 2;
139
114
  return this.Action('event', 'create').execute({
140
115
  isGlobal: true,
141
116
  nameReadable: EVENT_NAME_READABLE,
@@ -143,31 +118,31 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
143
118
  nameCamel: EVENT_CAMEL
144
119
  });
145
120
  case 2:
146
- results = _context4.sent;
121
+ results = _context3.sent;
147
122
  _testUtils.assert.isFalsy(results.errors);
148
123
  optionsFile = _test["default"].assertFileByNameInGeneratedFiles('event.options.ts', results.files);
149
- _context4.next = 7;
124
+ _context3.next = 7;
150
125
  return this.Service('import').importDefault(optionsFile);
151
126
  case 7:
152
- importedOptions = _context4.sent;
127
+ importedOptions = _context3.sent;
153
128
  _testUtils.assert.isEqualDeep(importedOptions, {
154
129
  isGlobal: true
155
130
  });
156
131
  version = _spruceSkillUtils.versionUtil.generateVersion().dirValue;
157
132
  contractFile = _test["default"].assertFileByNameInGeneratedFiles("".concat(EVENT_CAMEL, ".").concat(version, ".contract.ts"), results.files);
158
- _context4.next = 13;
133
+ _context3.next = 13;
159
134
  return this.Service('import').importDefault(contractFile);
160
135
  case 13:
161
- importedContract = _context4.sent;
136
+ importedContract = _context3.sent;
162
137
  sig = importedContract.eventSignatures["".concat(this.skill.slug, ".").concat(EVENT_NAME, "::").concat(version)];
163
138
  _testUtils.assert.isTrue(sig.isGlobal);
164
139
  _testUtils.assert.isTruthy(sig.emitPayloadSchema);
165
140
  case 17:
166
141
  case "end":
167
- return _context4.stop();
142
+ return _context3.stop();
168
143
  }
169
144
  }
170
- }, _callee4, this);
145
+ }, _callee3, this);
171
146
  }));
172
147
  function canCreateGlobalEvent() {
173
148
  return _canCreateGlobalEvent.apply(this, arguments);
@@ -177,41 +152,41 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
177
152
  }, {
178
153
  key: "registersGloballyOnBoot",
179
154
  value: function () {
180
- var _registersGloballyOnBoot = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
155
+ var _registersGloballyOnBoot = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
181
156
  var _boot$meta;
182
157
  var boot, client, contractResults, contracts, version, eventName;
183
- return _regenerator["default"].wrap(function _callee6$(_context6) {
158
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
184
159
  while (1) {
185
- switch (_context6.prev = _context6.next) {
160
+ switch (_context5.prev = _context5.next) {
186
161
  case 0:
187
- _context6.next = 2;
162
+ _context5.next = 2;
188
163
  return this.Action('skill', 'boot').execute({
189
164
  local: true
190
165
  });
191
166
  case 2:
192
- boot = _context6.sent;
193
- _context6.next = 5;
167
+ boot = _context5.sent;
168
+ _context5.next = 5;
194
169
  return this.connectToApi({
195
170
  skillId: this.skill.id,
196
171
  apiKey: this.skill.apiKey
197
172
  });
198
173
  case 5:
199
- client = _context6.sent;
200
- _context6.next = 8;
174
+ client = _context5.sent;
175
+ _context5.next = 8;
201
176
  return this.Store('event', {
202
177
  apiClientFactory: function () {
203
- var _apiClientFactory = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
204
- return _regenerator["default"].wrap(function _callee5$(_context5) {
178
+ var _apiClientFactory = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
179
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
205
180
  while (1) {
206
- switch (_context5.prev = _context5.next) {
181
+ switch (_context4.prev = _context4.next) {
207
182
  case 0:
208
- return _context5.abrupt("return", client);
183
+ return _context4.abrupt("return", client);
209
184
  case 1:
210
185
  case "end":
211
- return _context5.stop();
186
+ return _context4.stop();
212
187
  }
213
188
  }
214
- }, _callee5);
189
+ }, _callee4);
215
190
  }));
216
191
  function apiClientFactory() {
217
192
  return _apiClientFactory.apply(this, arguments);
@@ -220,7 +195,7 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
220
195
  }()
221
196
  }).fetchEventContracts();
222
197
  case 8:
223
- contractResults = _context6.sent;
198
+ contractResults = _context5.sent;
224
199
  contracts = contractResults.contracts;
225
200
  (_boot$meta = boot.meta) === null || _boot$meta === void 0 ? void 0 : _boot$meta.kill();
226
201
  version = _spruceSkillUtils.versionUtil.generateVersion().constValue;
@@ -228,10 +203,10 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
228
203
  _testUtils.assert.isTruthy(contracts[1].eventSignatures[eventName]);
229
204
  case 14:
230
205
  case "end":
231
- return _context6.stop();
206
+ return _context5.stop();
232
207
  }
233
208
  }
234
- }, _callee6, this);
209
+ }, _callee5, this);
235
210
  }));
236
211
  function registersGloballyOnBoot() {
237
212
  return _registersGloballyOnBoot.apply(this, arguments);
@@ -241,25 +216,25 @@ var RegisteringGlobalEventsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
241
216
  }, {
242
217
  key: "canSyncGlobalEvents",
243
218
  value: function () {
244
- var _canSyncGlobalEvents = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
219
+ var _canSyncGlobalEvents = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
245
220
  var results;
246
- return _regenerator["default"].wrap(function _callee7$(_context7) {
221
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
247
222
  while (1) {
248
- switch (_context7.prev = _context7.next) {
223
+ switch (_context6.prev = _context6.next) {
249
224
  case 0:
250
- _context7.next = 2;
225
+ _context6.next = 2;
251
226
  return this.Action('event', 'sync').execute({});
252
227
  case 2:
253
- results = _context7.sent;
228
+ results = _context6.sent;
254
229
  _testUtils.assert.isFalsy(results.errors);
255
- _context7.next = 6;
230
+ _context6.next = 6;
256
231
  return this.Service('typeChecker').check(this.resolveHashSprucePath('events/events.contract.ts'));
257
232
  case 6:
258
233
  case "end":
259
- return _context7.stop();
234
+ return _context6.stop();
260
235
  }
261
236
  }
262
- }, _callee7, this);
237
+ }, _callee6, this);
263
238
  }));
264
239
  function canSyncGlobalEvents() {
265
240
  return _canSyncGlobalEvents.apply(this, arguments);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisteringGlobalEvents.test.js","names":["dotenv","config","stamp","Date","getTime","EVENT_NAME_READABLE","EVENT_NAME","EVENT_CAMEL","RegisteringGlobalEventsTest","test","people","loginAsDemoPerson","DEMO_NUMBER_GLOBAL_EVENTS","orgFixture","getOrganizationFixture","skillFixture","getSkillFixture","seedDemoOrg","name","org","registerCurrentSkill","skill","installSkillAtOrganization","id","Action","execute","isGlobal","nameReadable","nameKebab","nameCamel","results","assert","isFalsy","errors","optionsFile","testUtil","assertFileByNameInGeneratedFiles","files","Service","importDefault","importedOptions","isEqualDeep","version","versionUtil","generateVersion","dirValue","contractFile","importedContract","sig","eventSignatures","slug","isTrue","isTruthy","emitPayloadSchema","local","boot","connectToApi","skillId","apiKey","client","Store","apiClientFactory","fetchEventContracts","contractResults","contracts","meta","kill","constValue","eventName","check","resolveHashSprucePath","AbstractSkillTest"],"sources":["../../../../src/__tests__/behavioral/events/RegisteringGlobalEvents.test.ts"],"sourcesContent":["import { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport dotenv from 'dotenv'\nimport AbstractSkillTest from '../../../tests/AbstractSkillTest'\nimport { DEMO_NUMBER_GLOBAL_EVENTS } from '../../../tests/constants'\nimport testUtil from '../../../tests/utilities/test.utility'\nimport { RegisteredSkill } from '../../../types/cli.types'\ndotenv.config()\n\nconst stamp = new Date().getTime()\nconst EVENT_NAME_READABLE = 'did book appointment'\nconst EVENT_NAME = `test-register-skill-views${stamp}`\nconst EVENT_CAMEL = `testRegisterSkillViews${stamp}`\n\nexport default class RegisteringGlobalEventsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\tprotected static skill: RegisteredSkill\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\n\t\tawait this.people.loginAsDemoPerson(DEMO_NUMBER_GLOBAL_EVENTS)\n\n\t\tconst orgFixture = this.getOrganizationFixture()\n\t\tconst skillFixture = this.getSkillFixture()\n\n\t\tconst org = await orgFixture.seedDemoOrg({ name: 'my org' })\n\n\t\tthis.skill = await skillFixture.registerCurrentSkill({\n\t\t\tname: 'heartwood test',\n\t\t})\n\n\t\tawait orgFixture.installSkillAtOrganization(this.skill.id, org.id)\n\t}\n\n\tprotected static async afterAll() {\n\t\tawait super.afterAll()\n\t}\n\n\t@test()\n\tprotected static async canCreateGlobalEvent() {\n\t\tconst results = await this.Action('event', 'create').execute({\n\t\t\tisGlobal: true,\n\t\t\tnameReadable: EVENT_NAME_READABLE,\n\t\t\tnameKebab: EVENT_NAME,\n\t\t\tnameCamel: EVENT_CAMEL,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst optionsFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'event.options.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst importedOptions = await this.Service('import').importDefault(\n\t\t\toptionsFile\n\t\t)\n\t\tassert.isEqualDeep(importedOptions, {\n\t\t\tisGlobal: true,\n\t\t})\n\n\t\tconst version = versionUtil.generateVersion().dirValue\n\t\tconst contractFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${EVENT_CAMEL}.${version}.contract.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst importedContract = await this.Service('import').importDefault(\n\t\t\tcontractFile\n\t\t)\n\n\t\tconst sig =\n\t\t\timportedContract.eventSignatures[\n\t\t\t\t`${this.skill.slug}.${EVENT_NAME}::${version}`\n\t\t\t]\n\n\t\tassert.isTrue(sig.isGlobal)\n\t\tassert.isTruthy(sig.emitPayloadSchema)\n\t}\n\n\t@test()\n\tprotected static async registersGloballyOnBoot() {\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tconst client = await this.connectToApi({\n\t\t\tskillId: this.skill.id,\n\t\t\tapiKey: this.skill.apiKey,\n\t\t})\n\n\t\tconst contractResults = await this.Store('event', {\n\t\t\tapiClientFactory: async () => client,\n\t\t}).fetchEventContracts()\n\n\t\tconst contracts = contractResults.contracts\n\n\t\tboot.meta?.kill()\n\n\t\tconst version = versionUtil.generateVersion().constValue\n\t\tconst eventName = `${this.skill.slug}.${EVENT_NAME}::${version}`\n\n\t\tassert.isTruthy(contracts[1].eventSignatures[eventName])\n\t}\n\n\t@test()\n\tprotected static async canSyncGlobalEvents() {\n\t\tconst results = await this.Action('event', 'sync').execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tawait this.Service('typeChecker').check(\n\t\t\tthis.resolveHashSprucePath('events/events.contract.ts')\n\t\t)\n\t}\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import AbstractSkillTest from '../../tests/AbstractSkillTest';
1
+ import AbstractSkillTest from '../../../tests/AbstractSkillTest';
2
2
  export default class SyncingEventsOnlyFromDependenciesTest extends AbstractSkillTest {
3
3
  protected static skillCacheKey: string;
4
4
  protected static doesntSyncAnythingButListenersToStart(): Promise<void>;
@@ -17,7 +17,7 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
17
17
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
18
18
  var _testUtils = require("@sprucelabs/test-utils");
19
19
  var _fsExtra = _interopRequireDefault(require("fs-extra"));
20
- var _AbstractSkillTest2 = _interopRequireDefault(require("../../tests/AbstractSkillTest"));
20
+ var _AbstractSkillTest2 = _interopRequireDefault(require("../../../tests/AbstractSkillTest"));
21
21
  var _dec, _dec2, _class, _class2;
22
22
  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); }; }
23
23
  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; } }