@sprucelabs/spruce-cli 15.2.22 → 15.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/build/.spruce/errors/errors.types.js.map +1 -1
- package/build/.spruce/errors/options.types.js.map +1 -1
- package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
- package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
- package/build/.spruce/events/events.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
- package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
- package/build/.spruce/schemas/schemas.types.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/profileImage.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
- package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
- package/build/.spruce/skill.types.js.map +1 -1
- package/build/GlobalEmitter.js.map +1 -1
- package/build/InFlightEntertainment.js.map +1 -1
- package/build/__tests__/behavioral/AddingADependency.test.js +3 -1
- package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
- package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
- package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
- package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingASkill.test.js +20 -20
- package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +12 -12
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
- package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js +3 -1
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js +4 -2
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
- package/build/__tests__/behavioral/RebuildingASkill.test.js +2 -2
- package/build/__tests__/behavioral/RebuildingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js +6 -4
- package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js +3 -1
- package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js +3 -1
- package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js +5 -3
- package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
- package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingDataStores.test.js.map +1 -1
- package/build/__tests__/behavioral/WatchingSkillViews.test.js +6 -6
- package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.d.ts +5 -0
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +242 -119
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +3 -1
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +1 -1
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
- package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
- package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js +1 -1
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +2 -2
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.d.ts +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +8 -8
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
- package/build/__tests__/behavioral/{UpdatingDependencies.test.d.ts → upgrading/UpdatingDependencies.test.d.ts} +1 -1
- package/build/__tests__/behavioral/{UpdatingDependencies.test.js → upgrading/UpdatingDependencies.test.js} +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -0
- package/build/__tests__/behavioral/{UpdatingDependencies2.test.d.ts → upgrading/UpdatingDependencies2.test.d.ts} +1 -1
- package/build/__tests__/behavioral/{UpdatingDependencies2.test.js → upgrading/UpdatingDependencies2.test.js} +4 -4
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -0
- package/build/__tests__/behavioral/{UpgradingANodeModule.test.d.ts → upgrading/UpgradingANodeModule.test.d.ts} +1 -1
- package/build/__tests__/behavioral/{UpgradingANodeModule.test.js → upgrading/UpgradingANodeModule.test.js} +7 -7
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill.test.js +3 -14
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill2.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill2.test.js +4 -13
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill3.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill3.test.js +6 -6
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill4.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill4.test.js +3 -3
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill5.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingASkill5.test.js +2 -2
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingWithListeners.test.d.ts +0 -0
- package/build/__tests__/behavioral/{skill → upgrading}/UpgradingWithListeners.test.js +4 -8
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -0
- package/build/__tests__/behavioral/{UpgradingWithSandboxFeatureInstalled.test.d.ts → upgrading/UpgradingWithSandboxFeatureInstalled.test.d.ts} +3 -3
- package/build/__tests__/behavioral/{UpgradingWithSandboxFeatureInstalled.test.js → upgrading/UpgradingWithSandboxFeatureInstalled.test.js} +14 -14
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -0
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
- package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
- package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter4.test.js +2 -2
- package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
- package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
- package/build/__tests__/implementation/BuildService.test.js.map +1 -1
- package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
- package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
- package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
- package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
- package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
- package/build/__tests__/implementation/EventStore.test.d.ts +1 -0
- package/build/__tests__/implementation/EventStore.test.js +68 -35
- package/build/__tests__/implementation/EventStore.test.js.map +1 -1
- package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
- package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
- package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/GlobalEmitter.js.map +1 -1
- package/build/__tests__/implementation/Introspection.test.js.map +1 -1
- package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
- package/build/__tests__/implementation/LintService.test.js +2 -2
- package/build/__tests__/implementation/LintService.test.js.map +1 -1
- package/build/__tests__/implementation/ListenerStore.test.d.ts +4 -0
- package/build/__tests__/implementation/ListenerStore.test.js +56 -0
- package/build/__tests__/implementation/ListenerStore.test.js.map +1 -0
- package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
- package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
- package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
- package/build/__tests__/implementation/PkgService.test.js +2 -2
- package/build/__tests__/implementation/PkgService.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
- package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
- package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
- package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
- package/build/__tests__/implementation/StoreFeature.test.js +2 -2
- package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
- package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
- package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
- package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
- package/build/__tests__/implementation/Widgets.test.js.map +1 -1
- package/build/__tests__/support/onTestFileResult.js.map +1 -1
- package/build/__tests__/support/scripts/first.script.js.map +1 -1
- package/build/__tests__/support/scripts/second.script.js.map +1 -1
- package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
- package/build/addons/filePrompt.addon.js.map +1 -1
- package/build/cli.js +1 -1
- package/build/cli.js.map +1 -1
- package/build/components/AbstractComponent.js.map +1 -1
- package/build/components/FormComponent.js.map +1 -1
- package/build/components/QuizComponent.js.map +1 -1
- package/build/constants.js.map +1 -1
- package/build/errors/SpruceError.js.map +1 -1
- package/build/errors/actionCancelled.builder.js.map +1 -1
- package/build/errors/bootError.builder.js.map +1 -1
- package/build/errors/buildFailed.builder.js.map +1 -1
- package/build/errors/cacheNotEnabled.builder.js.map +1 -1
- package/build/errors/commandAborted.builder.js.map +1 -1
- package/build/errors/commandBlocked.builder.js.map +1 -1
- package/build/errors/commandNotImplemented.builder.js.map +1 -1
- package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
- package/build/errors/dependencyExists.builder.js.map +1 -1
- package/build/errors/deployFailed.builder.js.map +1 -1
- package/build/errors/directoryEmpty.builder.js.map +1 -1
- package/build/errors/directoryNotSkill.builder.js.map +1 -1
- package/build/errors/dockerNotStarted.builder.js.map +1 -1
- package/build/errors/executingCommandFailed.builder.js.map +1 -1
- package/build/errors/failedToImport.builder.js.map +1 -1
- package/build/errors/featureNotInstalled.builder.js.map +1 -1
- package/build/errors/fileExists.builder.js.map +1 -1
- package/build/errors/generic.builder.js.map +1 -1
- package/build/errors/invalidCommand.builder.js.map +1 -1
- package/build/errors/invalidEventContract.builder.js.map +1 -1
- package/build/errors/invalidFeatureCode.builder.js.map +1 -1
- package/build/errors/invalidTestDirectory.builder.js.map +1 -1
- package/build/errors/lintFailed.builder.js.map +1 -1
- package/build/errors/mercuryResponseError.builder.js.map +1 -1
- package/build/errors/missingDependencies.builder.js.map +1 -1
- package/build/errors/noOrganizationsFound.builder.js.map +1 -1
- package/build/errors/noSkillsRegistered.builder.js.map +1 -1
- package/build/errors/notImplemented.builder.js.map +1 -1
- package/build/errors/notLoggedIn.builder.js.map +1 -1
- package/build/errors/schemaExists.builder.js.map +1 -1
- package/build/errors/schemaFailedToImport.builder.js.map +1 -1
- package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
- package/build/errors/skillNotFound.builder.js.map +1 -1
- package/build/errors/skillNotRegistered.builder.js.map +1 -1
- package/build/errors/skillViewExists.builder.js.map +1 -1
- package/build/errors/storeExists.builder.js.map +1 -1
- package/build/errors/testFailed.builder.js.map +1 -1
- package/build/errors/themeExists.builder.js.map +1 -1
- package/build/errors/transportAlreadyExists.builder.js.map +1 -1
- package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
- package/build/features/AbstractAction.js.map +1 -1
- package/build/features/AbstractFeature.js.map +1 -1
- package/build/features/ActionExecuter.js.map +1 -1
- package/build/features/ActionFactory.js.map +1 -1
- package/build/features/ActionQuestionAsker.js.map +1 -1
- package/build/features/FeatureCommandAttacher.js.map +1 -1
- package/build/features/FeatureInstaller.js.map +1 -1
- package/build/features/FeatureInstallerFactory.js.map +1 -1
- package/build/features/OverrideActionDecorator.js.map +1 -1
- package/build/features/cache/CacheFeature.js.map +1 -1
- package/build/features/cache/actions/DisableAction.js.map +1 -1
- package/build/features/cache/actions/EnableAction.js.map +1 -1
- package/build/features/cache/constants.js.map +1 -1
- package/build/features/conversation/ConversationFeature.js.map +1 -1
- package/build/features/conversation/actions/CreateAction.js.map +1 -1
- package/build/features/conversation/actions/TestAction.js.map +1 -1
- package/build/features/conversation/stores/ConversationStore.js.map +1 -1
- package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
- package/build/features/dependencies/DependencyFeature.js.map +1 -1
- package/build/features/dependencies/actions/AddAction.js.map +1 -1
- package/build/features/dependencies/actions/ManageAction.js.map +1 -1
- package/build/features/deploy/DeployFeature.js.map +1 -1
- package/build/features/deploy/actions/HerokuAction.js.map +1 -1
- package/build/features/deploy/writers/DeployWriter.js.map +1 -1
- package/build/features/error/ErrorFeature.js.map +1 -1
- package/build/features/error/ParentTestFinder.js.map +1 -1
- package/build/features/error/actions/CreateAction.js.map +1 -1
- package/build/features/error/actions/SyncAction.js.map +1 -1
- package/build/features/error/writers/ErrorWriter.js.map +1 -1
- package/build/features/event/EventFeature.d.ts +1 -0
- package/build/features/event/EventFeature.js +89 -56
- package/build/features/event/EventFeature.js.map +1 -1
- package/build/features/event/actions/CreateAction.js.map +1 -1
- package/build/features/event/actions/ListenAction.d.ts +1 -0
- package/build/features/event/actions/ListenAction.js +23 -31
- package/build/features/event/actions/ListenAction.js.map +1 -1
- package/build/features/event/actions/SetRemoteAction.js.map +1 -1
- package/build/features/event/actions/SyncAction.js.map +1 -1
- package/build/features/event/actions/SyncListenersAction.js.map +1 -1
- package/build/features/event/builders/EventContractBuilder.js.map +1 -1
- package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
- package/build/features/event/services/EventSettingsService.js.map +1 -1
- package/build/features/event/services/RemoteService.js.map +1 -1
- package/build/features/event/stores/EventStore.d.ts +7 -5
- package/build/features/event/stores/EventStore.js +16 -8
- package/build/features/event/stores/EventStore.js.map +1 -1
- package/build/features/event/stores/ListenerStore.d.ts +1 -0
- package/build/features/event/stores/ListenerStore.js +6 -1
- package/build/features/event/stores/ListenerStore.js.map +1 -1
- package/build/features/event/writers/EventWriter.js.map +1 -1
- package/build/features/eventContract/EventContractFeature.js.map +1 -1
- package/build/features/eventContract/actions/PullAction.js.map +1 -1
- package/build/features/feature.utilities.js.map +1 -1
- package/build/features/features.types.js.map +1 -1
- package/build/features/log/LogFeature.js.map +1 -1
- package/build/features/log/actions/CreateTransportAction.js.map +1 -1
- package/build/features/log/writers/LogWriter.js.map +1 -1
- package/build/features/node/NodeFeature.js.map +1 -1
- package/build/features/node/actions/CreateAction.js.map +1 -1
- package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
- package/build/features/node/actions/UpgradeAction.js.map +1 -1
- package/build/features/node/writers/NodeWriter.js.map +1 -1
- package/build/features/onboard/OnboardFeature.js.map +1 -1
- package/build/features/onboard/ScriptLoader.js.map +1 -1
- package/build/features/onboard/ScriptPlayer.js.map +1 -1
- package/build/features/onboard/actions/OnboardAction.js.map +1 -1
- package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
- package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
- package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
- package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
- package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
- package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
- package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
- package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
- package/build/features/organization/OrganizationFeature.js.map +1 -1
- package/build/features/organization/actions/CreateAction.js.map +1 -1
- package/build/features/organization/actions/InstallAction.js.map +1 -1
- package/build/features/organization/stores/OrganizationStore.js.map +1 -1
- package/build/features/person/PersonFeature.js.map +1 -1
- package/build/features/person/actions/LoginAction.js.map +1 -1
- package/build/features/person/actions/LogoutAction.js.map +1 -1
- package/build/features/person/actions/WhoamiAction.js.map +1 -1
- package/build/features/sandbox/SandboxFeature.js.map +1 -1
- package/build/features/sandbox/actions/SetupAction.js.map +1 -1
- package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
- package/build/features/schema/SchemaFeature.js.map +1 -1
- package/build/features/schema/ValueTypeBuilder.js.map +1 -1
- package/build/features/schema/actions/CreateAction.js.map +1 -1
- package/build/features/schema/actions/SyncAction.js.map +1 -1
- package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
- package/build/features/schema/services/SchemaService.js.map +1 -1
- package/build/features/schema/stores/SchemaStore.js.map +1 -1
- package/build/features/schema/utilities/schema.utility.js.map +1 -1
- package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
- package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
- package/build/features/schema/writers/SchemaWriter.js.map +1 -1
- package/build/features/skill/SkillFeature.js.map +1 -1
- package/build/features/skill/actions/BootAction.js.map +1 -1
- package/build/features/skill/actions/CreateAction.js.map +1 -1
- package/build/features/skill/actions/DashboardAction.js.map +1 -1
- package/build/features/skill/actions/LoginAction.js.map +1 -1
- package/build/features/skill/actions/RebuildAction.js.map +1 -1
- package/build/features/skill/actions/RegisterAction.js.map +1 -1
- package/build/features/skill/stores/SkillStore.js.map +1 -1
- package/build/features/skill/updaters/Updater.js.map +1 -1
- package/build/features/skill/writers/SkillWriter.js.map +1 -1
- package/build/features/store/StoreFeature.d.ts +1 -1
- package/build/features/store/StoreFeature.js +15 -14
- package/build/features/store/StoreFeature.js.map +1 -1
- package/build/features/store/actions/CreateAction.js.map +1 -1
- package/build/features/store/actions/SyncAction.js.map +1 -1
- package/build/features/store/stores/StoreStore.js.map +1 -1
- package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
- package/build/features/store/writers/StoreWriter.js.map +1 -1
- package/build/features/test/TestFeature.js.map +1 -1
- package/build/features/test/TestLogItemGenerator.js.map +1 -1
- package/build/features/test/TestReporter.js.map +1 -1
- package/build/features/test/TestRunner.js.map +1 -1
- package/build/features/test/actions/CreateAction.js.map +1 -1
- package/build/features/test/actions/SetupAction.js.map +1 -1
- package/build/features/test/actions/TestAction.js.map +1 -1
- package/build/features/test/test.types.js.map +1 -1
- package/build/features/test/writers/TestWriter.js.map +1 -1
- package/build/features/universalDevDependencies.js.map +1 -1
- package/build/features/universalFileDescriptions.js.map +1 -1
- package/build/features/universalScripts.js.map +1 -1
- package/build/features/validateAndNormalize.utility.d.ts +2 -2
- package/build/features/validateAndNormalize.utility.js +2 -2
- package/build/features/validateAndNormalize.utility.js.map +1 -1
- package/build/features/view/ViewFeature.js.map +1 -1
- package/build/features/view/actions/CreateAction.js.map +1 -1
- package/build/features/view/actions/CreateThemeAction.js.map +1 -1
- package/build/features/view/actions/SyncAction.js.map +1 -1
- package/build/features/view/actions/WatchAction.js.map +1 -1
- package/build/features/view/stores/ViewStore.js.map +1 -1
- package/build/features/view/writers/ViewWriter.js.map +1 -1
- package/build/features/vscode/VsCodeFeature.js.map +1 -1
- package/build/features/vscode/actions/SetupAction.js.map +1 -1
- package/build/features/vscode/services/VsCodeService.js.map +1 -1
- package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
- package/build/features/watch/WatchFeature.js.map +1 -1
- package/build/index.js.map +1 -1
- package/build/interfaces/SpyInterface.js.map +1 -1
- package/build/interfaces/TerminalInterface.js.map +1 -1
- package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
- package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
- package/build/services/BuildService.js.map +1 -1
- package/build/services/CommandService.d.ts +1 -1
- package/build/services/CommandService.js +2 -2
- package/build/services/CommandService.js.map +1 -1
- package/build/services/DependencyService.js.map +1 -1
- package/build/services/GameService.js.map +1 -1
- package/build/services/ImportService.js.map +1 -1
- package/build/services/LintService.js.map +1 -1
- package/build/services/PkgService.js.map +1 -1
- package/build/services/ServiceFactory.js.map +1 -1
- package/build/services/TypeCheckerService.js.map +1 -1
- package/build/stores/AbstractLocalStore.js.map +1 -1
- package/build/stores/AbstractStore.js.map +1 -1
- package/build/stores/StoreFactory.js.map +1 -1
- package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
- package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
- package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
- package/build/tests/AbstractCliTest.d.ts +2 -0
- package/build/tests/AbstractCliTest.js +9 -2
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/AbstractErrorTest.js.map +1 -1
- package/build/tests/AbstractEventTest.js.map +1 -1
- package/build/tests/AbstractSchemaTest.js.map +1 -1
- package/build/tests/AbstractSkillTest.js.map +1 -1
- package/build/tests/AbstractTestTest.js.map +1 -1
- package/build/tests/CommandFaker.d.ts +8 -0
- package/build/tests/CommandFaker.js +54 -0
- package/build/tests/CommandFaker.js.map +1 -0
- package/build/tests/JestJsonParser.js.map +1 -1
- package/build/tests/MockProgramFactory.js.map +1 -1
- package/build/tests/buildTestCache.js.map +1 -1
- package/build/tests/cleanTestCache.js.map +1 -1
- package/build/tests/cleanTestData.js +9 -10
- package/build/tests/cleanTestData.js.map +1 -1
- package/build/tests/constants.d.ts +8 -0
- package/build/tests/constants.js +28 -0
- package/build/tests/constants.js.map +1 -0
- package/build/tests/fixtures/FeatureFixture.js.map +1 -1
- package/build/tests/fixtures/MercuryFixture.js.map +1 -1
- package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
- package/build/tests/fixtures/PersonFixture.js.map +1 -1
- package/build/tests/fixtures/SkillFixture.js.map +1 -1
- package/build/tests/fixtures/ViewFixture.js.map +1 -1
- package/build/tests/utilities/test.utility.js.map +1 -1
- package/build/tests/utilities/uiAssert.utility.js.map +1 -1
- package/build/types/apiClient.types.js.map +1 -1
- package/build/types/cli.types.js.map +1 -1
- package/build/types/graphicsInterface.types.js.map +1 -1
- package/build/updaters/ScriptUpdater.js.map +1 -1
- package/build/utilities/action.utility.js.map +1 -1
- package/build/utilities/apiClient.utility.js.map +1 -1
- package/build/utilities/argParser.utility.js.map +1 -1
- package/build/utilities/commander.utility.js.map +1 -1
- package/build/utilities/duration.utility.js.map +1 -1
- package/build/utilities/eventContractCleaner.utility.js.map +1 -1
- package/build/utilities/form.utility.js.map +1 -1
- package/build/utilities/introspection.utility.js.map +1 -1
- package/build/utilities/isCi.js.map +1 -1
- package/build/utilities/tsConfig.utility.js.map +1 -1
- package/build/utilities/ui.utility.js.map +1 -1
- package/build/widgets/Theme.js.map +1 -1
- package/build/widgets/WidgetFactory.js.map +1 -1
- package/build/widgets/keySelectChoices.js.map +1 -1
- package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
- package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
- package/build/widgets/types/button.types.js.map +1 -1
- package/build/widgets/types/factory.types.js.map +1 -1
- package/build/widgets/types/input.types.js.map +1 -1
- package/build/widgets/types/layout.types.js.map +1 -1
- package/build/widgets/types/menuBar.types.js.map +1 -1
- package/build/widgets/types/popup.types.js.map +1 -1
- package/build/widgets/types/progressBar.types.js.map +1 -1
- package/build/widgets/types/table.types.js.map +1 -1
- package/build/widgets/types/text.types.js.map +1 -1
- package/build/widgets/types/widgets.types.js.map +1 -1
- package/build/widgets/types/window.types.js.map +1 -1
- package/build/widgets/widget.utilities.js.map +1 -1
- package/build/writers/AbstractWriter.js.map +1 -1
- package/build/writers/WriterFactory.js.map +1 -1
- package/package.json +94 -95
- package/src/__tests__/behavioral/AddingADependency.test.ts +2 -1
- package/src/__tests__/behavioral/DeployingASkill.test.ts +20 -20
- package/src/__tests__/behavioral/EnablingAndDisablingCache.test.ts +12 -12
- package/src/__tests__/behavioral/InstallingASkillAtAnOrg.test.ts +2 -1
- package/src/__tests__/behavioral/LoggingInAsASkill.test.ts +3 -2
- package/src/__tests__/behavioral/RebuildingASkill.test.ts +2 -2
- package/src/__tests__/behavioral/RegisteringEventsOnBoot.test.ts +3 -5
- package/src/__tests__/behavioral/RegisteringGlobalEvents.test.ts +2 -1
- package/src/__tests__/behavioral/RegisteringSkillViewOnBoot.test.ts +2 -1
- package/src/__tests__/behavioral/SettingUpASkillForTesting.test.ts +4 -3
- package/src/__tests__/behavioral/WatchingSkillViews.test.ts +6 -6
- package/src/__tests__/behavioral/events/CreatingAListener.test.ts +54 -7
- package/src/__tests__/behavioral/events/CreatingAnEvent.test.ts +2 -1
- package/src/__tests__/behavioral/node/CreatingANodeModule.test.ts +1 -1
- package/src/__tests__/behavioral/skill/CreatingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/stores/CreatingADataStore.test.ts +2 -2
- package/src/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.ts +3 -3
- package/src/__tests__/behavioral/{UpdatingDependencies.test.ts → upgrading/UpdatingDependencies.test.ts} +2 -2
- package/src/__tests__/behavioral/{UpdatingDependencies2.test.ts → upgrading/UpdatingDependencies2.test.ts} +6 -6
- package/src/__tests__/behavioral/{UpgradingANodeModule.test.ts → upgrading/UpgradingANodeModule.test.ts} +7 -7
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingASkill.test.ts +3 -11
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingASkill2.test.ts +4 -7
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingASkill3.test.ts +6 -6
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingASkill4.test.ts +3 -3
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingASkill5.test.ts +2 -2
- package/src/__tests__/behavioral/{skill → upgrading}/UpgradingWithListeners.test.ts +3 -5
- package/src/__tests__/behavioral/{UpgradingWithSandboxFeatureInstalled.test.ts → upgrading/UpgradingWithSandboxFeatureInstalled.test.ts} +5 -5
- package/src/__tests__/implementation/ActionExecuter2.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter4.test.ts +2 -2
- package/src/__tests__/implementation/EventStore.test.ts +17 -1
- package/src/__tests__/implementation/LintService.test.ts +2 -2
- package/src/__tests__/implementation/ListenerStore.test.ts +14 -0
- package/src/__tests__/implementation/PkgService.test.ts +4 -7
- package/src/__tests__/implementation/StoreFeature.test.ts +2 -2
- package/src/cli.ts +1 -1
- package/src/features/AbstractAction.ts +2 -2
- package/src/features/event/EventFeature.ts +14 -11
- package/src/features/event/actions/ListenAction.ts +22 -12
- package/src/features/event/builders/EventContractBuilder.ts +2 -2
- package/src/features/event/stores/EventStore.ts +28 -20
- package/src/features/event/stores/ListenerStore.ts +5 -3
- package/src/features/store/StoreFeature.ts +7 -6
- package/src/features/validateAndNormalize.utility.ts +2 -2
- package/src/services/CommandService.ts +1 -4
- package/src/tests/AbstractCliTest.ts +6 -1
- package/src/tests/CommandFaker.ts +24 -0
- package/src/tests/cleanTestData.ts +2 -19
- package/src/tests/constants.ts +17 -0
- package/build/__tests__/behavioral/UpdatingDependencies.test.js.map +0 -1
- package/build/__tests__/behavioral/UpdatingDependencies2.test.js.map +0 -1
- package/build/__tests__/behavioral/UpgradingANodeModule.test.js.map +0 -1
- package/build/__tests__/behavioral/UpgradingWithSandboxFeatureInstalled.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill2.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill3.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill4.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingASkill5.test.js.map +0 -1
- package/build/__tests__/behavioral/skill/UpgradingWithListeners.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"CommanderCommandResultMapper.test.js","names":["CommanderCommandResultMapperTest","assert","isTruthy","commanderUtil","results","mapIncomingToOptions","isEqualDeep","Command","undefined","optionsSchema","name","email","AbstractSpruceTest","id","fields","type"],"sources":["../../../src/__tests__/implementation/CommanderCommandResultMapper.test.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport AbstractSpruceTest, { test, assert } from '@sprucelabs/test'\nimport { Command } from 'commander'\nimport commanderUtil from '../../utilities/commander.utility'\n\nexport default class CommanderCommandResultMapperTest extends AbstractSpruceTest {\n\tprivate static readonly optionsSchema = buildSchema({\n\t\tid: 'optionsSchema',\n\t\tfields: { name: { type: 'text' }, email: { type: 'text' } },\n\t})\n\n\t@test()\n\tprotected static async utilExists() {\n\t\tassert.isTruthy(commanderUtil)\n\t}\n\n\t@test()\n\tprotected static async canTakeOptionsAndPassThemBack() {\n\t\tconst results = commanderUtil.mapIncomingToOptions({})\n\t\tassert.isEqualDeep(results, {})\n\t}\n\n\t@test()\n\tprotected static async handlesNoArgs() {\n\t\tconst results = commanderUtil.mapIncomingToOptions()\n\t\tassert.isEqualDeep(results, {})\n\t}\n\n\t@test()\n\tprotected static async dropCommanderInstanceFromResults() {\n\t\tconst results = commanderUtil.mapIncomingToOptions({}, new Command())\n\t\tassert.isEqualDeep(results, {})\n\t}\n\n\t@test()\n\tprotected static async handlesUndefinedSchema() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t{},\n\t\t\tnew Command(),\n\t\t\tundefined\n\t\t)\n\t\tassert.isEqualDeep(results, {})\n\t}\n\n\t@test()\n\tprotected static async handlesSchemBeingAtTheEnd() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t{},\n\t\t\tnew Command(),\n\t\t\tthis.optionsSchema\n\t\t)\n\t\tassert.isEqualDeep(results, {})\n\t}\n\n\t@test()\n\tprotected static async fristStringArgGetsDroppedIntoFirstField() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t'my great skill',\n\t\t\t{},\n\t\t\tnew Command(),\n\t\t\tthis.optionsSchema\n\t\t)\n\t\tassert.isEqualDeep(results, {\n\t\t\tname: 'my great skill',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async mixesInFirstArgWithPassedArgs() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t'my great skill',\n\t\t\t{\n\t\t\t\temail: 't@t.com',\n\t\t\t},\n\t\t\tnew Command(),\n\t\t\tthis.optionsSchema\n\t\t)\n\t\tassert.isEqualDeep(results, {\n\t\t\tname: 'my great skill',\n\t\t\temail: 't@t.com',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async mixesInTwoArgWithPassedArgs() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t'my great skill',\n\t\t\t't@t.com',\n\t\t\t{},\n\t\t\tnew Command(),\n\t\t\tthis.optionsSchema\n\t\t)\n\t\tassert.isEqualDeep(results, {\n\t\t\tname: 'my great skill',\n\t\t\temail: 't@t.com',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static stringArgsOverrideDefaults() {\n\t\tconst results = commanderUtil.mapIncomingToOptions(\n\t\t\t'my great skill',\n\t\t\t't@t.com',\n\t\t\t{\n\t\t\t\tname: 'test',\n\t\t\t\temail: 'test',\n\t\t\t},\n\t\t\tnew Command(),\n\t\t\tthis.optionsSchema\n\t\t)\n\t\tassert.isEqualDeep(results, {\n\t\t\tname: 'my great skill',\n\t\t\temail: 't@t.com',\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"DataStoreStore.test.js","names":["DataStoreStoreTest","badStoreDest","resolvePath","diskUtil","deleteFile","store","Store","assert","isTruthy","fetchStores","cwd","freshTmpDir","results","isLength","writeFile","doesThrowAsync","err","errorAssert","assertError","file","Action","execute","nameReadable","nameReadablePlural","namePascal","isFalsy","errors","storeFilepath","testUtil","assertFileByNameInGeneratedFiles","files","stores","doesInclude","className","path","AbstractSkillTest"],"sources":["../../../src/__tests__/implementation/DataStoreStore.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport StoreStore from '../../features/store/stores/StoreStore'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class DataStoreStoreTest extends AbstractSkillTest {\n\tprivate static store: StoreStore\n\tprivate static badStoreDest: string\n\tprotected static skillCacheKey = 'stores'\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\t\tthis.badStoreDest = this.resolvePath('src/stores/Bad.store.ts')\n\t}\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tdiskUtil.deleteFile(this.badStoreDest)\n\n\t\tthis.store = this.Store('store')\n\t}\n\n\t@test()\n\tprotected static async canInstantiateDataStore() {\n\t\tassert.isTruthy(this.Store('store'))\n\t}\n\n\t@test()\n\tprotected static async hasFetchStores() {\n\t\tassert.isTruthy(this.Store('store').fetchStores)\n\t}\n\n\t@test()\n\tprotected static async fetchesNoStoresToStart() {\n\t\tthis.cwd = this.freshTmpDir()\n\n\t\tconst results = await this.store.fetchStores()\n\t\tassert.isLength(results, 0)\n\t}\n\n\t@test()\n\tprotected static async throwsWhenStoreIsNotValid() {\n\t\tdiskUtil.writeFile(this.badStoreDest, 'throw new Error(\"Cheese!\")')\n\n\t\tconst err = await assert.doesThrowAsync(() => this.store.fetchStores())\n\n\t\terrorAssert.assertError(err, 'FAILED_TO_IMPORT', {\n\t\t\tfile: 'Bad.store.ts',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canImportAGoodStore() {\n\t\tconst results = await this.Action('store', 'create').execute({\n\t\t\tnameReadable: 'Good',\n\t\t\tnameReadablePlural: 'Good',\n\t\t\tnamePascal: 'Good',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst storeFilepath = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'Good.store.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst stores = await this.store.fetchStores()\n\t\tassert.isLength(stores, 1)\n\n\t\tassert.doesInclude(stores, {\n\t\t\tclassName: 'GoodStore',\n\t\t\tpath: storeFilepath,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canImportTwoGoodStores() {\n\t\tconst results = await this.Action('store', 'create').execute({\n\t\t\tnameReadable: 'Apple',\n\t\t\tnameReadablePlural: 'Apples',\n\t\t\tnamePascal: 'Apple',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst storeFilepath = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'Apples.store.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst stores = await this.store.fetchStores()\n\t\tassert.isLength(stores, 2)\n\n\t\tassert.doesInclude(stores, {\n\t\t\tclassName: 'ApplesStore',\n\t\t\tpath: storeFilepath,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async accuratelyReportsBadStoreAfterGoodStoresAreCreated() {\n\t\tdiskUtil.writeFile(this.badStoreDest, 'throw new Error(\"Cheese!\")')\n\n\t\tconst err = await assert.doesThrowAsync(() => this.store.fetchStores())\n\n\t\terrorAssert.assertError(err, 'FAILED_TO_IMPORT', {\n\t\t\tfile: 'Bad.store.ts',\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"DeletingOrphanedSchemaDefinitions.test.js","names":["DeletingOrphanedSchemaDefinitionsTest","assert","isFunction","schemaGeneratorUtil","filterSchemaFilesBySchemaIds","resolveTestPath","id","namespace","version","results","isEqual","length","doesInclude","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport schemaGeneratorUtil from '../../features/schema/utilities/schemaGenerator.utility'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nexport default class DeletingOrphanedSchemaDefinitionsTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async hasFunction() {\n\t\tassert.isFunction(schemaGeneratorUtil.filterSchemaFilesBySchemaIds)\n\t}\n\n\t@test()\n\tprotected static async findsAllSchemas() {\n\t\tconst results = await schemaGeneratorUtil.filterSchemaFilesBySchemaIds(\n\t\t\tthis.resolveTestPath('orphaned_schemas'),\n\t\t\t[\n\t\t\t\t{ id: 'one', namespace: 'namespace', version: 'v2020_07_22' },\n\t\t\t\t{ id: 'two' },\n\t\t\t\t// it should camel case the namespace\n\t\t\t\t{ id: 'three', namespace: 'Namespacetwo' },\n\t\t\t\t{ id: 'four', namespace: 'namespacetwo', version: 'v2020_07_22' },\n\t\t\t]\n\t\t)\n\n\t\tassert.isEqual(results.length, 0)\n\t}\n\n\t@test()\n\tprotected static async findsOneMissing() {\n\t\tconst results = await schemaGeneratorUtil.filterSchemaFilesBySchemaIds(\n\t\t\tthis.resolveTestPath('orphaned_schemas'),\n\t\t\t[{ id: 'one', namespace: 'namespace', version: 'v2020_07_22' }]\n\t\t)\n\n\t\tassert.isEqual(results.length, 3)\n\t\tassert.doesInclude(results[0], /two\\.schema\\.[t|j]s/gi)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,qC,WACnB,iB,UAKA,iB,UAgBA,iB;;;;;;;;;;;;;uGArBD;QAAA;UAAA;YAAA;cAAA;gBAECC,aAAOC,UAAP,CAAkBC,4BAAoBC,4BAAtC;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;2GAKA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEuBD,4BAAoBC,4BAApB,CACrB,KAAKC,eAAL,CAAqB,kBAArB,CADqB,EAErB,CACC;kBAAEC,EAAE,EAAE,KAAN;kBAAaC,SAAS,EAAE,WAAxB;kBAAqCC,OAAO,EAAE;gBAA9C,CADD,EAEC;kBAAEF,EAAE,EAAE;gBAAN,CAFD,EAGC;gBACA;kBAAEA,EAAE,EAAE,OAAN;kBAAeC,SAAS,EAAE;gBAA1B,CAJD,EAKC;kBAAED,EAAE,EAAE,MAAN;kBAAcC,SAAS,EAAE,cAAzB;kBAAyCC,OAAO,EAAE;gBAAlD,CALD,CAFqB,CAFvB;;cAAA;gBAEOC,OAFP;;gBAaCR,aAAOS,OAAP,CAAeD,OAAO,CAACE,MAAvB,EAA+B,CAA/B;;cAbD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;2GAgBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEuBR,4BAAoBC,4BAApB,CACrB,KAAKC,eAAL,CAAqB,kBAArB,CADqB,EAErB,CAAC;kBAAEC,EAAE,EAAE,KAAN;kBAAaC,SAAS,EAAE,WAAxB;kBAAqCC,OAAO,EAAE;gBAA9C,CAAD,CAFqB,CAFvB;;cAAA;gBAEOC,OAFP;;gBAOCR,aAAOS,OAAP,CAAeD,OAAO,CAACE,MAAvB,EAA+B,CAA/B;;gBACAV,aAAOW,WAAP,CAAmBH,OAAO,CAAC,CAAD,CAA1B,EAA+B,uBAA/B;;cARD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAtBkEI,+B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"EventContractCleanerUtil.test.js","names":["didMessageContract","eventSignatures","coreEventContracts","didMessageGlobalContractWithoutPayload","isGlobal","emitPayloadSchema","fields","targetOnlyPayload","eventName","targetSchema","id","namespace","type","EventContractCleanerUtilTest","assert","isTruthy","eventContractCleanerUtil","cleaned","cleanPayloadsAndPermissions","isEqualDeep","isFalsy","AbstractSpruceTest"],"sources":["../../../src/__tests__/implementation/EventContractCleanerUtil.test.ts"],"sourcesContent":["import { coreEventContracts } from '@sprucelabs/mercury-core-events'\nimport { buildEmitTargetAndPayloadSchema } from '@sprucelabs/spruce-event-utils'\nimport AbstractSpruceTest, { test, assert } from '@sprucelabs/test'\nimport { eventContractCleanerUtil } from '../../utilities/eventContractCleaner.utility'\n\nconst didMessageContract = {\n\teventSignatures: {\n\t\t'did-message::v2020_12_25':\n\t\t\tcoreEventContracts[0].eventSignatures['did-message::v2020_12_25'],\n\t},\n}\n\nconst didMessageGlobalContractWithoutPayload = {\n\teventSignatures: {\n\t\t'did-message::v2020_12_25': {\n\t\t\t...coreEventContracts[0].eventSignatures['did-message::v2020_12_25'],\n\t\t\tisGlobal: true,\n\t\t\temitPayloadSchema: {\n\t\t\t\t...coreEventContracts[0].eventSignatures['did-message::v2020_12_25']\n\t\t\t\t\t.emitPayloadSchema,\n\t\t\t\tfields: {},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst targetOnlyPayload = {\n\teventSignatures: {\n\t\t'did-message::v2020_12_25': {\n\t\t\tisGlobal: true,\n\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\teventName: 'did-message::v2020_12_15',\n\t\t\t\ttargetSchema: {\n\t\t\t\t\tid: 'test',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tnamespace: {\n\t\t\t\t\t\t\ttype: 'text',\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},\n}\n\nexport default class EventContractCleanerUtilTest extends AbstractSpruceTest {\n\t@test()\n\tprotected static async canGetEventContractCleanerUtil() {\n\t\tassert.isTruthy(eventContractCleanerUtil)\n\t}\n\n\t@test()\n\tprotected static async makesNoChangeToLocalContract() {\n\t\tconst cleaned =\n\t\t\teventContractCleanerUtil.cleanPayloadsAndPermissions(didMessageContract)\n\n\t\tassert.isEqualDeep(cleaned, didMessageContract)\n\t}\n\n\t@test()\n\tprotected static async stripsOutEntireEmitPayloadIfNoTargetNorPayload() {\n\t\tconst cleaned = eventContractCleanerUtil.cleanPayloadsAndPermissions(\n\t\t\tdidMessageGlobalContractWithoutPayload\n\t\t)\n\n\t\tassert.isFalsy(\n\t\t\tcleaned.eventSignatures['did-message::v2020_12_25']?.emitPayloadSchema\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async keepsEmitPayloadIfOnlyTarget() {\n\t\tconst cleaned =\n\t\t\teventContractCleanerUtil.cleanPayloadsAndPermissions(targetOnlyPayload)\n\n\t\tassert.isTruthy(\n\t\t\tcleaned.eventSignatures['did-message::v2020_12_25']?.emitPayloadSchema\n\t\t)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;AAEA,IAAMA,kBAAkB,GAAG;EAC1BC,eAAe,EAAE;IAChB,4BACCC,sCAAmB,CAAnB,EAAsBD,eAAtB,CAAsC,0BAAtC;EAFe;AADS,CAA3B;AAOA,IAAME,sCAAsC,GAAG;EAC9CF,eAAe,EAAE;IAChB,4DACIC,sCAAmB,CAAnB,EAAsBD,eAAtB,CAAsC,0BAAtC,CADJ;MAECG,QAAQ,EAAE,IAFX;MAGCC,iBAAiB,kCACbH,sCAAmB,CAAnB,EAAsBD,eAAtB,CAAsC,0BAAtC,EACDI,iBAFc;QAGhBC,MAAM,EAAE;MAHQ;IAHlB;EADgB;AAD6B,CAA/C;AAcA,IAAMC,iBAAiB,GAAG;EACzBN,eAAe,EAAE;IAChB,4BAA4B;MAC3BG,QAAQ,EAAE,IADiB;MAE3BC,iBAAiB,EAAE,uDAAgC;QAClDG,SAAS,EAAE,0BADuC;QAElDC,YAAY,EAAE;UACbC,EAAE,EAAE,MADS;UAEbJ,MAAM,EAAE;YACPK,SAAS,EAAE;cACVC,IAAI,EAAE;YADI;UADJ;QAFK;MAFoC,CAAhC;IAFQ;EADZ;AADQ,CAA1B;IAmBqBC,4B,WACnB,iB,UAKA,iB,UAQA,iB,UAWA,iB;;;;;;;;;;;;;0HAxBD;QAAA;UAAA;YAAA;cAAA;gBAECC,aAAOC,QAAP,CAAgBC,8CAAhB;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;wHAKA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOC,OAFP,GAGED,+CAAyBE,2BAAzB,CAAqDlB,kBAArD,CAHF;;gBAKCc,aAAOK,WAAP,CAAmBF,OAAnB,EAA4BjB,kBAA5B;;cALD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;0IAQA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOiB,OAFP,GAEiBD,+CAAyBE,2BAAzB,CACff,sCADe,CAFjB;;gBAMCW,aAAOM,OAAP,0BACCH,OAAO,CAAChB,eAAR,CAAwB,0BAAxB,CADD,0DACC,sBAAqDI,iBADtD;;cAND;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;wHAWA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOY,OAFP,GAGED,+CAAyBE,2BAAzB,CAAqDX,iBAArD,CAHF;;gBAKCO,aAAOC,QAAP,2BACCE,OAAO,CAAChB,eAAR,CAAwB,0BAAxB,CADD,2DACC,uBAAqDI,iBADtD;;cALD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAzByDgB,gB"}
|
|
@@ -16,6 +16,7 @@ export default class EventStoreTest extends AbstractEventTest {
|
|
|
16
16
|
protected static mixesInLocalContracts(): Promise<void>;
|
|
17
17
|
protected static mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice(): Promise<void>;
|
|
18
18
|
protected static doesNotLoadGlobalContractsForSelf(): Promise<void>;
|
|
19
|
+
protected static globbyPatternLooksEverywhere(): Promise<void>;
|
|
19
20
|
private static installAndRegisterOneGlobalEvent;
|
|
20
21
|
private static seedSkillAndInstallAtOrg;
|
|
21
22
|
}
|
|
@@ -41,9 +41,11 @@ var _EventStore = _interopRequireDefault(require("../../features/event/stores/Ev
|
|
|
41
41
|
|
|
42
42
|
var _AbstractEventTest2 = _interopRequireDefault(require("../../tests/AbstractEventTest"));
|
|
43
43
|
|
|
44
|
+
var _constants = require("../../tests/constants");
|
|
45
|
+
|
|
44
46
|
var _test2 = _interopRequireDefault(require("../../tests/utilities/test.utility"));
|
|
45
47
|
|
|
46
|
-
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _class, _class2;
|
|
48
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2;
|
|
47
49
|
|
|
48
50
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
49
51
|
|
|
@@ -58,7 +60,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
58
60
|
var EVENT_NAME_READABLE = 'my event store amazing event';
|
|
59
61
|
var EVENT_NAME = 'my-event-store-amazing-event';
|
|
60
62
|
var EVENT_CAMEL = 'myEventStoreAmazingEvent';
|
|
61
|
-
var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)(), _dec5 = (0, _test.test)(), _dec6 = (0, _test.test)(), _dec7 = (0, _test.test)(), _dec8 = (0, _test.test)(), _dec9 = (0, _test.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractEventTest) {
|
|
63
|
+
var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)(), _dec5 = (0, _test.test)(), _dec6 = (0, _test.test)(), _dec7 = (0, _test.test)(), _dec8 = (0, _test.test)(), _dec9 = (0, _test.test)(), _dec10 = (0, _test.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractEventTest) {
|
|
62
64
|
(0, _inherits2["default"])(EventStoreTest, _AbstractEventTest);
|
|
63
65
|
|
|
64
66
|
var _super = _createSuper(EventStoreTest);
|
|
@@ -89,7 +91,10 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
89
91
|
|
|
90
92
|
_spruceSkillUtils.diskUtil.writeFile(this.resolvePath('package.json'), '{}');
|
|
91
93
|
|
|
92
|
-
|
|
94
|
+
_context.next = 6;
|
|
95
|
+
return this.people.loginAsDemoPerson(_constants.DEMO_NUMBER_EVENT_STORE);
|
|
96
|
+
|
|
97
|
+
case 6:
|
|
93
98
|
case "end":
|
|
94
99
|
return _context.stop();
|
|
95
100
|
}
|
|
@@ -244,7 +249,7 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
244
249
|
}),
|
|
245
250
|
emitPermissionContract: (0, _mercuryTypes.buildPermissionContract)({
|
|
246
251
|
id: 'my-fantastic-event-contract',
|
|
247
|
-
name: '
|
|
252
|
+
name: 'Fantastic emit perms',
|
|
248
253
|
permissions: [{
|
|
249
254
|
id: 'can-emit-perms',
|
|
250
255
|
name: 'can emit perm',
|
|
@@ -613,30 +618,58 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
613
618
|
|
|
614
619
|
return doesNotLoadGlobalContractsForSelf;
|
|
615
620
|
}()
|
|
621
|
+
}, {
|
|
622
|
+
key: "globbyPatternLooksEverywhere",
|
|
623
|
+
value: function () {
|
|
624
|
+
var _globbyPatternLooksEverywhere = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
|
|
625
|
+
var store, expected;
|
|
626
|
+
return _regenerator["default"].wrap(function _callee11$(_context11) {
|
|
627
|
+
while (1) {
|
|
628
|
+
switch (_context11.prev = _context11.next) {
|
|
629
|
+
case 0:
|
|
630
|
+
store = this.Store('event');
|
|
631
|
+
expected = this.resolvePath('src', '**', 'events', '**/*.(builder|options).ts'); //@ts-ignore
|
|
632
|
+
|
|
633
|
+
_test.assert.isEqual(store.generateGlobbyForLocalEvents(), expected);
|
|
634
|
+
|
|
635
|
+
case 3:
|
|
636
|
+
case "end":
|
|
637
|
+
return _context11.stop();
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
}, _callee11, this);
|
|
641
|
+
}));
|
|
642
|
+
|
|
643
|
+
function globbyPatternLooksEverywhere() {
|
|
644
|
+
return _globbyPatternLooksEverywhere.apply(this, arguments);
|
|
645
|
+
}
|
|
646
|
+
|
|
647
|
+
return globbyPatternLooksEverywhere;
|
|
648
|
+
}()
|
|
616
649
|
}, {
|
|
617
650
|
key: "installAndRegisterOneGlobalEvent",
|
|
618
651
|
value: function () {
|
|
619
|
-
var _installAndRegisterOneGlobalEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
652
|
+
var _installAndRegisterOneGlobalEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
|
|
620
653
|
var _results$meta, _boot$meta;
|
|
621
654
|
|
|
622
655
|
var skill, results, _ref, fqen, boot;
|
|
623
656
|
|
|
624
|
-
return _regenerator["default"].wrap(function
|
|
657
|
+
return _regenerator["default"].wrap(function _callee12$(_context12) {
|
|
625
658
|
while (1) {
|
|
626
|
-
switch (
|
|
659
|
+
switch (_context12.prev = _context12.next) {
|
|
627
660
|
case 0:
|
|
628
|
-
|
|
661
|
+
_context12.next = 2;
|
|
629
662
|
return this.FeatureFixture().installCachedFeatures('events');
|
|
630
663
|
|
|
631
664
|
case 2:
|
|
632
|
-
|
|
665
|
+
_context12.next = 4;
|
|
633
666
|
return this.getSkillFixture().registerCurrentSkill({
|
|
634
667
|
name: 'event store test skill'
|
|
635
668
|
});
|
|
636
669
|
|
|
637
670
|
case 4:
|
|
638
|
-
skill =
|
|
639
|
-
|
|
671
|
+
skill = _context12.sent;
|
|
672
|
+
_context12.next = 7;
|
|
640
673
|
return this.createAction.execute({
|
|
641
674
|
nameReadable: EVENT_NAME_READABLE,
|
|
642
675
|
nameKebab: EVENT_NAME,
|
|
@@ -645,23 +678,23 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
645
678
|
});
|
|
646
679
|
|
|
647
680
|
case 7:
|
|
648
|
-
results =
|
|
681
|
+
results = _context12.sent;
|
|
649
682
|
_ref = (_results$meta = results.meta) !== null && _results$meta !== void 0 ? _results$meta : {}, fqen = _ref.fqen;
|
|
650
683
|
|
|
651
684
|
_test.assert.isTruthy(fqen);
|
|
652
685
|
|
|
653
|
-
|
|
686
|
+
_context12.next = 12;
|
|
654
687
|
return this.Action('skill', 'boot').execute({
|
|
655
688
|
local: true
|
|
656
689
|
});
|
|
657
690
|
|
|
658
691
|
case 12:
|
|
659
|
-
boot =
|
|
692
|
+
boot = _context12.sent;
|
|
660
693
|
(_boot$meta = boot.meta) === null || _boot$meta === void 0 ? void 0 : _boot$meta.kill();
|
|
661
694
|
|
|
662
695
|
_EventStore["default"].clearCache();
|
|
663
696
|
|
|
664
|
-
return
|
|
697
|
+
return _context12.abrupt("return", {
|
|
665
698
|
boot: boot,
|
|
666
699
|
skill: skill,
|
|
667
700
|
fqen: fqen,
|
|
@@ -670,10 +703,10 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
670
703
|
|
|
671
704
|
case 16:
|
|
672
705
|
case "end":
|
|
673
|
-
return
|
|
706
|
+
return _context12.stop();
|
|
674
707
|
}
|
|
675
708
|
}
|
|
676
|
-
},
|
|
709
|
+
}, _callee12, this);
|
|
677
710
|
}));
|
|
678
711
|
|
|
679
712
|
function installAndRegisterOneGlobalEvent() {
|
|
@@ -685,46 +718,46 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
685
718
|
}, {
|
|
686
719
|
key: "seedSkillAndInstallAtOrg",
|
|
687
720
|
value: function () {
|
|
688
|
-
var _seedSkillAndInstallAtOrg = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
721
|
+
var _seedSkillAndInstallAtOrg = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14(org, name) {
|
|
689
722
|
var skill, client, eventStore;
|
|
690
|
-
return _regenerator["default"].wrap(function
|
|
723
|
+
return _regenerator["default"].wrap(function _callee14$(_context14) {
|
|
691
724
|
while (1) {
|
|
692
|
-
switch (
|
|
725
|
+
switch (_context14.prev = _context14.next) {
|
|
693
726
|
case 0:
|
|
694
|
-
|
|
727
|
+
_context14.next = 2;
|
|
695
728
|
return this.getSkillFixture().seedDemoSkill({
|
|
696
729
|
name: name
|
|
697
730
|
});
|
|
698
731
|
|
|
699
732
|
case 2:
|
|
700
|
-
skill =
|
|
701
|
-
|
|
733
|
+
skill = _context14.sent;
|
|
734
|
+
_context14.next = 5;
|
|
702
735
|
return this.getOrganizationFixture().installSkillAtOrganization(skill.id, org.id);
|
|
703
736
|
|
|
704
737
|
case 5:
|
|
705
|
-
|
|
738
|
+
_context14.next = 7;
|
|
706
739
|
return this.connectToApi({
|
|
707
740
|
skillId: skill.id,
|
|
708
741
|
apiKey: skill.apiKey
|
|
709
742
|
});
|
|
710
743
|
|
|
711
744
|
case 7:
|
|
712
|
-
client =
|
|
745
|
+
client = _context14.sent;
|
|
713
746
|
eventStore = this.Store('event', {
|
|
714
747
|
apiClientFactory: function () {
|
|
715
|
-
var _apiClientFactory = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
716
|
-
return _regenerator["default"].wrap(function
|
|
748
|
+
var _apiClientFactory = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13() {
|
|
749
|
+
return _regenerator["default"].wrap(function _callee13$(_context13) {
|
|
717
750
|
while (1) {
|
|
718
|
-
switch (
|
|
751
|
+
switch (_context13.prev = _context13.next) {
|
|
719
752
|
case 0:
|
|
720
|
-
return
|
|
753
|
+
return _context13.abrupt("return", client);
|
|
721
754
|
|
|
722
755
|
case 1:
|
|
723
756
|
case "end":
|
|
724
|
-
return
|
|
757
|
+
return _context13.stop();
|
|
725
758
|
}
|
|
726
759
|
}
|
|
727
|
-
},
|
|
760
|
+
}, _callee13);
|
|
728
761
|
}));
|
|
729
762
|
|
|
730
763
|
function apiClientFactory() {
|
|
@@ -734,17 +767,17 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
734
767
|
return apiClientFactory;
|
|
735
768
|
}()
|
|
736
769
|
});
|
|
737
|
-
return
|
|
770
|
+
return _context14.abrupt("return", {
|
|
738
771
|
eventStore: eventStore,
|
|
739
772
|
skill: skill
|
|
740
773
|
});
|
|
741
774
|
|
|
742
775
|
case 10:
|
|
743
776
|
case "end":
|
|
744
|
-
return
|
|
777
|
+
return _context14.stop();
|
|
745
778
|
}
|
|
746
779
|
}
|
|
747
|
-
},
|
|
780
|
+
}, _callee14, this);
|
|
748
781
|
}));
|
|
749
782
|
|
|
750
783
|
function seedSkillAndInstallAtOrg(_x, _x2) {
|
|
@@ -755,6 +788,6 @@ var EventStoreTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3
|
|
|
755
788
|
}()
|
|
756
789
|
}]);
|
|
757
790
|
return EventStoreTest;
|
|
758
|
-
}(_AbstractEventTest2["default"]), (0, _defineProperty2["default"])(_class2, "createAction", void 0), _class2), ((0, _applyDecoratedDescriptor2["default"])(_class, "canInstantiateEventStore", [_dec], Object.getOwnPropertyDescriptor(_class, "canInstantiateEventStore"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "hasFetchEventContractsMethod", [_dec2], Object.getOwnPropertyDescriptor(_class, "hasFetchEventContractsMethod"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "fetchesCoreEventContracts", [_dec3], Object.getOwnPropertyDescriptor(_class, "fetchesCoreEventContracts"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "registerEventContract", [_dec4], Object.getOwnPropertyDescriptor(_class, "registerEventContract"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "badLocalContractThrowsNiceError", [_dec5], Object.getOwnPropertyDescriptor(_class, "badLocalContractThrowsNiceError"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "badLocalSignature", [_dec6], Object.getOwnPropertyDescriptor(_class, "badLocalSignature"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "mixesInLocalContracts", [_dec7], Object.getOwnPropertyDescriptor(_class, "mixesInLocalContracts"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice", [_dec8], Object.getOwnPropertyDescriptor(_class, "mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "doesNotLoadGlobalContractsForSelf", [_dec9], Object.getOwnPropertyDescriptor(_class, "doesNotLoadGlobalContractsForSelf"), _class)), _class));
|
|
791
|
+
}(_AbstractEventTest2["default"]), (0, _defineProperty2["default"])(_class2, "createAction", void 0), _class2), ((0, _applyDecoratedDescriptor2["default"])(_class, "canInstantiateEventStore", [_dec], Object.getOwnPropertyDescriptor(_class, "canInstantiateEventStore"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "hasFetchEventContractsMethod", [_dec2], Object.getOwnPropertyDescriptor(_class, "hasFetchEventContractsMethod"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "fetchesCoreEventContracts", [_dec3], Object.getOwnPropertyDescriptor(_class, "fetchesCoreEventContracts"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "registerEventContract", [_dec4], Object.getOwnPropertyDescriptor(_class, "registerEventContract"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "badLocalContractThrowsNiceError", [_dec5], Object.getOwnPropertyDescriptor(_class, "badLocalContractThrowsNiceError"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "badLocalSignature", [_dec6], Object.getOwnPropertyDescriptor(_class, "badLocalSignature"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "mixesInLocalContracts", [_dec7], Object.getOwnPropertyDescriptor(_class, "mixesInLocalContracts"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice", [_dec8], Object.getOwnPropertyDescriptor(_class, "mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "doesNotLoadGlobalContractsForSelf", [_dec9], Object.getOwnPropertyDescriptor(_class, "doesNotLoadGlobalContractsForSelf"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "globbyPatternLooksEverywhere", [_dec10], Object.getOwnPropertyDescriptor(_class, "globbyPatternLooksEverywhere"), _class)), _class));
|
|
759
792
|
exports["default"] = EventStoreTest;
|
|
760
793
|
//# sourceMappingURL=EventStore.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/implementation/EventStore.test.ts"],"names":["EVENT_NAME_READABLE","EVENT_NAME","EVENT_CAMEL","EventStoreTest","versionUtil","generateVersion","createAction","Action","diskUtil","writeFile","resolvePath","assert","isTruthy","Store","isFunction","fetchEventContracts","localNamespace","results","contracts","errors","isTrue","length","contract","isEqual","organizationFixture","getOrganizationFixture","seedDemoOrg","name","org","seedSkillAndInstallAtOrg","eventStore1","eventStore","skill1","skill","eventStore2","registerEventContract","eventContract","eventSignatures","version","constValue","emitPayloadSchema","eventName","targetSchema","eventTargetSchema","emitPermissionContract","id","permissions","defaults","skillContract","sig","eventContractUtil","getSignatureByName","slug","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","execute","nameReadable","nameKebab","nameCamel","isFalsy","match","testUtil","assertFileByNameInGeneratedFiles","files","doesThrowAsync","loadLocalContract","RegExp","err","errorAssert","assertError","copyEventBuildersAndPermissions","namespaces","isLength","eventNameUtil","join","eventNamespace","wasFound","fields","target","payload","responsePayloadSchema","listenPermissionContract","installAndRegisterOneGlobalEvent","fqen","totalMatches","reduce","count","eventsPath","deleteDir","unified","unifyContracts","doesThrow","isGlobal","meta","local","boot","kill","EventStore","clearCache","createResults","seedDemoSkill","installSkillAtOrganization","connectToApi","skillId","apiKey","client","apiClientFactory","AbstractEventTest"],"mappings":"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","sourcesContent":["import {\n\tbuildPermissionContract,\n\tvalidateEventContract,\n} from '@sprucelabs/mercury-types'\nimport {\n\tbuildEmitTargetAndPayloadSchema,\n\teventContractUtil,\n\teventNameUtil,\n\teventTargetSchema,\n} from '@sprucelabs/spruce-event-utils'\nimport { diskUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport CreateAction from '../../features/event/actions/CreateAction'\nimport EventStore from '../../features/event/stores/EventStore'\nimport AbstractEventTest from '../../tests/AbstractEventTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst EVENT_NAME_READABLE = 'my event store amazing event'\nconst EVENT_NAME = 'my-event-store-amazing-event'\nconst EVENT_CAMEL = 'myEventStoreAmazingEvent'\n\nexport default class EventStoreTest extends AbstractEventTest {\n\tprivate static createAction: CreateAction\n\tprotected static get version() {\n\t\treturn versionUtil.generateVersion()\n\t}\n\n\tpublic static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.createAction = this.Action<CreateAction>('event', 'create')\n\t\tdiskUtil.writeFile(this.resolvePath('package.json'), '{}')\n\t}\n\n\t@test()\n\tprotected static async canInstantiateEventStore() {\n\t\tassert.isTruthy(this.Store('event'))\n\t}\n\n\t@test()\n\tprotected static async hasFetchEventContractsMethod() {\n\t\tassert.isFunction(this.Store('event').fetchEventContracts)\n\t}\n\n\t@test()\n\tprotected static async fetchesCoreEventContracts() {\n\t\tconst results = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: 'my-skill',\n\t\t})\n\t\tconst { contracts, errors } = results\n\n\t\tassert.isTrue(contracts.length >= 1)\n\n\t\tfor (const contract of contracts) {\n\t\t\tvalidateEventContract(contract)\n\t\t}\n\n\t\tassert.isEqual(errors.length, 0)\n\t}\n\n\t@test()\n\tprotected static async registerEventContract() {\n\t\tconst organizationFixture = this.getOrganizationFixture()\n\t\tconst org = await organizationFixture.seedDemoOrg({\n\t\t\tname: 'my new org',\n\t\t})\n\n\t\tconst { eventStore: eventStore1, skill: skill1 } =\n\t\t\tawait this.seedSkillAndInstallAtOrg(org, 'skill 1')\n\n\t\tconst { eventStore: eventStore2 } = await this.seedSkillAndInstallAtOrg(\n\t\t\torg,\n\t\t\t'skill 2'\n\t\t)\n\n\t\tawait eventStore1.registerEventContract({\n\t\t\teventContract: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\t[`my-fantastic-event::${this.version.constValue}`]: {\n\t\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\t\teventName: `my-fantastic-event::${this.version.constValue}`,\n\t\t\t\t\t\t\ttargetSchema: eventTargetSchema,\n\t\t\t\t\t\t}),\n\t\t\t\t\t\temitPermissionContract: buildPermissionContract({\n\t\t\t\t\t\t\tid: 'my-fantastic-event-contract',\n\t\t\t\t\t\t\tname: 'Fanstastic emit perms',\n\t\t\t\t\t\t\tpermissions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: 'can-emit-perms',\n\t\t\t\t\t\t\t\t\tname: 'can emit perm',\n\t\t\t\t\t\t\t\t\tdefaults: {\n\t\t\t\t\t\t\t\t\t\tskill: false,\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\n\t\tconst { contracts } = await eventStore2.fetchEventContracts({\n\t\t\tlocalNamespace: 'my-skill',\n\t\t})\n\n\t\tassert.isTrue(contracts.length > 2)\n\n\t\tconst skillContract = contracts[1]\n\n\t\tconst sig = eventContractUtil.getSignatureByName(\n\t\t\tskillContract,\n\t\t\t`${skill1.slug}.my-fantastic-event::${this.version.constValue}`\n\t\t)\n\n\t\tassert.isEqual(\n\t\t\tsig.emitPermissionContract?.id,\n\t\t\t'my-fantastic-event-contract'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async badLocalContractThrowsNiceError() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tconst results = await this.createAction.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\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`emitPayload.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, 'export default {}')\n\n\t\tconst err = await assert.doesThrowAsync(\n\t\t\t() => this.Store('event').loadLocalContract(skill.slug),\n\t\t\tnew RegExp(\n\t\t\t\t`${skill.slug}.${EVENT_NAME}::${\n\t\t\t\t\tversionUtil.generateVersion().constValue\n\t\t\t\t}`\n\t\t\t)\n\t\t)\n\n\t\terrorAssert.assertError(err, 'INVALID_EVENT_CONTRACT')\n\t}\n\n\t@test()\n\tprotected static async badLocalSignature() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tconst results = await this.createAction.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\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`event.options.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, 'export default {waka: true}')\n\n\t\tconst err = await assert.doesThrowAsync(\n\t\t\t() => this.Store('event').loadLocalContract(skill.slug),\n\t\t\tnew RegExp(\n\t\t\t\t`${skill.slug}.${EVENT_NAME}::${\n\t\t\t\t\tversionUtil.generateVersion().constValue\n\t\t\t\t}`\n\t\t\t)\n\t\t)\n\n\t\terrorAssert.assertError(err, 'INVALID_EVENT_CONTRACT')\n\t}\n\n\t@test()\n\tprotected static async mixesInLocalContracts() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tawait this.createAction.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 { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t\tnamespaces: ['core'],\n\t\t})\n\n\t\tassert.isLength(contracts, 2)\n\n\t\tconst name = eventNameUtil.join({\n\t\t\teventName: EVENT_NAME,\n\t\t\teventNamespace: skill.slug,\n\t\t\tversion: this.version.constValue,\n\t\t})\n\n\t\tlet wasFound = false\n\t\tfor (const contract of contracts) {\n\t\t\tif (contract.eventSignatures[name]?.emitPayloadSchema) {\n\t\t\t\twasFound = true\n\t\t\t\tassert.isEqual(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.id,\n\t\t\t\t\tEVENT_CAMEL + 'EmitTargetAndPayload'\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.fields?.target\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.fields?.payload\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].responsePayloadSchema)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].emitPermissionContract)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].listenPermissionContract)\n\n\t\t\t\tvalidateEventContract(contract)\n\t\t\t}\n\t\t}\n\n\t\tassert.isTrue(wasFound)\n\t}\n\n\t@test()\n\tprotected static async mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice() {\n\t\tconst { skill, fqen } = await this.installAndRegisterOneGlobalEvent()\n\n\t\tconst { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t})\n\n\t\tconst totalMatches = contracts.reduce((count, contract) => {\n\t\t\tif (contract.eventSignatures[fqen]) {\n\t\t\t\tcount++\n\t\t\t}\n\t\t\treturn count\n\t\t}, 0)\n\n\t\tassert.isEqual(totalMatches, 1)\n\t}\n\n\t@test()\n\tprotected static async doesNotLoadGlobalContractsForSelf() {\n\t\tconst { fqen, skill } = await this.installAndRegisterOneGlobalEvent()\n\n\t\tconst eventsPath = this.resolvePath('src', 'events')\n\t\tdiskUtil.deleteDir(eventsPath)\n\n\t\tconst { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t})\n\n\t\tconst unified = eventContractUtil.unifyContracts(contracts)\n\n\t\tassert.isTruthy(unified)\n\t\tassert.doesThrow(() => eventContractUtil.getSignatureByName(unified, fqen))\n\t}\n\n\tprivate static async installAndRegisterOneGlobalEvent() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'event store test skill',\n\t\t})\n\n\t\tconst results = await this.createAction.execute({\n\t\t\tnameReadable: EVENT_NAME_READABLE,\n\t\t\tnameKebab: EVENT_NAME,\n\t\t\tnameCamel: EVENT_CAMEL,\n\t\t\tisGlobal: true,\n\t\t})\n\n\t\tconst { fqen } = results.meta ?? {}\n\n\t\tassert.isTruthy(fqen)\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tboot.meta?.kill()\n\n\t\tEventStore.clearCache()\n\n\t\treturn { boot, skill, fqen, createResults: results }\n\t}\n\n\tprivate static async seedSkillAndInstallAtOrg(org: any, name: string) {\n\t\tconst skill = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname,\n\t\t})\n\n\t\tawait this.getOrganizationFixture().installSkillAtOrganization(\n\t\t\tskill.id,\n\t\t\torg.id\n\t\t)\n\n\t\tconst client = await this.connectToApi({\n\t\t\tskillId: skill.id,\n\t\t\tapiKey: skill.apiKey,\n\t\t})\n\n\t\tconst eventStore = this.Store('event', {\n\t\t\tapiClientFactory: async () => {\n\t\t\t\treturn client\n\t\t\t},\n\t\t})\n\n\t\treturn { eventStore, skill }\n\t}\n}\n"],"file":"EventStore.test.js"}
|
|
1
|
+
{"version":3,"file":"EventStore.test.js","names":["EVENT_NAME_READABLE","EVENT_NAME","EVENT_CAMEL","EventStoreTest","versionUtil","generateVersion","createAction","Action","diskUtil","writeFile","resolvePath","people","loginAsDemoPerson","DEMO_NUMBER_EVENT_STORE","assert","isTruthy","Store","isFunction","fetchEventContracts","localNamespace","results","contracts","errors","isTrue","length","contract","isEqual","organizationFixture","getOrganizationFixture","seedDemoOrg","name","org","seedSkillAndInstallAtOrg","eventStore1","eventStore","skill1","skill","eventStore2","registerEventContract","eventContract","eventSignatures","version","constValue","emitPayloadSchema","eventName","targetSchema","eventTargetSchema","emitPermissionContract","id","permissions","defaults","skillContract","sig","eventContractUtil","getSignatureByName","slug","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","execute","nameReadable","nameKebab","nameCamel","isFalsy","match","testUtil","assertFileByNameInGeneratedFiles","files","doesThrowAsync","loadLocalContract","RegExp","err","errorAssert","assertError","copyEventBuildersAndPermissions","namespaces","isLength","eventNameUtil","join","eventNamespace","wasFound","fields","target","payload","responsePayloadSchema","listenPermissionContract","installAndRegisterOneGlobalEvent","fqen","totalMatches","reduce","count","eventsPath","deleteDir","unified","unifyContracts","doesThrow","store","expected","generateGlobbyForLocalEvents","isGlobal","meta","local","boot","kill","EventStore","clearCache","createResults","seedDemoSkill","installSkillAtOrganization","connectToApi","skillId","apiKey","client","apiClientFactory","AbstractEventTest"],"sources":["../../../src/__tests__/implementation/EventStore.test.ts"],"sourcesContent":["import {\n\tbuildPermissionContract,\n\tvalidateEventContract,\n} from '@sprucelabs/mercury-types'\nimport {\n\tbuildEmitTargetAndPayloadSchema,\n\teventContractUtil,\n\teventNameUtil,\n\teventTargetSchema,\n} from '@sprucelabs/spruce-event-utils'\nimport { diskUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport CreateAction from '../../features/event/actions/CreateAction'\nimport EventStore from '../../features/event/stores/EventStore'\nimport AbstractEventTest from '../../tests/AbstractEventTest'\nimport { DEMO_NUMBER_EVENT_STORE } from '../../tests/constants'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst EVENT_NAME_READABLE = 'my event store amazing event'\nconst EVENT_NAME = 'my-event-store-amazing-event'\nconst EVENT_CAMEL = 'myEventStoreAmazingEvent'\n\nexport default class EventStoreTest extends AbstractEventTest {\n\tprivate static createAction: CreateAction\n\tprotected static get version() {\n\t\treturn versionUtil.generateVersion()\n\t}\n\n\tpublic static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.createAction = this.Action<CreateAction>('event', 'create')\n\t\tdiskUtil.writeFile(this.resolvePath('package.json'), '{}')\n\t\tawait this.people.loginAsDemoPerson(DEMO_NUMBER_EVENT_STORE)\n\t}\n\n\t@test()\n\tprotected static async canInstantiateEventStore() {\n\t\tassert.isTruthy(this.Store('event'))\n\t}\n\n\t@test()\n\tprotected static async hasFetchEventContractsMethod() {\n\t\tassert.isFunction(this.Store('event').fetchEventContracts)\n\t}\n\n\t@test()\n\tprotected static async fetchesCoreEventContracts() {\n\t\tconst results = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: 'my-skill',\n\t\t})\n\t\tconst { contracts, errors } = results\n\n\t\tassert.isTrue(contracts.length >= 1)\n\n\t\tfor (const contract of contracts) {\n\t\t\tvalidateEventContract(contract)\n\t\t}\n\n\t\tassert.isEqual(errors.length, 0)\n\t}\n\n\t@test()\n\tprotected static async registerEventContract() {\n\t\tconst organizationFixture = this.getOrganizationFixture()\n\t\tconst org = await organizationFixture.seedDemoOrg({\n\t\t\tname: 'my new org',\n\t\t})\n\n\t\tconst { eventStore: eventStore1, skill: skill1 } =\n\t\t\tawait this.seedSkillAndInstallAtOrg(org, 'skill 1')\n\n\t\tconst { eventStore: eventStore2 } = await this.seedSkillAndInstallAtOrg(\n\t\t\torg,\n\t\t\t'skill 2'\n\t\t)\n\n\t\tawait eventStore1.registerEventContract({\n\t\t\teventContract: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\t[`my-fantastic-event::${this.version.constValue}`]: {\n\t\t\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\t\t\teventName: `my-fantastic-event::${this.version.constValue}`,\n\t\t\t\t\t\t\ttargetSchema: eventTargetSchema,\n\t\t\t\t\t\t}),\n\t\t\t\t\t\temitPermissionContract: buildPermissionContract({\n\t\t\t\t\t\t\tid: 'my-fantastic-event-contract',\n\t\t\t\t\t\t\tname: 'Fantastic emit perms',\n\t\t\t\t\t\t\tpermissions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: 'can-emit-perms',\n\t\t\t\t\t\t\t\t\tname: 'can emit perm',\n\t\t\t\t\t\t\t\t\tdefaults: {\n\t\t\t\t\t\t\t\t\t\tskill: false,\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\n\t\tconst { contracts } = await eventStore2.fetchEventContracts({\n\t\t\tlocalNamespace: 'my-skill',\n\t\t})\n\n\t\tassert.isTrue(contracts.length > 2)\n\n\t\tconst skillContract = contracts[1]\n\n\t\tconst sig = eventContractUtil.getSignatureByName(\n\t\t\tskillContract,\n\t\t\t`${skill1.slug}.my-fantastic-event::${this.version.constValue}`\n\t\t)\n\n\t\tassert.isEqual(\n\t\t\tsig.emitPermissionContract?.id,\n\t\t\t'my-fantastic-event-contract'\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async badLocalContractThrowsNiceError() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tconst results = await this.createAction.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\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`emitPayload.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, 'export default {}')\n\n\t\tconst err = await assert.doesThrowAsync(\n\t\t\t() => this.Store('event').loadLocalContract(skill.slug),\n\t\t\tnew RegExp(\n\t\t\t\t`${skill.slug}.${EVENT_NAME}::${\n\t\t\t\t\tversionUtil.generateVersion().constValue\n\t\t\t\t}`\n\t\t\t)\n\t\t)\n\n\t\terrorAssert.assertError(err, 'INVALID_EVENT_CONTRACT')\n\t}\n\n\t@test()\n\tprotected static async badLocalSignature() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tconst results = await this.createAction.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\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`event.options.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, 'export default {waka: true}')\n\n\t\tconst err = await assert.doesThrowAsync(\n\t\t\t() => this.Store('event').loadLocalContract(skill.slug),\n\t\t\tnew RegExp(\n\t\t\t\t`${skill.slug}.${EVENT_NAME}::${\n\t\t\t\t\tversionUtil.generateVersion().constValue\n\t\t\t\t}`\n\t\t\t)\n\t\t)\n\n\t\terrorAssert.assertError(err, 'INVALID_EVENT_CONTRACT')\n\t}\n\n\t@test()\n\tprotected static async mixesInLocalContracts() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'my new skill',\n\t\t})\n\n\t\tawait this.createAction.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 { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t\tnamespaces: ['core'],\n\t\t})\n\n\t\tassert.isLength(contracts, 2)\n\n\t\tconst name = eventNameUtil.join({\n\t\t\teventName: EVENT_NAME,\n\t\t\teventNamespace: skill.slug,\n\t\t\tversion: this.version.constValue,\n\t\t})\n\n\t\tlet wasFound = false\n\t\tfor (const contract of contracts) {\n\t\t\tif (contract.eventSignatures[name]?.emitPayloadSchema) {\n\t\t\t\twasFound = true\n\t\t\t\tassert.isEqual(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.id,\n\t\t\t\t\tEVENT_CAMEL + 'EmitTargetAndPayload'\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.fields?.target\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(\n\t\t\t\t\tcontract.eventSignatures[name].emitPayloadSchema?.fields?.payload\n\t\t\t\t)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].responsePayloadSchema)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].emitPermissionContract)\n\t\t\t\tassert.isTruthy(contract.eventSignatures[name].listenPermissionContract)\n\n\t\t\t\tvalidateEventContract(contract)\n\t\t\t}\n\t\t}\n\n\t\tassert.isTrue(wasFound)\n\t}\n\n\t@test()\n\tprotected static async mixesInLocalContractWithGlobalEventsAndDoesNotReturnContractTwice() {\n\t\tconst { skill, fqen } = await this.installAndRegisterOneGlobalEvent()\n\n\t\tconst { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t})\n\n\t\tconst totalMatches = contracts.reduce((count, contract) => {\n\t\t\tif (contract.eventSignatures[fqen]) {\n\t\t\t\tcount++\n\t\t\t}\n\t\t\treturn count\n\t\t}, 0)\n\n\t\tassert.isEqual(totalMatches, 1)\n\t}\n\n\t@test()\n\tprotected static async doesNotLoadGlobalContractsForSelf() {\n\t\tconst { fqen, skill } = await this.installAndRegisterOneGlobalEvent()\n\n\t\tconst eventsPath = this.resolvePath('src', 'events')\n\t\tdiskUtil.deleteDir(eventsPath)\n\n\t\tconst { contracts } = await this.Store('event').fetchEventContracts({\n\t\t\tlocalNamespace: skill.slug,\n\t\t})\n\n\t\tconst unified = eventContractUtil.unifyContracts(contracts)\n\n\t\tassert.isTruthy(unified)\n\t\tassert.doesThrow(() => eventContractUtil.getSignatureByName(unified, fqen))\n\t}\n\n\t@test()\n\tprotected static async globbyPatternLooksEverywhere() {\n\t\tconst store = this.Store('event')\n\t\tconst expected = this.resolvePath(\n\t\t\t'src',\n\t\t\t'**',\n\t\t\t'events',\n\t\t\t'**/*.(builder|options).ts'\n\t\t)\n\n\t\t//@ts-ignore\n\t\tassert.isEqual(store.generateGlobbyForLocalEvents(), expected)\n\t}\n\n\tprivate static async installAndRegisterOneGlobalEvent() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst skill = await this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: 'event store test skill',\n\t\t})\n\n\t\tconst results = await this.createAction.execute({\n\t\t\tnameReadable: EVENT_NAME_READABLE,\n\t\t\tnameKebab: EVENT_NAME,\n\t\t\tnameCamel: EVENT_CAMEL,\n\t\t\tisGlobal: true,\n\t\t})\n\n\t\tconst { fqen } = results.meta ?? {}\n\n\t\tassert.isTruthy(fqen)\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({ local: true })\n\n\t\tboot.meta?.kill()\n\n\t\tEventStore.clearCache()\n\n\t\treturn { boot, skill, fqen, createResults: results }\n\t}\n\n\tprivate static async seedSkillAndInstallAtOrg(org: any, name: string) {\n\t\tconst skill = await this.getSkillFixture().seedDemoSkill({\n\t\t\tname,\n\t\t})\n\n\t\tawait this.getOrganizationFixture().installSkillAtOrganization(\n\t\t\tskill.id,\n\t\t\torg.id\n\t\t)\n\n\t\tconst client = await this.connectToApi({\n\t\t\tskillId: skill.id,\n\t\t\tapiKey: skill.apiKey,\n\t\t})\n\n\t\tconst eventStore = this.Store('event', {\n\t\t\tapiClientFactory: async () => {\n\t\t\t\treturn client\n\t\t\t},\n\t\t})\n\n\t\treturn { eventStore, skill }\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/__tests__/implementation/EventTemplateItemBuilder.test.ts"],"names":["expectedVersion","versionUtil","generateVersion","dirValue","bookContract","eventSignatures","contractWith2Signatures","contractWith2NamespacedSignatures","didBookTemplateItem","version","namePascal","nameCamel","isLocal","namespace","namesUtil","toKebab","MERCURY_API_NAMESPACE","namespaceCamel","toCamel","namespacePascal","toPascal","imports","importAs","willBookTemplateItem","didBookWithNamespaceTemplateItem","willBookWithNamespaceTemplateItem","relatedToRelatedToProximitySchema","id","fields","onlyField","type","relatedToRelatedToProximitySchemaTemplateItem","nameReadable","schema","isNested","destinationDir","relatedToProximitySchema","boolField","relatedToRelatedSchema","options","relatedToProximitySchemaTemplateItem","schemaIds","proximityEmitPayloadSchema","textField","relatedSchema","proximityEmitPayloadTemplateItem","contractWithEmitPayload","emitPayloadSchema","expectedContractWithEmitPayloadTemplateItem","EventTemplateItemBuilderTest","itemBuilder","EventTemplateItemBuilder","assert","isTruthy","isFunction","buildTemplateItems","contracts","localNamespace","eventContractTemplateItems","actual","isEqualDeep","expectedEventContractTemplateItems","expectedSchemaTemplateItems","schemaTemplateItems","coreEventContracts","match","find","item","isEqual","groupsExpectedImports","appointmentsExpectedImports","name","responsePayloadSchema","emitPermissionContract","requireAllPermissions","permissions","listenPermissionContract","AbstractCliTest"],"mappings":"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","sourcesContent":["import { coreEventContracts } from '@sprucelabs/mercury-core-events'\nimport { EventContract } from '@sprucelabs/mercury-types'\nimport { buildSchema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tMERCURY_API_NAMESPACE,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { EventContractTemplateItem } from '@sprucelabs/spruce-templates'\nimport { test, assert } from '@sprucelabs/test'\nimport EventTemplateItemBuilder from '../../templateItemBuilders/EventTemplateItemBuilder'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nconst expectedVersion = versionUtil.generateVersion().dirValue\n\nconst bookContract: EventContract = {\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst contractWith2Signatures: EventContract = {\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t\t[`will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst contractWith2NamespacedSignatures: EventContract = {\n\teventSignatures: {\n\t\t[`appointments.did-book::${expectedVersion}`]: {},\n\t\t[`appointments.will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst didBookTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'DidBook',\n\tnameCamel: 'didBook',\n\tisLocal: false,\n\tnamespace: namesUtil.toKebab(MERCURY_API_NAMESPACE),\n\tnamespaceCamel: namesUtil.toCamel(MERCURY_API_NAMESPACE),\n\tnamespacePascal: namesUtil.toPascal(MERCURY_API_NAMESPACE),\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst willBookTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'WillBook',\n\tnameCamel: 'willBook',\n\tisLocal: false,\n\tnamespace: namesUtil.toKebab(MERCURY_API_NAMESPACE),\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\tnamespaceCamel: namesUtil.toCamel(MERCURY_API_NAMESPACE),\n\tnamespacePascal: namesUtil.toPascal(MERCURY_API_NAMESPACE),\n\teventSignatures: {\n\t\t[`will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst didBookWithNamespaceTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'DidBook',\n\tnameCamel: 'didBook',\n\tisLocal: true,\n\tnamespace: 'appointments',\n\tnamespaceCamel: 'appointments',\n\tnamespacePascal: 'Appointments',\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`appointments.did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst willBookWithNamespaceTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'WillBook',\n\tnameCamel: 'willBook',\n\tisLocal: true,\n\tnamespace: 'appointments',\n\tnamespaceCamel: 'appointments',\n\tnamespacePascal: 'Appointments',\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`appointments.will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst relatedToRelatedToProximitySchema = buildSchema({\n\tid: 'relatedToRelatedToProximitySchema',\n\tversion: expectedVersion,\n\tfields: {\n\t\tonlyField: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n})\n\nconst relatedToRelatedToProximitySchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: relatedToRelatedToProximitySchema.id,\n\tnameCamel: 'relatedToRelatedToProximitySchema',\n\tnamePascal: 'RelatedToRelatedToProximitySchema',\n\tnameReadable: 'relatedToRelatedToProximitySchema',\n\tschema: {\n\t\t...relatedToRelatedToProximitySchema,\n\t\tnamespace: 'proximity',\n\t},\n\tisNested: true,\n\tdestinationDir: '#spruce/events',\n}\n\nconst relatedToProximitySchema = buildSchema({\n\tversion: expectedVersion,\n\tid: 'relatedToProximitySchema',\n\tfields: {\n\t\tboolField: {\n\t\t\ttype: 'boolean',\n\t\t},\n\t\trelatedToRelatedSchema: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: relatedToRelatedToProximitySchema,\n\t\t\t},\n\t\t},\n\t},\n})\n\nconst relatedToProximitySchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: relatedToProximitySchema.id,\n\tnameCamel: 'relatedToProximitySchema',\n\tnamePascal: 'RelatedToProximitySchema',\n\tnameReadable: 'relatedToProximitySchema',\n\tschema: {\n\t\tid: 'relatedToProximitySchema',\n\t\tnamespace: 'proximity',\n\t\tversion: expectedVersion,\n\t\tfields: {\n\t\t\tboolField: {\n\t\t\t\ttype: 'boolean',\n\t\t\t},\n\t\t\trelatedToRelatedSchema: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'relatedToRelatedToProximitySchema',\n\t\t\t\t\t\t\tnamespace: 'proximity',\n\t\t\t\t\t\t\tversion: expectedVersion,\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},\n\tisNested: true,\n\tdestinationDir: '#spruce/events',\n}\n\nconst proximityEmitPayloadSchema = buildSchema({\n\tversion: expectedVersion,\n\tid: 'proximityEmitPayload',\n\tnamespace: 'proximity',\n\tfields: {\n\t\ttextField: {\n\t\t\ttype: 'text',\n\t\t},\n\t\trelatedSchema: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: relatedToProximitySchema,\n\t\t\t},\n\t\t},\n\t},\n})\n\nconst proximityEmitPayloadTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: proximityEmitPayloadSchema.id,\n\tnameCamel: 'proximityEmitPayload',\n\tnamePascal: 'ProximityEmitPayload',\n\tnameReadable: 'proximityEmitPayload',\n\tschema: {\n\t\tid: 'proximityEmitPayload',\n\t\tnamespace: 'proximity',\n\t\tversion: expectedVersion,\n\t\tfields: {\n\t\t\ttextField: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\trelatedSchema: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'relatedToProximitySchema',\n\t\t\t\t\t\t\tnamespace: 'proximity',\n\t\t\t\t\t\t\tversion: expectedVersion,\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},\n\tisNested: false,\n\tdestinationDir: '#spruce/events',\n}\n\nconst contractWithEmitPayload: EventContract = {\n\teventSignatures: {\n\t\t[`proximity.did-enter::${expectedVersion}`]: {\n\t\t\temitPayloadSchema: proximityEmitPayloadSchema,\n\t\t},\n\t},\n}\n\nconst expectedContractWithEmitPayloadTemplateItem: EventContractTemplateItem = {\n\tnamePascal: 'DidEnter',\n\tnameCamel: 'didEnter',\n\tnamespace: 'proximity',\n\tisLocal: false,\n\tversion: expectedVersion,\n\tnamespaceCamel: 'proximity',\n\tnamespacePascal: 'Proximity',\n\timports: [\n\t\t{\n\t\t\tpackage: `#spruce/schemas/proximity/${expectedVersion}/proximityEmitPayload.schema`,\n\t\t\timportAs: 'proximityEmitPayloadSchema',\n\t\t},\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`proximity.did-enter::${expectedVersion}`]: {\n\t\t\temitPayloadSchema: {\n\t\t\t\t...proximityEmitPayloadTemplateItem,\n\t\t\t},\n\t\t},\n\t},\n}\n\nexport default class EventTemplateItemBuilderTest extends AbstractCliTest {\n\tprivate static itemBuilder: EventTemplateItemBuilder\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.itemBuilder = new EventTemplateItemBuilder()\n\t}\n\n\t@test()\n\tprotected static async canCreateNewItemBuilder() {\n\t\tassert.isTruthy(this.itemBuilder)\n\t}\n\n\t@test()\n\tprotected static async hasGenerateFunction() {\n\t\tassert.isFunction(this.itemBuilder.buildTemplateItems)\n\t}\n\n\t@test()\n\tprotected static turnsSingleContractIntoTemplateItem() {\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [bookContract],\n\t\t\tlocalNamespace: 'test-namespace',\n\t\t})\n\n\t\tconst actual = eventContractTemplateItems[0]\n\n\t\tassert.isEqualDeep(actual, didBookTemplateItem)\n\t}\n\n\t@test(\n\t\t'builds emit payload schema into a template item',\n\t\t[contractWithEmitPayload],\n\t\t[expectedContractWithEmitPayloadTemplateItem],\n\t\t[\n\t\t\trelatedToRelatedToProximitySchemaTemplateItem,\n\t\t\trelatedToProximitySchemaTemplateItem,\n\t\t\tproximityEmitPayloadTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'turns 1 contract with 2 event signature into 2 template items',\n\t\t[contractWith2Signatures],\n\t\t[didBookTemplateItem, willBookTemplateItem]\n\t)\n\t@test(\n\t\t'turns 2 contract with 2 event signature into 4 template items',\n\t\t[contractWith2Signatures, contractWith2Signatures],\n\t\t[\n\t\t\tdidBookTemplateItem,\n\t\t\tdidBookTemplateItem,\n\t\t\twillBookTemplateItem,\n\t\t\twillBookTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'turns 1 contract with 2 namespaced event signatures to 2 template items',\n\t\t[contractWith2NamespacedSignatures],\n\t\t[didBookWithNamespaceTemplateItem, willBookWithNamespaceTemplateItem]\n\t)\n\tprotected static generateItems(\n\t\tcontracts: EventContract[],\n\t\texpectedEventContractTemplateItems: EventContractTemplateItem[],\n\t\texpectedSchemaTemplateItems: SchemaTemplateItem[] = []\n\t) {\n\t\tconst { eventContractTemplateItems, schemaTemplateItems } =\n\t\t\tthis.itemBuilder.buildTemplateItems({\n\t\t\t\tcontracts,\n\t\t\t\tlocalNamespace: 'appointments',\n\t\t\t})\n\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems,\n\t\t\texpectedEventContractTemplateItems\n\t\t)\n\t\tassert.isEqualDeep(schemaTemplateItems, expectedSchemaTemplateItems)\n\t}\n\n\t@test()\n\tprotected static canPullEventContractSchemaFromCoreEventContract() {\n\t\tconst { schemaTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'register-events':\n\t\t\t\t\t\t\tcoreEventContracts[0].eventSignatures['can-listen::v2020_12_25'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tconst match = schemaTemplateItems.find((item) => item.id === 'eventSource')\n\t\tassert.isTruthy(match)\n\t}\n\n\t@test()\n\tprotected static sortsEventsAlphabetically() {\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'zebra-cheeta': {},\n\t\t\t\t\t\t'register-events':\n\t\t\t\t\t\t\tcoreEventContracts[0].eventSignatures['can-listen::v2020_12_25'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tassert.isEqual(eventContractTemplateItems[0].nameCamel, 'registerEvents')\n\t\tassert.isEqual(eventContractTemplateItems[1].nameCamel, 'zebraCheeta')\n\t}\n\n\t@test()\n\tprotected static eventContractTemplateItemsHaveProperNamespacesImports() {\n\t\tconst groupsExpectedImports = [\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/groups/v2021_12_01/listEmitTargetAndPayload.schema',\n\t\t\t\timportAs: 'listEmitTargetAndPayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/groups/v2021_12_01/listResponsePayload.schema',\n\t\t\t\timportAs: 'listResponsePayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildEventContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildPermissionContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t]\n\n\t\tconst appointmentsExpectedImports = [\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/appointments/v2021_06_23/listEmitTargetAndPayload.schema',\n\t\t\t\timportAs: 'listEmitTargetAndPayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/appointments/v2021_06_23/listResponsePayload.schema',\n\t\t\t\timportAs: 'listResponsePayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildEventContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildPermissionContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t]\n\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'groups.list::v2021_12_01': {\n\t\t\t\t\t\t\temitPayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listEmitTargetAndPayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_12_01',\n\t\t\t\t\t\t\t\tnamespace: 'Groups',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listResponsePayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_12_01',\n\t\t\t\t\t\t\t\tnamespace: 'Groups',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listEmitPermissions',\n\t\t\t\t\t\t\t\tname: 'list',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\n\t\t\t\t\t\t'appointments.list::v2021_06_23': {\n\t\t\t\t\t\t\temitPayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listEmitTargetAndPayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_06_23',\n\t\t\t\t\t\t\t\tnamespace: 'Appointments',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listResponsePayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_06_23',\n\t\t\t\t\t\t\t\tnamespace: 'Appointments',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listEmitPermissions',\n\t\t\t\t\t\t\t\tname: 'list appointments',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlistenPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listListenPermissions',\n\t\t\t\t\t\t\t\tname: 'list appointments',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\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\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems[0].imports,\n\t\t\tgroupsExpectedImports\n\t\t)\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems[1].imports,\n\t\t\tappointmentsExpectedImports\n\t\t)\n\t}\n}\n"],"file":"EventTemplateItemBuilder.test.js"}
|
|
1
|
+
{"version":3,"file":"EventTemplateItemBuilder.test.js","names":["expectedVersion","versionUtil","generateVersion","dirValue","bookContract","eventSignatures","contractWith2Signatures","contractWith2NamespacedSignatures","didBookTemplateItem","version","namePascal","nameCamel","isLocal","namespace","namesUtil","toKebab","MERCURY_API_NAMESPACE","namespaceCamel","toCamel","namespacePascal","toPascal","imports","importAs","willBookTemplateItem","didBookWithNamespaceTemplateItem","willBookWithNamespaceTemplateItem","relatedToRelatedToProximitySchema","id","fields","onlyField","type","relatedToRelatedToProximitySchemaTemplateItem","nameReadable","schema","isNested","destinationDir","relatedToProximitySchema","boolField","relatedToRelatedSchema","options","relatedToProximitySchemaTemplateItem","schemaIds","proximityEmitPayloadSchema","textField","relatedSchema","proximityEmitPayloadTemplateItem","contractWithEmitPayload","emitPayloadSchema","expectedContractWithEmitPayloadTemplateItem","EventTemplateItemBuilderTest","itemBuilder","EventTemplateItemBuilder","assert","isTruthy","isFunction","buildTemplateItems","contracts","localNamespace","eventContractTemplateItems","actual","isEqualDeep","expectedEventContractTemplateItems","expectedSchemaTemplateItems","schemaTemplateItems","coreEventContracts","match","find","item","isEqual","groupsExpectedImports","appointmentsExpectedImports","name","responsePayloadSchema","emitPermissionContract","requireAllPermissions","permissions","listenPermissionContract","AbstractCliTest"],"sources":["../../../src/__tests__/implementation/EventTemplateItemBuilder.test.ts"],"sourcesContent":["import { coreEventContracts } from '@sprucelabs/mercury-core-events'\nimport { EventContract } from '@sprucelabs/mercury-types'\nimport { buildSchema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tMERCURY_API_NAMESPACE,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { EventContractTemplateItem } from '@sprucelabs/spruce-templates'\nimport { test, assert } from '@sprucelabs/test'\nimport EventTemplateItemBuilder from '../../templateItemBuilders/EventTemplateItemBuilder'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nconst expectedVersion = versionUtil.generateVersion().dirValue\n\nconst bookContract: EventContract = {\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst contractWith2Signatures: EventContract = {\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t\t[`will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst contractWith2NamespacedSignatures: EventContract = {\n\teventSignatures: {\n\t\t[`appointments.did-book::${expectedVersion}`]: {},\n\t\t[`appointments.will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst didBookTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'DidBook',\n\tnameCamel: 'didBook',\n\tisLocal: false,\n\tnamespace: namesUtil.toKebab(MERCURY_API_NAMESPACE),\n\tnamespaceCamel: namesUtil.toCamel(MERCURY_API_NAMESPACE),\n\tnamespacePascal: namesUtil.toPascal(MERCURY_API_NAMESPACE),\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst willBookTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'WillBook',\n\tnameCamel: 'willBook',\n\tisLocal: false,\n\tnamespace: namesUtil.toKebab(MERCURY_API_NAMESPACE),\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\tnamespaceCamel: namesUtil.toCamel(MERCURY_API_NAMESPACE),\n\tnamespacePascal: namesUtil.toPascal(MERCURY_API_NAMESPACE),\n\teventSignatures: {\n\t\t[`will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst didBookWithNamespaceTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'DidBook',\n\tnameCamel: 'didBook',\n\tisLocal: true,\n\tnamespace: 'appointments',\n\tnamespaceCamel: 'appointments',\n\tnamespacePascal: 'Appointments',\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`appointments.did-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst willBookWithNamespaceTemplateItem: EventContractTemplateItem = {\n\tversion: expectedVersion,\n\tnamePascal: 'WillBook',\n\tnameCamel: 'willBook',\n\tisLocal: true,\n\tnamespace: 'appointments',\n\tnamespaceCamel: 'appointments',\n\tnamespacePascal: 'Appointments',\n\timports: [\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`appointments.will-book::${expectedVersion}`]: {},\n\t},\n}\n\nconst relatedToRelatedToProximitySchema = buildSchema({\n\tid: 'relatedToRelatedToProximitySchema',\n\tversion: expectedVersion,\n\tfields: {\n\t\tonlyField: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n})\n\nconst relatedToRelatedToProximitySchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: relatedToRelatedToProximitySchema.id,\n\tnameCamel: 'relatedToRelatedToProximitySchema',\n\tnamePascal: 'RelatedToRelatedToProximitySchema',\n\tnameReadable: 'relatedToRelatedToProximitySchema',\n\tschema: {\n\t\t...relatedToRelatedToProximitySchema,\n\t\tnamespace: 'proximity',\n\t},\n\tisNested: true,\n\tdestinationDir: '#spruce/events',\n}\n\nconst relatedToProximitySchema = buildSchema({\n\tversion: expectedVersion,\n\tid: 'relatedToProximitySchema',\n\tfields: {\n\t\tboolField: {\n\t\t\ttype: 'boolean',\n\t\t},\n\t\trelatedToRelatedSchema: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: relatedToRelatedToProximitySchema,\n\t\t\t},\n\t\t},\n\t},\n})\n\nconst relatedToProximitySchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: relatedToProximitySchema.id,\n\tnameCamel: 'relatedToProximitySchema',\n\tnamePascal: 'RelatedToProximitySchema',\n\tnameReadable: 'relatedToProximitySchema',\n\tschema: {\n\t\tid: 'relatedToProximitySchema',\n\t\tnamespace: 'proximity',\n\t\tversion: expectedVersion,\n\t\tfields: {\n\t\t\tboolField: {\n\t\t\t\ttype: 'boolean',\n\t\t\t},\n\t\t\trelatedToRelatedSchema: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'relatedToRelatedToProximitySchema',\n\t\t\t\t\t\t\tnamespace: 'proximity',\n\t\t\t\t\t\t\tversion: expectedVersion,\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},\n\tisNested: true,\n\tdestinationDir: '#spruce/events',\n}\n\nconst proximityEmitPayloadSchema = buildSchema({\n\tversion: expectedVersion,\n\tid: 'proximityEmitPayload',\n\tnamespace: 'proximity',\n\tfields: {\n\t\ttextField: {\n\t\t\ttype: 'text',\n\t\t},\n\t\trelatedSchema: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: relatedToProximitySchema,\n\t\t\t},\n\t\t},\n\t},\n})\n\nconst proximityEmitPayloadTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'proximity',\n\tid: proximityEmitPayloadSchema.id,\n\tnameCamel: 'proximityEmitPayload',\n\tnamePascal: 'ProximityEmitPayload',\n\tnameReadable: 'proximityEmitPayload',\n\tschema: {\n\t\tid: 'proximityEmitPayload',\n\t\tnamespace: 'proximity',\n\t\tversion: expectedVersion,\n\t\tfields: {\n\t\t\ttextField: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\trelatedSchema: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'relatedToProximitySchema',\n\t\t\t\t\t\t\tnamespace: 'proximity',\n\t\t\t\t\t\t\tversion: expectedVersion,\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},\n\tisNested: false,\n\tdestinationDir: '#spruce/events',\n}\n\nconst contractWithEmitPayload: EventContract = {\n\teventSignatures: {\n\t\t[`proximity.did-enter::${expectedVersion}`]: {\n\t\t\temitPayloadSchema: proximityEmitPayloadSchema,\n\t\t},\n\t},\n}\n\nconst expectedContractWithEmitPayloadTemplateItem: EventContractTemplateItem = {\n\tnamePascal: 'DidEnter',\n\tnameCamel: 'didEnter',\n\tnamespace: 'proximity',\n\tisLocal: false,\n\tversion: expectedVersion,\n\tnamespaceCamel: 'proximity',\n\tnamespacePascal: 'Proximity',\n\timports: [\n\t\t{\n\t\t\tpackage: `#spruce/schemas/proximity/${expectedVersion}/proximityEmitPayload.schema`,\n\t\t\timportAs: 'proximityEmitPayloadSchema',\n\t\t},\n\t\t{\n\t\t\timportAs: '{ buildEventContract }',\n\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t},\n\t],\n\teventSignatures: {\n\t\t[`proximity.did-enter::${expectedVersion}`]: {\n\t\t\temitPayloadSchema: {\n\t\t\t\t...proximityEmitPayloadTemplateItem,\n\t\t\t},\n\t\t},\n\t},\n}\n\nexport default class EventTemplateItemBuilderTest extends AbstractCliTest {\n\tprivate static itemBuilder: EventTemplateItemBuilder\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.itemBuilder = new EventTemplateItemBuilder()\n\t}\n\n\t@test()\n\tprotected static async canCreateNewItemBuilder() {\n\t\tassert.isTruthy(this.itemBuilder)\n\t}\n\n\t@test()\n\tprotected static async hasGenerateFunction() {\n\t\tassert.isFunction(this.itemBuilder.buildTemplateItems)\n\t}\n\n\t@test()\n\tprotected static turnsSingleContractIntoTemplateItem() {\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [bookContract],\n\t\t\tlocalNamespace: 'test-namespace',\n\t\t})\n\n\t\tconst actual = eventContractTemplateItems[0]\n\n\t\tassert.isEqualDeep(actual, didBookTemplateItem)\n\t}\n\n\t@test(\n\t\t'builds emit payload schema into a template item',\n\t\t[contractWithEmitPayload],\n\t\t[expectedContractWithEmitPayloadTemplateItem],\n\t\t[\n\t\t\trelatedToRelatedToProximitySchemaTemplateItem,\n\t\t\trelatedToProximitySchemaTemplateItem,\n\t\t\tproximityEmitPayloadTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'turns 1 contract with 2 event signature into 2 template items',\n\t\t[contractWith2Signatures],\n\t\t[didBookTemplateItem, willBookTemplateItem]\n\t)\n\t@test(\n\t\t'turns 2 contract with 2 event signature into 4 template items',\n\t\t[contractWith2Signatures, contractWith2Signatures],\n\t\t[\n\t\t\tdidBookTemplateItem,\n\t\t\tdidBookTemplateItem,\n\t\t\twillBookTemplateItem,\n\t\t\twillBookTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'turns 1 contract with 2 namespaced event signatures to 2 template items',\n\t\t[contractWith2NamespacedSignatures],\n\t\t[didBookWithNamespaceTemplateItem, willBookWithNamespaceTemplateItem]\n\t)\n\tprotected static generateItems(\n\t\tcontracts: EventContract[],\n\t\texpectedEventContractTemplateItems: EventContractTemplateItem[],\n\t\texpectedSchemaTemplateItems: SchemaTemplateItem[] = []\n\t) {\n\t\tconst { eventContractTemplateItems, schemaTemplateItems } =\n\t\t\tthis.itemBuilder.buildTemplateItems({\n\t\t\t\tcontracts,\n\t\t\t\tlocalNamespace: 'appointments',\n\t\t\t})\n\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems,\n\t\t\texpectedEventContractTemplateItems\n\t\t)\n\t\tassert.isEqualDeep(schemaTemplateItems, expectedSchemaTemplateItems)\n\t}\n\n\t@test()\n\tprotected static canPullEventContractSchemaFromCoreEventContract() {\n\t\tconst { schemaTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'register-events':\n\t\t\t\t\t\t\tcoreEventContracts[0].eventSignatures['can-listen::v2020_12_25'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tconst match = schemaTemplateItems.find((item) => item.id === 'eventSource')\n\t\tassert.isTruthy(match)\n\t}\n\n\t@test()\n\tprotected static sortsEventsAlphabetically() {\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'zebra-cheeta': {},\n\t\t\t\t\t\t'register-events':\n\t\t\t\t\t\t\tcoreEventContracts[0].eventSignatures['can-listen::v2020_12_25'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tassert.isEqual(eventContractTemplateItems[0].nameCamel, 'registerEvents')\n\t\tassert.isEqual(eventContractTemplateItems[1].nameCamel, 'zebraCheeta')\n\t}\n\n\t@test()\n\tprotected static eventContractTemplateItemsHaveProperNamespacesImports() {\n\t\tconst groupsExpectedImports = [\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/groups/v2021_12_01/listEmitTargetAndPayload.schema',\n\t\t\t\timportAs: 'listEmitTargetAndPayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/groups/v2021_12_01/listResponsePayload.schema',\n\t\t\t\timportAs: 'listResponsePayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildEventContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildPermissionContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t]\n\n\t\tconst appointmentsExpectedImports = [\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/appointments/v2021_06_23/listEmitTargetAndPayload.schema',\n\t\t\t\timportAs: 'listEmitTargetAndPayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\tpackage:\n\t\t\t\t\t'#spruce/schemas/appointments/v2021_06_23/listResponsePayload.schema',\n\t\t\t\timportAs: 'listResponsePayloadSchema',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildEventContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t\t{\n\t\t\t\timportAs: '{ buildPermissionContract }',\n\t\t\t\tpackage: '@sprucelabs/mercury-types',\n\t\t\t},\n\t\t]\n\n\t\tconst { eventContractTemplateItems } = this.itemBuilder.buildTemplateItems({\n\t\t\tcontracts: [\n\t\t\t\t{\n\t\t\t\t\teventSignatures: {\n\t\t\t\t\t\t'groups.list::v2021_12_01': {\n\t\t\t\t\t\t\temitPayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listEmitTargetAndPayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_12_01',\n\t\t\t\t\t\t\t\tnamespace: 'Groups',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listResponsePayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_12_01',\n\t\t\t\t\t\t\t\tnamespace: 'Groups',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listEmitPermissions',\n\t\t\t\t\t\t\t\tname: 'list',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\n\t\t\t\t\t\t'appointments.list::v2021_06_23': {\n\t\t\t\t\t\t\temitPayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listEmitTargetAndPayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_06_23',\n\t\t\t\t\t\t\t\tnamespace: 'Appointments',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayloadSchema: {\n\t\t\t\t\t\t\t\tid: 'listResponsePayload',\n\t\t\t\t\t\t\t\tversion: 'v2021_06_23',\n\t\t\t\t\t\t\t\tnamespace: 'Appointments',\n\t\t\t\t\t\t\t\tname: '',\n\t\t\t\t\t\t\t\tfields: {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listEmitPermissions',\n\t\t\t\t\t\t\t\tname: 'list appointments',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlistenPermissionContract: {\n\t\t\t\t\t\t\t\tid: 'listListenPermissions',\n\t\t\t\t\t\t\t\tname: 'list appointments',\n\t\t\t\t\t\t\t\trequireAllPermissions: false,\n\t\t\t\t\t\t\t\tpermissions: [],\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\tlocalNamespace: 'testing',\n\t\t})\n\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems[0].imports,\n\t\t\tgroupsExpectedImports\n\t\t)\n\t\tassert.isEqualDeep(\n\t\t\teventContractTemplateItems[1].imports,\n\t\t\tappointmentsExpectedImports\n\t\t)\n\t}\n}\n"],"mappings":"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"}
|