@sprucelabs/spruce-cli 15.4.10 → 16.0.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 +27 -0
- 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/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/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/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/GlobalEmitter.js.map +1 -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.map +1 -1
- package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
- 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.map +1 -1
- package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +1 -1
- 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.map +1 -1
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +1 -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.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.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.js.map +1 -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.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.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.map +1 -1
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/CreatingATest.test.js +3 -3
- 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.js.map +1 -1
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js +1 -1
- 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.map +1 -1
- package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
- 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.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.map +1 -1
- package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
- 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.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.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/scripts/first.script.js.map +1 -1
- package/build/addons/filePrompt.addon.js.map +1 -1
- package/build/cli.js.map +1 -1
- package/build/components/FormComponent.js.map +1 -1
- package/build/components/QuizComponent.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/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/conversation/ConversationFeature.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.js.map +1 -1
- package/build/features/event/actions/CreateAction.js.map +1 -1
- 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/stores/EventStore.js.map +1 -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/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/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/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/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.d.ts +2 -1
- package/build/features/schema/stores/SchemaStore.js +2 -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.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/writers/TestWriter.js.map +1 -1
- 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/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 +0 -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/CommandService.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/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.js.map +1 -1
- package/build/tests/AbstractEventTest.js.map +1 -1
- package/build/tests/AbstractSchemaTest.js.map +1 -1
- package/build/tests/AbstractTestTest.js.map +1 -1
- package/build/tests/CommandFaker.js.map +1 -1
- package/build/tests/JestJsonParser.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.map +1 -1
- package/build/tests/fixtures/FeatureFixture.js.map +1 -1
- package/build/tests/fixtures/MercuryFixture.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/utilities/test.utility.js.map +1 -1
- package/build/tests/utilities/uiAssert.utility.js.map +1 -1
- package/build/utilities/action.utility.js.map +1 -1
- package/build/utilities/commander.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/tsConfig.utility.js.map +1 -1
- package/build/widgets/Theme.js.map +1 -1
- package/build/widgets/WidgetFactory.js.map +1 -1
- package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkInputWidget.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/TkTextWidget.js.map +1 -1
- package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
- package/build/widgets/types/input.types.js.map +1 -1
- package/build/widgets/types/menuBar.types.js.map +1 -1
- package/build/widgets/types/text.types.js.map +1 -1
- package/build/widgets/types/window.types.js.map +1 -1
- package/build/writers/AbstractWriter.js.map +1 -1
- package/package.json +35 -35
- package/src/__tests__/behavioral/views/CreatingASkillView.test.ts +3 -2
- package/src/features/schema/stores/SchemaStore.ts +4 -2
- package/build/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.d.ts +0 -1
- package/build/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.js +0 -14
- package/build/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.js.map +0 -1
- package/src/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegisteringSkillViewOnBoot.test.js","names":["RegisteringSkillViewOnBootTest","registerAndBootSkill","Store","fetchSkillViews","skillViews","assert","isFalsy","Action","execute","viewType","isRoot","buildSkill","bootSkill","results","errors","isTruthy","registerCurrentSkillAndInstallToOrg","boot","meta","kill","Service","build","people","loginAsDemoPerson","DEMO_NUMBER_VIEWS_ON_BOOT","skillFixture","getSkillFixture","orgFixture","getOrganizationFixture","seedDemoOrg","name","org","registerCurrentSkill","skill","installSkillAtOrganization","id","currentSkill","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/RegisteringSkillViewOnBoot.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { DEMO_NUMBER_VIEWS_ON_BOOT } from '../../tests/constants'\n\nexport default class RegisteringSkillViewOnBootTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\n\t@test()\n\tprotected static async noEventsToStart() {\n\t\tawait this.registerAndBootSkill()\n\n\t\tconst skillViews = await this.Store('view').fetchSkillViews()\n\n\t\tassert.isFalsy(skillViews)\n\t}\n\n\t@test()\n\tprotected static async syncsViewsOnBoot() {\n\t\tawait this.Action('view', 'create').execute({\n\t\t\tviewType: 'skillView',\n\t\t\tisRoot: true,\n\t\t})\n\n\t\tawait this.buildSkill()\n\n\t\tconst results = await this.bootSkill()\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst skillViews = await this.Store('view').fetchSkillViews()\n\n\t\tassert.isTruthy(skillViews, 'Skill views were not registered on boot!')\n\t}\n\n\tprotected static async registerAndBootSkill() {\n\t\tawait this.registerCurrentSkillAndInstallToOrg()\n\t\tawait this.buildSkill()\n\n\t\tconst results = await this.bootSkill()\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\tprivate static async bootSkill() {\n\t\tconst boot = await this.Action('skill', 'boot').execute({})\n\t\tboot.meta?.kill()\n\t\treturn boot\n\t}\n\n\tprivate static async buildSkill() {\n\t\tawait this.Service('build').build()\n\t}\n\n\tprotected static async registerCurrentSkillAndInstallToOrg() {\n\t\tawait this.people.loginAsDemoPerson(DEMO_NUMBER_VIEWS_ON_BOOT)\n\t\tconst skillFixture = this.getSkillFixture()\n\t\tconst orgFixture = this.getOrganizationFixture()\n\n\t\tconst org = await orgFixture.seedDemoOrg({ name: 'my org' })\n\n\t\tconst skill = await skillFixture.registerCurrentSkill({\n\t\t\tname: 'current skill',\n\t\t})\n\n\t\tawait orgFixture.installSkillAtOrganization(skill.id, org.id)\n\n\t\treturn { skillFixture, currentSkill: skill, org, orgFixture }\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,8B,WAGnB,
|
|
1
|
+
{"version":3,"file":"RegisteringSkillViewOnBoot.test.js","names":["RegisteringSkillViewOnBootTest","test","registerAndBootSkill","Store","fetchSkillViews","skillViews","assert","isFalsy","Action","execute","viewType","isRoot","buildSkill","bootSkill","results","errors","isTruthy","registerCurrentSkillAndInstallToOrg","boot","meta","kill","Service","build","people","loginAsDemoPerson","DEMO_NUMBER_VIEWS_ON_BOOT","skillFixture","getSkillFixture","orgFixture","getOrganizationFixture","seedDemoOrg","name","org","registerCurrentSkill","skill","installSkillAtOrganization","id","currentSkill","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/RegisteringSkillViewOnBoot.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { DEMO_NUMBER_VIEWS_ON_BOOT } from '../../tests/constants'\n\nexport default class RegisteringSkillViewOnBootTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\n\t@test()\n\tprotected static async noEventsToStart() {\n\t\tawait this.registerAndBootSkill()\n\n\t\tconst skillViews = await this.Store('view').fetchSkillViews()\n\n\t\tassert.isFalsy(skillViews)\n\t}\n\n\t@test()\n\tprotected static async syncsViewsOnBoot() {\n\t\tawait this.Action('view', 'create').execute({\n\t\t\tviewType: 'skillView',\n\t\t\tisRoot: true,\n\t\t})\n\n\t\tawait this.buildSkill()\n\n\t\tconst results = await this.bootSkill()\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst skillViews = await this.Store('view').fetchSkillViews()\n\n\t\tassert.isTruthy(skillViews, 'Skill views were not registered on boot!')\n\t}\n\n\tprotected static async registerAndBootSkill() {\n\t\tawait this.registerCurrentSkillAndInstallToOrg()\n\t\tawait this.buildSkill()\n\n\t\tconst results = await this.bootSkill()\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\tprivate static async bootSkill() {\n\t\tconst boot = await this.Action('skill', 'boot').execute({})\n\t\tboot.meta?.kill()\n\t\treturn boot\n\t}\n\n\tprivate static async buildSkill() {\n\t\tawait this.Service('build').build()\n\t}\n\n\tprotected static async registerCurrentSkillAndInstallToOrg() {\n\t\tawait this.people.loginAsDemoPerson(DEMO_NUMBER_VIEWS_ON_BOOT)\n\t\tconst skillFixture = this.getSkillFixture()\n\t\tconst orgFixture = this.getOrganizationFixture()\n\n\t\tconst org = await orgFixture.seedDemoOrg({ name: 'my org' })\n\n\t\tconst skill = await skillFixture.registerCurrentSkill({\n\t\t\tname: 'current skill',\n\t\t})\n\n\t\tawait orgFixture.installSkillAtOrganization(skill.id, org.id)\n\n\t\treturn { skillFixture, currentSkill: skill, org, orgFixture }\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RememberingUpgradeSelections.test.js","names":["RememberingUpgradeSelectionsTest","expected","getExpectedBuildCi","updater","ScriptUpdater","assertShowsAlwaysSkipOption","ui","sendInput","wait","pkg","Service","ci","get","assert","isEqual","getFeatureInstaller","getFeature","scripts","update","key","value","latestScripts","settings","waitForInput","last","getLastInvocation","doesInclude","FILE_ACTION_ALWAYS_SKIP","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/RememberingUpgradeSelections.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport { FILE_ACTION_ALWAYS_SKIP } from '../../constants'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport ScriptUpdater from '../../updaters/ScriptUpdater'\n\nexport default class RememberingUpgradeSelectionsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\n\t@test()\n\tprotected static async changedScriptsHasAlwaysSkipOptions() {\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco')\n\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\n\t\tawait this.wait(100)\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\tprivate static getExpectedBuildCi() {\n\t\t//@ts-ignore\n\t\treturn this.getFeatureInstaller().getFeature('skill').scripts['build.ci']\n\t}\n\n\t@test()\n\tprotected static async shouldNotAskASecondTime() {\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco2')\n\t\tawait updater.update()\n\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\t@test()\n\tprotected static async stillAsksAboutDifferentScript() {\n\t\tconst updater = this.ScriptUpdater('build.dev', 'taco')\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\t}\n\n\tprivate static ScriptUpdater(key: string, value: string) {\n\t\tconst updater = new ScriptUpdater({\n\t\t\tpkg: this.Service('pkg'),\n\t\t\tlatestScripts: {\n\t\t\t\t[key]: value,\n\t\t\t},\n\t\t\tui: this.ui,\n\t\t\tsettings: this.Service('settings'),\n\t\t})\n\t\treturn updater\n\t}\n\n\tprivate static async assertShowsAlwaysSkipOption(updater: ScriptUpdater) {\n\t\tvoid updater.update()\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last, {\n\t\t\t'options.options.choices[].value': FILE_ACTION_ALWAYS_SKIP,\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,gC,WAGnB,
|
|
1
|
+
{"version":3,"file":"RememberingUpgradeSelections.test.js","names":["RememberingUpgradeSelectionsTest","test","expected","getExpectedBuildCi","updater","ScriptUpdater","assertShowsAlwaysSkipOption","ui","sendInput","wait","pkg","Service","ci","get","assert","isEqual","getFeatureInstaller","getFeature","scripts","update","key","value","latestScripts","settings","waitForInput","last","getLastInvocation","doesInclude","FILE_ACTION_ALWAYS_SKIP","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/RememberingUpgradeSelections.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport { FILE_ACTION_ALWAYS_SKIP } from '../../constants'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport ScriptUpdater from '../../updaters/ScriptUpdater'\n\nexport default class RememberingUpgradeSelectionsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\n\t@test()\n\tprotected static async changedScriptsHasAlwaysSkipOptions() {\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco')\n\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\n\t\tawait this.wait(100)\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\tprivate static getExpectedBuildCi() {\n\t\t//@ts-ignore\n\t\treturn this.getFeatureInstaller().getFeature('skill').scripts['build.ci']\n\t}\n\n\t@test()\n\tprotected static async shouldNotAskASecondTime() {\n\t\tconst updater = this.ScriptUpdater('build.ci', 'taco2')\n\t\tawait updater.update()\n\n\t\tconst expected = this.getExpectedBuildCi()\n\t\tconst pkg = this.Service('pkg')\n\t\tconst ci = pkg.get(['scripts', 'build.ci'])\n\n\t\tassert.isEqual(ci, expected)\n\t}\n\n\t@test()\n\tprotected static async stillAsksAboutDifferentScript() {\n\t\tconst updater = this.ScriptUpdater('build.dev', 'taco')\n\t\tawait this.assertShowsAlwaysSkipOption(updater)\n\n\t\tawait this.ui.sendInput('alwaysSkip')\n\t}\n\n\tprivate static ScriptUpdater(key: string, value: string) {\n\t\tconst updater = new ScriptUpdater({\n\t\t\tpkg: this.Service('pkg'),\n\t\t\tlatestScripts: {\n\t\t\t\t[key]: value,\n\t\t\t},\n\t\t\tui: this.ui,\n\t\t\tsettings: this.Service('settings'),\n\t\t})\n\t\treturn updater\n\t}\n\n\tprivate static async assertShowsAlwaysSkipOption(updater: ScriptUpdater) {\n\t\tvoid updater.update()\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last, {\n\t\t\t'options.options.choices[].value': FILE_ACTION_ALWAYS_SKIP,\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,gC,WAGnB,IAAAC,UAAA,G,UAsBA,IAAAA,UAAA,G,UAYA,IAAAA,UAAA,G;;;;;;;;;;;;;8HAlCD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOC,QAFP,GAEkB,KAAKC,kBAAL,EAFlB;gBAGOC,OAHP,GAGiB,KAAKC,aAAL,CAAmB,UAAnB,EAA+B,MAA/B,CAHjB;gBAAA;gBAAA,OAKO,KAAKC,2BAAL,CAAiCF,OAAjC,CALP;;cAAA;gBAAA;gBAAA,OAOO,KAAKG,EAAL,CAAQC,SAAR,CAAkB,YAAlB,CAPP;;cAAA;gBAAA;gBAAA,OASO,KAAKC,IAAL,CAAU,GAAV,CATP;;cAAA;gBAWOC,GAXP,GAWa,KAAKC,OAAL,CAAa,KAAb,CAXb;gBAYOC,EAZP,GAYYF,GAAG,CAACG,GAAJ,CAAQ,CAAC,SAAD,EAAY,UAAZ,CAAR,CAZZ;;gBAcCC,YAAA,CAAOC,OAAP,CAAeH,EAAf,EAAmBV,QAAnB;;cAdD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAiBA,8BAAoC;MACnC;MACA,OAAO,KAAKc,mBAAL,GAA2BC,UAA3B,CAAsC,OAAtC,EAA+CC,OAA/C,CAAuD,UAAvD,CAAP;IACA;;;;mHAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOd,OAFP,GAEiB,KAAKC,aAAL,CAAmB,UAAnB,EAA+B,OAA/B,CAFjB;gBAAA;gBAAA,OAGOD,OAAO,CAACe,MAAR,EAHP;;cAAA;gBAKOjB,QALP,GAKkB,KAAKC,kBAAL,EALlB;gBAMOO,GANP,GAMa,KAAKC,OAAL,CAAa,KAAb,CANb;gBAOOC,EAPP,GAOYF,GAAG,CAACG,GAAJ,CAAQ,CAAC,SAAD,EAAY,UAAZ,CAAR,CAPZ;;gBASCC,YAAA,CAAOC,OAAP,CAAeH,EAAf,EAAmBV,QAAnB;;cATD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;yHAYA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOE,OAFP,GAEiB,KAAKC,aAAL,CAAmB,WAAnB,EAAgC,MAAhC,CAFjB;gBAAA;gBAAA,OAGO,KAAKC,2BAAL,CAAiCF,OAAjC,CAHP;;cAAA;gBAAA;gBAAA,OAKO,KAAKG,EAAL,CAAQC,SAAR,CAAkB,YAAlB,CALP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAQA,uBAA6BY,GAA7B,EAA0CC,KAA1C,EAAyD;MACxD,IAAMjB,OAAO,GAAG,IAAIC,0BAAJ,CAAkB;QACjCK,GAAG,EAAE,KAAKC,OAAL,CAAa,KAAb,CAD4B;QAEjCW,aAAa,uCACXF,GADW,EACLC,KADK,CAFoB;QAKjCd,EAAE,EAAE,KAAKA,EALwB;QAMjCgB,QAAQ,EAAE,KAAKZ,OAAL,CAAa,UAAb;MANuB,CAAlB,CAAhB;MAQA,OAAOP,OAAP;IACA;;;;uHAED,kBAAiDA,OAAjD;QAAA;QAAA;UAAA;YAAA;cAAA;gBACC,KAAKA,OAAO,CAACe,MAAR,EAAL;gBADD;gBAAA,OAGO,KAAKK,YAAL,EAHP;;cAAA;gBAKOC,IALP,GAKc,KAAKlB,EAAL,CAAQmB,iBAAR,EALd;;gBAOCZ,YAAA,CAAOa,WAAP,CAAmBF,IAAnB,EAAyB;kBACxB,mCAAmCG;gBADX,CAAzB;;cAPD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAzD6DC,8B,8DAC5B,S"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingLogTransportsInASkill.test.js","names":["SettingLogTransportsInASkillTest","action","Action","assert","isFunction","execute","createTransport","results","isFalsy","errors","nameReadable","nameCamel","namesUtil","toCamel","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","resolvePath","isTrue","diskUtil","doesFileExist","isTruthy","errorAssert","assertError","name","LintService","enableLinting","transportContents","createTransportWithContents","Service","build","boot","meta","kill","cwd","writeFile","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts"],"sourcesContent":["import { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport LintService from '../../services/LintService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingLogTransportsInASkillTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'skills'\n\n\t@test()\n\tprotected static async hasCreateTransportCommand() {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tassert.isFunction(action.execute)\n\t}\n\n\t@test()\n\tprotected static async needsNameOfTransport() {\n\t\tconst results = await this.createTransport()\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\t@test('can create transport 1', 'Sms')\n\t@test('can create transport 2', 'Email')\n\tprotected static async createsTransportFile(nameReadable: string) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst nameCamel = namesUtil.toCamel(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tmatch,\n\t\t\tthis.resolvePath('src/logTransports', `${nameCamel}Transport.plugin.ts`)\n\t\t)\n\n\t\tassert.isTrue(diskUtil.doesFileExist(match))\n\t}\n\n\t@test()\n\tprotected static async cantCreateTransportThatAlreadyExists() {\n\t\tconst results = await this.createTransport('Slack')\n\t\tassert.isTruthy(results.errors)\n\t\terrorAssert.assertError(results.errors[0], 'TRANSPORT_ALREADY_EXISTS', {\n\t\t\tname: 'Slack',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async logsWriteToTransports() {\n\t\tLintService.enableLinting()\n\t\tconst transportContents = `\n\t\timport { diskUtil, Level, LogTransport } from '@sprucelabs/spruce-skill-utils'\n\t\t\n\t\texport default function (): {\n\t\t\tlevels: Level[]\n\t\t\ttransport: LogTransport\n\t\t} | null {\n\t\t\treturn {\n\t\t\t\tlevels: ['ERROR', 'INFO', 'WARN'],\n\t\t\t\ttransport: (...messageParts: string[]) => {\n\t\t\t\t\tconst message = messageParts.join(' ')\n\t\t\t\t\tdiskUtil.writeFile(\n\t\t\t\t\t\tdiskUtil.resolvePath(__dirname, '..', '..', 'log.txt'),\n\t\t\t\t\t\tmessage\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t\t`\n\n\t\tawait this.createTransportWithContents(transportContents, 'File')\n\t\tawait this.Service('build').build()\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({})\n\n\t\tawait boot.meta?.kill()\n\n\t\tassert.isTrue(\n\t\t\tdiskUtil.doesFileExist(diskUtil.resolvePath(this.cwd, 'log.txt'))\n\t\t)\n\t}\n\n\tprivate static async createTransportWithContents(\n\t\ttransportContents: string,\n\t\tnameReadable: string\n\t) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${namesUtil.toCamel(nameReadable)}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, transportContents)\n\t}\n\n\tprivate static async createTransport(nameReadable = 'Slack') {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tconst results = await action.execute({\n\t\t\tnameReadable,\n\t\t\tnameCamel: namesUtil.toCamel(nameReadable),\n\t\t})\n\t\treturn results\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,gC,WAGnB,
|
|
1
|
+
{"version":3,"file":"SettingLogTransportsInASkill.test.js","names":["SettingLogTransportsInASkillTest","test","action","Action","assert","isFunction","execute","createTransport","results","isFalsy","errors","nameReadable","nameCamel","namesUtil","toCamel","match","testUtil","assertFileByNameInGeneratedFiles","files","doesInclude","resolvePath","isTrue","diskUtil","doesFileExist","isTruthy","errorAssert","assertError","name","LintService","enableLinting","transportContents","createTransportWithContents","Service","build","boot","meta","kill","cwd","writeFile","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts"],"sourcesContent":["import { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport LintService from '../../services/LintService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingLogTransportsInASkillTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'skills'\n\n\t@test()\n\tprotected static async hasCreateTransportCommand() {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tassert.isFunction(action.execute)\n\t}\n\n\t@test()\n\tprotected static async needsNameOfTransport() {\n\t\tconst results = await this.createTransport()\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\t@test('can create transport 1', 'Sms')\n\t@test('can create transport 2', 'Email')\n\tprotected static async createsTransportFile(nameReadable: string) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst nameCamel = namesUtil.toCamel(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tassert.doesInclude(\n\t\t\tmatch,\n\t\t\tthis.resolvePath('src/logTransports', `${nameCamel}Transport.plugin.ts`)\n\t\t)\n\n\t\tassert.isTrue(diskUtil.doesFileExist(match))\n\t}\n\n\t@test()\n\tprotected static async cantCreateTransportThatAlreadyExists() {\n\t\tconst results = await this.createTransport('Slack')\n\t\tassert.isTruthy(results.errors)\n\t\terrorAssert.assertError(results.errors[0], 'TRANSPORT_ALREADY_EXISTS', {\n\t\t\tname: 'Slack',\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async logsWriteToTransports() {\n\t\tLintService.enableLinting()\n\t\tconst transportContents = `\n\t\timport { diskUtil, Level, LogTransport } from '@sprucelabs/spruce-skill-utils'\n\t\t\n\t\texport default function (): {\n\t\t\tlevels: Level[]\n\t\t\ttransport: LogTransport\n\t\t} | null {\n\t\t\treturn {\n\t\t\t\tlevels: ['ERROR', 'INFO', 'WARN'],\n\t\t\t\ttransport: (...messageParts: string[]) => {\n\t\t\t\t\tconst message = messageParts.join(' ')\n\t\t\t\t\tdiskUtil.writeFile(\n\t\t\t\t\t\tdiskUtil.resolvePath(__dirname, '..', '..', 'log.txt'),\n\t\t\t\t\t\tmessage\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t\t`\n\n\t\tawait this.createTransportWithContents(transportContents, 'File')\n\t\tawait this.Service('build').build()\n\n\t\tconst boot = await this.Action('skill', 'boot').execute({})\n\n\t\tawait boot.meta?.kill()\n\n\t\tassert.isTrue(\n\t\t\tdiskUtil.doesFileExist(diskUtil.resolvePath(this.cwd, 'log.txt'))\n\t\t)\n\t}\n\n\tprivate static async createTransportWithContents(\n\t\ttransportContents: string,\n\t\tnameReadable: string\n\t) {\n\t\tconst results = await this.createTransport(nameReadable)\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${namesUtil.toCamel(nameReadable)}Transport.plugin.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(match, transportContents)\n\t}\n\n\tprivate static async createTransport(nameReadable = 'Slack') {\n\t\tconst action = this.Action('log', 'createTransport')\n\t\tconst results = await action.execute({\n\t\t\tnameReadable,\n\t\t\tnameCamel: namesUtil.toCamel(nameReadable),\n\t\t})\n\t\treturn results\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingRemote.test.js","names":["SettingRemoteTest","REMOTE_LOCAL","REMOTE_DEV","REMOTE_SANDBOX","REMOTE_PROD","assert","isFunction","Action","execute","remote","expected","env","Service","host","get","isEqual","feature","action","TerminalInterface","setDoesSupportColor","unset","shouldAutoHandleDependencies","waitForInput","last","ui","getLastInvocation","doesInclude","options","label","reset","shouldThrowOnListenerError","results","isTruthy","errors","stack","set","summaryLines","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SettingRemote.test.ts"],"sourcesContent":["import {\n\tREMOTE_DEV,\n\tREMOTE_LOCAL,\n\tREMOTE_PROD,\n\tREMOTE_SANDBOX,\n} from '@sprucelabs/spruce-event-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { FeatureCode } from '../../features/features.types'\nimport TerminalInterface from '../../interfaces/TerminalInterface'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class SettingRemoteTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async hasSetRemoteAction() {\n\t\tassert.isFunction(this.Action('event', 'setRemote').execute)\n\t}\n\n\t@test(`saves local as ${REMOTE_LOCAL}`, `local`, `${REMOTE_LOCAL}`)\n\t@test(`saves dev as ${REMOTE_DEV}`, `developer`, `${REMOTE_DEV}`)\n\t@test(`saves sandbox as ${REMOTE_SANDBOX}`, `sandbox`, `${REMOTE_SANDBOX}`)\n\t@test(`saves prod as ${REMOTE_PROD}`, `production`, `${REMOTE_PROD}`)\n\tprotected static async savesRemote(remote: string, expected: string) {\n\t\tawait this.Action('event', 'setRemote').execute({ remote })\n\n\t\tconst env = this.Service('env')\n\t\tconst host = env.get('HOST')\n\n\t\tassert.isEqual(host, expected)\n\t}\n\n\t@test('create.event asks for remote on IS TTY', 'event', 'create')\n\t@test('sync.events asks for remote on IS TTY', 'event', 'sync')\n\t@test('login asks for remote on IS TTY', 'person', 'login')\n\t@test('login.skill asks for remote on IS TTY', 'skill', 'login')\n\tprotected static async shouldAskForRemoteBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\tfeature: FeatureCode,\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(true)\n\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tvoid this.Action(feature, action, {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t}).execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last.options.label, 'remote')\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test('create.event throws for remote on NOT TTY', 'create', false)\n\t@test('sync.events throws for remote on NOT TTY', 'sync', false)\n\tprotected static async shouldThrowBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(false)\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tconst results = await this.Action('event', action, {\n\t\t\tshouldThrowOnListenerError: false,\n\t\t}).execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t\tassert.doesInclude(results.errors[0].stack, 'env.HOST')\n\t}\n\n\t@test()\n\tprotected static async resultsOfCommandHasRemoteMixedIntoSummary() {\n\t\tthis.Service('remote').set('developer')\n\t\tconst results = await this.Action('event', 'sync').execute({})\n\n\t\tassert.isTruthy(results.summaryLines)\n\t\tassert.doesInclude(results.summaryLines, 'Remote: dev')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAMA;;AAEA;;AACA;;;;;;;;IAEqBA,iB,WAGnB,
|
|
1
|
+
{"version":3,"file":"SettingRemote.test.js","names":["SettingRemoteTest","test","REMOTE_LOCAL","REMOTE_DEV","REMOTE_SANDBOX","REMOTE_PROD","assert","isFunction","Action","execute","remote","expected","env","Service","host","get","isEqual","feature","action","TerminalInterface","setDoesSupportColor","unset","shouldAutoHandleDependencies","waitForInput","last","ui","getLastInvocation","doesInclude","options","label","reset","shouldThrowOnListenerError","results","isTruthy","errors","stack","set","summaryLines","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SettingRemote.test.ts"],"sourcesContent":["import {\n\tREMOTE_DEV,\n\tREMOTE_LOCAL,\n\tREMOTE_PROD,\n\tREMOTE_SANDBOX,\n} from '@sprucelabs/spruce-event-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { FeatureCode } from '../../features/features.types'\nimport TerminalInterface from '../../interfaces/TerminalInterface'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class SettingRemoteTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async hasSetRemoteAction() {\n\t\tassert.isFunction(this.Action('event', 'setRemote').execute)\n\t}\n\n\t@test(`saves local as ${REMOTE_LOCAL}`, `local`, `${REMOTE_LOCAL}`)\n\t@test(`saves dev as ${REMOTE_DEV}`, `developer`, `${REMOTE_DEV}`)\n\t@test(`saves sandbox as ${REMOTE_SANDBOX}`, `sandbox`, `${REMOTE_SANDBOX}`)\n\t@test(`saves prod as ${REMOTE_PROD}`, `production`, `${REMOTE_PROD}`)\n\tprotected static async savesRemote(remote: string, expected: string) {\n\t\tawait this.Action('event', 'setRemote').execute({ remote })\n\n\t\tconst env = this.Service('env')\n\t\tconst host = env.get('HOST')\n\n\t\tassert.isEqual(host, expected)\n\t}\n\n\t@test('create.event asks for remote on IS TTY', 'event', 'create')\n\t@test('sync.events asks for remote on IS TTY', 'event', 'sync')\n\t@test('login asks for remote on IS TTY', 'person', 'login')\n\t@test('login.skill asks for remote on IS TTY', 'skill', 'login')\n\tprotected static async shouldAskForRemoteBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\tfeature: FeatureCode,\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(true)\n\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tvoid this.Action(feature, action, {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t}).execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\n\t\tassert.doesInclude(last.options.label, 'remote')\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test('create.event throws for remote on NOT TTY', 'create', false)\n\t@test('sync.events throws for remote on NOT TTY', 'sync', false)\n\tprotected static async shouldThrowBeforeEventActionIsInvokedIfTerminalSupportsIt(\n\t\taction: string\n\t) {\n\t\tTerminalInterface.setDoesSupportColor(false)\n\t\tconst env = this.Service('env')\n\t\tenv.unset('HOST')\n\n\t\tconst results = await this.Action('event', action, {\n\t\t\tshouldThrowOnListenerError: false,\n\t\t}).execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t\tassert.doesInclude(results.errors[0].stack, 'env.HOST')\n\t}\n\n\t@test()\n\tprotected static async resultsOfCommandHasRemoteMixedIntoSummary() {\n\t\tthis.Service('remote').set('developer')\n\t\tconst results = await this.Action('event', 'sync').execute({})\n\n\t\tassert.isTruthy(results.summaryLines)\n\t\tassert.doesInclude(results.summaryLines, 'Remote: dev')\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingUpASkillForTesting.test.js","names":["SettingUpASkillForTestingTest","assert","isFunction","Action","execute","demoNumber","DEMO_NUMBER","skillSlug","results","isFalsy","errors","auth","Service","person","getLoggedInPerson","isTruthy","skill","getCurrentSkill","isEqual","slug","updateCurrentSkill","fail","AbstractSkillTest","Date","getTime"],"sources":["../../../src/__tests__/behavioral/SettingUpASkillForTesting.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { DEMO_NUMBER } from '../../tests/constants'\n\nexport default class SettingUpASkillForTestingTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'tests'\n\tprotected static skillSlug = `test-skill-${new Date().getTime()}`\n\n\t@test()\n\tprotected static async hasSetupAction() {\n\t\tassert.isFunction(this.Action('test', 'setup').execute)\n\t}\n\n\t@test()\n\tprotected static async logsInAsDemoPerson() {\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst auth = this.Service('auth')\n\t\tconst person = auth.getLoggedInPerson()\n\n\t\tassert.isTruthy(person)\n\t}\n\n\t@test()\n\tprotected static async registersCurrentSkill() {\n\t\tconst auth = this.Service('auth')\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isTruthy(skill)\n\t}\n\n\t@test()\n\tprotected static async canRunAgainWithoutError() {\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst auth = this.Service('auth')\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isEqual(skill?.slug, this.skillSlug)\n\t}\n\n\t@test()\n\tprotected static async canCorrectInvalidAuth() {\n\t\tconst auth = this.Service('auth')\n\t\t//@ts-ignore\n\t\tauth.updateCurrentSkill({ fail: true })\n\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isEqual(skill?.slug, this.skillSlug)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,6B,WAInB,
|
|
1
|
+
{"version":3,"file":"SettingUpASkillForTesting.test.js","names":["SettingUpASkillForTestingTest","test","assert","isFunction","Action","execute","demoNumber","DEMO_NUMBER","skillSlug","results","isFalsy","errors","auth","Service","person","getLoggedInPerson","isTruthy","skill","getCurrentSkill","isEqual","slug","updateCurrentSkill","fail","AbstractSkillTest","Date","getTime"],"sources":["../../../src/__tests__/behavioral/SettingUpASkillForTesting.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { DEMO_NUMBER } from '../../tests/constants'\n\nexport default class SettingUpASkillForTestingTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'tests'\n\tprotected static skillSlug = `test-skill-${new Date().getTime()}`\n\n\t@test()\n\tprotected static async hasSetupAction() {\n\t\tassert.isFunction(this.Action('test', 'setup').execute)\n\t}\n\n\t@test()\n\tprotected static async logsInAsDemoPerson() {\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst auth = this.Service('auth')\n\t\tconst person = auth.getLoggedInPerson()\n\n\t\tassert.isTruthy(person)\n\t}\n\n\t@test()\n\tprotected static async registersCurrentSkill() {\n\t\tconst auth = this.Service('auth')\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isTruthy(skill)\n\t}\n\n\t@test()\n\tprotected static async canRunAgainWithoutError() {\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst auth = this.Service('auth')\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isEqual(skill?.slug, this.skillSlug)\n\t}\n\n\t@test()\n\tprotected static async canCorrectInvalidAuth() {\n\t\tconst auth = this.Service('auth')\n\t\t//@ts-ignore\n\t\tauth.updateCurrentSkill({ fail: true })\n\n\t\tconst results = await this.Action('test', 'setup').execute({\n\t\t\tdemoNumber: DEMO_NUMBER,\n\t\t\tskillSlug: this.skillSlug,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst skill = auth.getCurrentSkill()\n\n\t\tassert.isEqual(skill?.slug, this.skillSlug)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,6B,WAInB,IAAAC,UAAA,G,UAKA,IAAAA,UAAA,G,UAeA,IAAAA,UAAA,G,UAQA,IAAAA,UAAA,G,UAeA,IAAAA,UAAA,G;;;;;;;;;;;;;0GA3CD;QAAA;UAAA;YAAA;cAAA;gBAECC,YAAA,CAAOC,UAAP,CAAkB,KAAKC,MAAL,CAAY,MAAZ,EAAoB,OAApB,EAA6BC,OAA/C;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;8GAKA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEuB,KAAKD,MAAL,CAAY,MAAZ,EAAoB,OAApB,EAA6BC,OAA7B,CAAqC;kBAC1DC,UAAU,EAAEC,sBAD8C;kBAE1DC,SAAS,EAAE,KAAKA;gBAF0C,CAArC,CAFvB;;cAAA;gBAEOC,OAFP;;gBAOCP,YAAA,CAAOQ,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEMC,IATP,GASc,KAAKC,OAAL,CAAa,MAAb,CATd;gBAUOC,MAVP,GAUgBF,IAAI,CAACG,iBAAL,EAVhB;;gBAYCb,YAAA,CAAOc,QAAP,CAAgBF,MAAhB;;cAZD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;iHAeA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOF,IAFP,GAEc,KAAKC,OAAL,CAAa,MAAb,CAFd;gBAGOI,KAHP,GAGeL,IAAI,CAACM,eAAL,EAHf;;gBAKChB,YAAA,CAAOc,QAAP,CAAgBC,KAAhB;;cALD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;mHAQA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEuB,KAAKb,MAAL,CAAY,MAAZ,EAAoB,OAApB,EAA6BC,OAA7B,CAAqC;kBAC1DC,UAAU,EAAEC,sBAD8C;kBAE1DC,SAAS,EAAE,KAAKA;gBAF0C,CAArC,CAFvB;;cAAA;gBAEOC,OAFP;;gBAOCP,YAAA,CAAOQ,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEMC,IATP,GASc,KAAKC,OAAL,CAAa,MAAb,CATd;gBAUOI,KAVP,GAUeL,IAAI,CAACM,eAAL,EAVf;;gBAYChB,YAAA,CAAOiB,OAAP,CAAeF,KAAf,aAAeA,KAAf,uBAAeA,KAAK,CAAEG,IAAtB,EAA4B,KAAKZ,SAAjC;;cAZD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;iHAeA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOI,IAFP,GAEc,KAAKC,OAAL,CAAa,MAAb,CAFd,EAGC;;gBACAD,IAAI,CAACS,kBAAL,CAAwB;kBAAEC,IAAI,EAAE;gBAAR,CAAxB;gBAJD;gBAAA,OAMuB,KAAKlB,MAAL,CAAY,MAAZ,EAAoB,OAApB,EAA6BC,OAA7B,CAAqC;kBAC1DC,UAAU,EAAEC,sBAD8C;kBAE1DC,SAAS,EAAE,KAAKA;gBAF0C,CAArC,CANvB;;cAAA;gBAMOC,OANP;;gBAWCP,YAAA,CAAOQ,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEMM,KAbP,GAaeL,IAAI,CAACM,eAAL,EAbf;;gBAeChB,YAAA,CAAOiB,OAAP,CAAeF,KAAf,aAAeA,KAAf,uBAAeA,KAAK,CAAEG,IAAtB,EAA4B,KAAKZ,SAAjC;;cAfD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EA/C0De,8B,8DACzB,O,+EACU,IAAIC,IAAJ,GAAWC,OAAX,E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingUpSchemasForModuleDistribution.test.js","names":["LOCAL_NAMESPACE","REMOTE_NAMESPACE","REMOTE_MODULE","REMOTE_MODULE2","SettingUpSchemasForModuleDistributionTest","namePascal","remoteModule","count","nameCamel","namesUtil","toCamel","promise","Action","execute","nameReadable","moduleToImportFromWhenRemote","wait","ui","isWaitingForInput","sendInput","versionUtil","generateVersion","constValue","results","assert","isFalsy","errors","builderFile","testUtil","assertFileByNameInGeneratedFiles","files","Service","importDefault","builder","isEqual","schemaFile","schema","id","templateItems","generateTemplateItems","templateItem","importFrom","isFalse","schemaNames","expectedModules","shouldConfirmInstall","reInstallSkill","Store","setCurrentSkillsNamespace","schemas","map","name","getEmitter","on","SyncAction","waitForInput","secondToLast","invocations","length","options","headline","expected","doesInclude","lines","pkg","isTrue","isInstalled","isTruthy","errorAssert","assertError","push","shouldInstallMissingDependencies","assertCalendarEventSchemaIsImported","doesThrow","importsWhenRemote","mySchema","fields","calendarEvent","type","schema1","namespace","version","localSchemaFile","localSchema","isEqualDeep","assertValidTypesFileWhenAddingRemoteImport","importGeneratedFile","completedFormBuilder","isRequired","personId","values","isArray","valueType","builderForm","dateDeleted","schemaId","itemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","TestSkill","find","r","schemaIds","dirValue","schema2","schemaTypesFile","check","optionOverrides","fileName","imported","calendarEventContents","diskUtil","readFile","trim","builder1","nestedSchema","firstName","resolveHashSprucePath","typesContent","writeFile","AbstractSkillTest","fieldName1","label","fieldName2","hint"],"sources":["../../../src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts"],"sourcesContent":["import { Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport { FeatureActionResponse } from '../../features/features.types'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst LOCAL_NAMESPACE = 'TestingSchemas'\nconst REMOTE_NAMESPACE = 'RemoteSchemas'\n\nconst REMOTE_MODULE = '@sprucelabs/calendar-utils'\nconst REMOTE_MODULE2 = '@sprucelabs/spruce-templates'\n\nexport default class SettingUpSchemasForModuleDistributionTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\tprivate static builder1: Schema\n\tprivate static schema1: Schema = {\n\t\tid: 'calendarEvent',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/calendar-utils',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\t//@ts-ignore\n\tprivate static schema1b: Schema\n\tprivate static schema2: Schema = {\n\t\tid: 'calendarEvent2',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/spruce-templates',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 1',\n\t\t'CalendarEvent',\n\t\tREMOTE_MODULE,\n\t\t'1'\n\t)\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 2',\n\t\t'CalendarEvent2',\n\t\tREMOTE_MODULE2,\n\t\t'2'\n\t)\n\tprotected static async canSpecifyModuleToImportFromWhenRemote(\n\t\tnamePascal: string,\n\t\tremoteModule: string,\n\t\tcount: '1' | '2'\n\t) {\n\t\tconst nameCamel = namesUtil.toCamel(namePascal)\n\t\tconst promise = this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal,\n\t\t\tnameCamel,\n\t\t\tmoduleToImportFromWhenRemote: remoteModule,\n\t\t})\n\n\t\tawait this.wait(10)\n\n\t\tif (this.ui.isWaitingForInput()) {\n\t\t\tawait this.ui.sendInput(versionUtil.generateVersion().constValue)\n\t\t}\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst builderFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst builder = await this.Service('import').importDefault(builderFile)\n\t\tassert.isEqual(builder.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`builder${count}`] = builder\n\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.schema.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst schema = await this.Service('import').importDefault(schemaFile)\n\t\tassert.isEqual(schema.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`schema${count}`] = schema\n\t\t//@ts-ignore\n\t\tthis[`schema${count}b`] = { ...schema, id: `schema${count}B` }\n\t}\n\n\t@test()\n\tprotected static async templateItemGeneratorHonorsModuleToImportWhenRemoteWhenInRemoteNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(REMOTE_NAMESPACE)\n\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isEqual(templateItem.importFrom, REMOTE_MODULE)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async moduleToImportWhenRemoteIgnoredWhenInSameNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(LOCAL_NAMESPACE)\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isFalse('importFrom' in templateItem)\n\t\t}\n\t}\n\n\t@test(\n\t\t'should ask about missing module and cancel install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\tfalse\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\ttrue\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\t@test(\n\t\t'does not return the same module twice',\n\t\t['schema1', 'schema1b', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\tprotected static async asksIfModuleShouldBeInstalled(\n\t\tschemaNames: ('schema1' | 'schema2')[],\n\t\texpectedModules: string[],\n\t\tshouldConfirmInstall: boolean\n\t) {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas = schemaNames.map((name) => this[name])\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst promise = this.SyncAction().execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst secondToLast = this.ui.invocations[this.ui.invocations.length - 2]\n\n\t\tassert.isEqual(\n\t\t\tsecondToLast.options.headline,\n\t\t\t`Missing ${expectedModules.length} module${\n\t\t\t\texpectedModules.length === 1 ? '' : 's'\n\t\t\t}`\n\t\t)\n\n\t\tfor (const expected of expectedModules) {\n\t\t\tassert.doesInclude(secondToLast.options.lines, expected)\n\t\t}\n\n\t\tawait this.ui.sendInput(shouldConfirmInstall ? 'y' : 'n')\n\n\t\tconst results = await promise\n\n\t\tif (shouldConfirmInstall) {\n\t\t\tassert.isFalsy(results.errors)\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tfor (const expected of expectedModules) {\n\t\t\t\tassert.isTrue(pkg.isInstalled(expected))\n\t\t\t}\n\t\t} else {\n\t\t\tassert.isTruthy(results.errors)\n\t\t\terrorAssert.assertError(results.errors[0], 'ACTION_CANCELLED')\n\t\t}\n\t}\n\n\t@test('schemas are imported from one module', ['schema1'])\n\t@test('schemas are imported from two modules', ['schema1', 'schema2'])\n\tprotected static async schemasAreImportedFromModuleWhenSyncedFromDifferentNamespace(\n\t\tschemaNames: ('schema1' | 'schema2')[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas: Schema[] = []\n\n\t\tfor (const name of schemaNames) {\n\t\t\tschemas.push(this[name])\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'schemas.types.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\t}\n\n\t@test('can reference impored from another module', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\t@test('can reference impored from another module with two importsWhenLocal', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t\t`import * as HeartwoodTypesLocal2 from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\tprotected static async canReferenceSchemaImportedFromAnotherModule(\n\t\timportsWhenRemote: string[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst mySchema = {\n\t\t\tid: 'localSchema',\n\t\t\timportsWhenRemote,\n\t\t\tfields: {\n\t\t\t\tcalendarEvent: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t...this.schema1,\n\t\t\t\t\t\t\tnamespace: 'CalendarUtils',\n\t\t\t\t\t\t\tversion: 'v2021_05_19',\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\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [mySchema],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tconst localSchemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'localSchema.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst localSchema = await this.Service('import').importDefault(\n\t\t\tlocalSchemaFile\n\t\t)\n\n\t\tassert.isEqualDeep(localSchema.importsWhenRemote, importsWhenRemote)\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\t\tawait this.assertValidTypesFileWhenAddingRemoteImport(results)\n\t}\n\n\t@test()\n\tprotected static async canSetImportFromModuleWithNestedSchemasWhenRemoteWhenSyncing() {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal: 'CalandarEvent',\n\t\t\tnameCamel: 'calendarEvent',\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tmoduleToImportFromWhenRemote: REMOTE_MODULE,\n\t\t})\n\n\t\tthis.schema1 = (await this.importGeneratedFile(\n\t\t\tresults,\n\t\t\t`calendarEvent.schema.ts`\n\t\t)) as Schema\n\n\t\tassert.isEqual(this.schema1.moduleToImportFromWhenRemote, REMOTE_MODULE)\n\t}\n\n\t@test()\n\tprotected static async canHandleFormBuilderImportExportObject() {\n\t\tconst version = versionUtil.generateVersion().constValue\n\n\t\tconst completedFormBuilder = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst builderForm = {\n\t\t\tid: 'builtForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tdateDeleted: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\tcompletedFormBuilder: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaId: {\n\t\t\t\t\t\t\tversion,\n\t\t\t\t\t\t\tid: 'fullCompletedForm',\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 itemBuilder = new SchemaTemplateItemBuilder('TestSkill')\n\n\t\tconst results = itemBuilder.buildTemplateItems({\n\t\t\t//@ts-ignore\n\t\t\tTestSkill: [completedFormBuilder, builderForm],\n\t\t})\n\n\t\tassert.isFalsy(\n\t\t\t(\n\t\t\t\tresults.find((r) => r.id === 'builtForm')?.schema.fields\n\t\t\t\t\t?.completedFormBuilder?.options as any\n\t\t\t)?.schemaIds?.[0]?.moduleToImportFromWhenRemote\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async importedSchemasDoNotShowUpInSchemaTypes() {\n\t\t// await this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schema1 = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tnamespace: 'Heartwood',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\timportsWhenRemote: ['import * from bananarama'],\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst schema2 = {\n\t\t\tid: 'localCompleted',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [schema1, schema2],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n\n\tprivate static SyncAction() {\n\t\treturn this.Action('schema', 'sync', {\n\t\t\toptionOverrides: {\n\t\t\t\t'sync.schemas': {},\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate static async importGeneratedFile(\n\t\tresults: FeatureActionResponse,\n\t\tfileName: string\n\t) {\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\tfileName,\n\t\t\tresults.files\n\t\t)\n\n\t\treturn await this.Service('import').importDefault(schemaFile)\n\t}\n\n\tprivate static async assertCalendarEventSchemaIsImported(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst imported = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'calendarEvent.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst calendarEventContents = diskUtil.readFile(imported)\n\n\t\tassert.isEqual(\n\t\t\tcalendarEventContents.trim(),\n\t\t\t`export { calendarEventSchema as default } from '@sprucelabs/calendar-utils'`\n\t\t)\n\t}\n\n\tprivate static generateTemplateItems(namespace: string) {\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder(namespace)\n\t\tconst templateItems = itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[LOCAL_NAMESPACE]: [\n\t\t\t\t\t{\n\t\t\t\t\t\t...this.builder1,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t...this.builder1.fields,\n\t\t\t\t\t\t\tnestedSchema: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'nested',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\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\tthis.resolveHashSprucePath('schemas')\n\t\t)\n\t\treturn templateItems as SchemaTemplateItem[]\n\t}\n\n\tprivate static async assertValidTypesFileWhenAddingRemoteImport(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst typesContent = `import '${REMOTE_MODULE}'\\n\\n${diskUtil.readFile(\n\t\t\tschemaTypesFile\n\t\t)}`\n\t\tdiskUtil.writeFile(schemaTypesFile, typesContent)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SettingUpSchemasForModuleDistribution.test.js","names":["LOCAL_NAMESPACE","REMOTE_NAMESPACE","REMOTE_MODULE","REMOTE_MODULE2","SettingUpSchemasForModuleDistributionTest","test","namePascal","remoteModule","count","nameCamel","namesUtil","toCamel","promise","Action","execute","nameReadable","moduleToImportFromWhenRemote","wait","ui","isWaitingForInput","sendInput","versionUtil","generateVersion","constValue","results","assert","isFalsy","errors","builderFile","testUtil","assertFileByNameInGeneratedFiles","files","Service","importDefault","builder","isEqual","schemaFile","schema","id","templateItems","generateTemplateItems","templateItem","importFrom","isFalse","schemaNames","expectedModules","shouldConfirmInstall","reInstallSkill","Store","setCurrentSkillsNamespace","schemas","map","name","getEmitter","on","SyncAction","waitForInput","secondToLast","invocations","length","options","headline","expected","doesInclude","lines","pkg","isTrue","isInstalled","isTruthy","errorAssert","assertError","push","shouldInstallMissingDependencies","assertCalendarEventSchemaIsImported","doesThrow","importsWhenRemote","mySchema","fields","calendarEvent","type","schema1","namespace","version","localSchemaFile","localSchema","isEqualDeep","assertValidTypesFileWhenAddingRemoteImport","importGeneratedFile","completedFormBuilder","isRequired","personId","values","isArray","valueType","builderForm","dateDeleted","schemaId","itemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","TestSkill","find","r","schemaIds","dirValue","schema2","schemaTypesFile","check","optionOverrides","fileName","imported","calendarEventContents","diskUtil","readFile","trim","builder1","nestedSchema","firstName","resolveHashSprucePath","typesContent","writeFile","AbstractSkillTest","fieldName1","label","fieldName2","hint"],"sources":["../../../src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts"],"sourcesContent":["import { Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tversionUtil,\n} from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport { FeatureActionResponse } from '../../features/features.types'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nconst LOCAL_NAMESPACE = 'TestingSchemas'\nconst REMOTE_NAMESPACE = 'RemoteSchemas'\n\nconst REMOTE_MODULE = '@sprucelabs/calendar-utils'\nconst REMOTE_MODULE2 = '@sprucelabs/spruce-templates'\n\nexport default class SettingUpSchemasForModuleDistributionTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'schemas'\n\tprivate static builder1: Schema\n\tprivate static schema1: Schema = {\n\t\tid: 'calendarEvent',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/calendar-utils',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\t//@ts-ignore\n\tprivate static schema1b: Schema\n\tprivate static schema2: Schema = {\n\t\tid: 'calendarEvent2',\n\t\tversion: 'v2021_09_20',\n\t\tnamespace: 'TestingSchemas',\n\t\tname: 'Schema imported as module',\n\t\tmoduleToImportFromWhenRemote: '@sprucelabs/spruce-templates',\n\t\tfields: {\n\t\t\tfieldName1: { label: 'First Field', type: 'text', isRequired: true },\n\t\t\tfieldName2: {\n\t\t\t\tlabel: 'Second Field',\n\t\t\t\ttype: 'number',\n\t\t\t\tisRequired: true,\n\t\t\t\thint: 'A hint',\n\t\t\t},\n\t\t},\n\t}\n\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 1',\n\t\t'CalendarEvent',\n\t\tREMOTE_MODULE,\n\t\t'1'\n\t)\n\t@test(\n\t\t'can specify importFromModuleWhenRemote 2',\n\t\t'CalendarEvent2',\n\t\tREMOTE_MODULE2,\n\t\t'2'\n\t)\n\tprotected static async canSpecifyModuleToImportFromWhenRemote(\n\t\tnamePascal: string,\n\t\tremoteModule: string,\n\t\tcount: '1' | '2'\n\t) {\n\t\tconst nameCamel = namesUtil.toCamel(namePascal)\n\t\tconst promise = this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal,\n\t\t\tnameCamel,\n\t\t\tmoduleToImportFromWhenRemote: remoteModule,\n\t\t})\n\n\t\tawait this.wait(10)\n\n\t\tif (this.ui.isWaitingForInput()) {\n\t\t\tawait this.ui.sendInput(versionUtil.generateVersion().constValue)\n\t\t}\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst builderFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.builder.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst builder = await this.Service('import').importDefault(builderFile)\n\t\tassert.isEqual(builder.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`builder${count}`] = builder\n\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`${nameCamel}.schema.ts`,\n\t\t\tresults.files\n\t\t)\n\n\t\tconst schema = await this.Service('import').importDefault(schemaFile)\n\t\tassert.isEqual(schema.moduleToImportFromWhenRemote, remoteModule)\n\n\t\t//@ts-ignore\n\t\tthis[`schema${count}`] = schema\n\t\t//@ts-ignore\n\t\tthis[`schema${count}b`] = { ...schema, id: `schema${count}B` }\n\t}\n\n\t@test()\n\tprotected static async templateItemGeneratorHonorsModuleToImportWhenRemoteWhenInRemoteNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(REMOTE_NAMESPACE)\n\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isEqual(templateItem.importFrom, REMOTE_MODULE)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async moduleToImportWhenRemoteIgnoredWhenInSameNamespace() {\n\t\tconst templateItems = this.generateTemplateItems(LOCAL_NAMESPACE)\n\t\tfor (const templateItem of templateItems) {\n\t\t\tassert.isEqual(\n\t\t\t\ttemplateItem.schema.moduleToImportFromWhenRemote,\n\t\t\t\tREMOTE_MODULE\n\t\t\t)\n\t\t\tassert.isFalse('importFrom' in templateItem)\n\t\t}\n\t}\n\n\t@test(\n\t\t'should ask about missing module and cancel install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\tfalse\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1'],\n\t\t[REMOTE_MODULE],\n\t\ttrue\n\t)\n\t@test(\n\t\t'should ask about missing module and do install',\n\t\t['schema1', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\t@test(\n\t\t'does not return the same module twice',\n\t\t['schema1', 'schema1b', 'schema2'],\n\t\t[REMOTE_MODULE, REMOTE_MODULE2],\n\t\ttrue\n\t)\n\tprotected static async asksIfModuleShouldBeInstalled(\n\t\tschemaNames: ('schema1' | 'schema2')[],\n\t\texpectedModules: string[],\n\t\tshouldConfirmInstall: boolean\n\t) {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas = schemaNames.map((name) => this[name])\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst promise = this.SyncAction().execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst secondToLast = this.ui.invocations[this.ui.invocations.length - 2]\n\n\t\tassert.isEqual(\n\t\t\tsecondToLast.options.headline,\n\t\t\t`Missing ${expectedModules.length} module${\n\t\t\t\texpectedModules.length === 1 ? '' : 's'\n\t\t\t}`\n\t\t)\n\n\t\tfor (const expected of expectedModules) {\n\t\t\tassert.doesInclude(secondToLast.options.lines, expected)\n\t\t}\n\n\t\tawait this.ui.sendInput(shouldConfirmInstall ? 'y' : 'n')\n\n\t\tconst results = await promise\n\n\t\tif (shouldConfirmInstall) {\n\t\t\tassert.isFalsy(results.errors)\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tfor (const expected of expectedModules) {\n\t\t\t\tassert.isTrue(pkg.isInstalled(expected))\n\t\t\t}\n\t\t} else {\n\t\t\tassert.isTruthy(results.errors)\n\t\t\terrorAssert.assertError(results.errors[0], 'ACTION_CANCELLED')\n\t\t}\n\t}\n\n\t@test('schemas are imported from one module', ['schema1'])\n\t@test('schemas are imported from two modules', ['schema1', 'schema2'])\n\tprotected static async schemasAreImportedFromModuleWhenSyncedFromDifferentNamespace(\n\t\tschemaNames: ('schema1' | 'schema2')[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schemas: Schema[] = []\n\n\t\tfor (const name of schemaNames) {\n\t\t\tschemas.push(this[name])\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas,\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'schemas.types.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\t}\n\n\t@test('can reference impored from another module', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\t@test('can reference impored from another module with two importsWhenLocal', [\n\t\t`import * as HeartwoodTypesLocal from '@sprucelabs/heartwood-view-controllers'`,\n\t\t`import * as HeartwoodTypesLocal2 from '@sprucelabs/heartwood-view-controllers'`,\n\t])\n\tprotected static async canReferenceSchemaImportedFromAnotherModule(\n\t\timportsWhenRemote: string[]\n\t) {\n\t\tawait this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst mySchema = {\n\t\t\tid: 'localSchema',\n\t\t\timportsWhenRemote,\n\t\t\tfields: {\n\t\t\t\tcalendarEvent: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t...this.schema1,\n\t\t\t\t\t\t\tnamespace: 'CalendarUtils',\n\t\t\t\t\t\t\tversion: 'v2021_05_19',\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\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [mySchema],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tconst localSchemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'localSchema.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst localSchema = await this.Service('import').importDefault(\n\t\t\tlocalSchemaFile\n\t\t)\n\n\t\tassert.isEqualDeep(localSchema.importsWhenRemote, importsWhenRemote)\n\n\t\tawait this.assertCalendarEventSchemaIsImported(results)\n\t\tawait this.assertValidTypesFileWhenAddingRemoteImport(results)\n\t}\n\n\t@test()\n\tprotected static async canSetImportFromModuleWithNestedSchemasWhenRemoteWhenSyncing() {\n\t\tawait this.reInstallSkill()\n\n\t\tawait this.Action('schema', 'create').execute({\n\t\t\tnameReadable: 'Schema imported as module',\n\t\t\tnamePascal: 'CalandarEvent',\n\t\t\tnameCamel: 'calendarEvent',\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tmoduleToImportFromWhenRemote: REMOTE_MODULE,\n\t\t})\n\n\t\tthis.schema1 = (await this.importGeneratedFile(\n\t\t\tresults,\n\t\t\t`calendarEvent.schema.ts`\n\t\t)) as Schema\n\n\t\tassert.isEqual(this.schema1.moduleToImportFromWhenRemote, REMOTE_MODULE)\n\t}\n\n\t@test()\n\tprotected static async canHandleFormBuilderImportExportObject() {\n\t\tconst version = versionUtil.generateVersion().constValue\n\n\t\tconst completedFormBuilder = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst builderForm = {\n\t\t\tid: 'builtForm',\n\t\t\tversion,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tdateDeleted: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\tcompletedFormBuilder: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaId: {\n\t\t\t\t\t\t\tversion,\n\t\t\t\t\t\t\tid: 'fullCompletedForm',\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 itemBuilder = new SchemaTemplateItemBuilder('TestSkill')\n\n\t\tconst results = itemBuilder.buildTemplateItems({\n\t\t\t//@ts-ignore\n\t\t\tTestSkill: [completedFormBuilder, builderForm],\n\t\t})\n\n\t\tassert.isFalsy(\n\t\t\t(\n\t\t\t\tresults.find((r) => r.id === 'builtForm')?.schema.fields\n\t\t\t\t\t?.completedFormBuilder?.options as any\n\t\t\t)?.schemaIds?.[0]?.moduleToImportFromWhenRemote\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async importedSchemasDoNotShowUpInSchemaTypes() {\n\t\t// await this.reInstallSkill()\n\t\tawait this.Store('skill').setCurrentSkillsNamespace('TestingTwo')\n\n\t\tconst schema1 = {\n\t\t\tid: 'fullCompletedForm',\n\t\t\tnamespace: 'Heartwood',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tmoduleToImportFromWhenRemote: '@sprucelabs/heartwood-view-controllers',\n\t\t\timportsWhenRemote: ['import * from bananarama'],\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tconst schema2 = {\n\t\t\tid: 'localCompleted',\n\t\t\tversion: versionUtil.generateVersion().dirValue,\n\t\t\tfields: {\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tpersonId: {\n\t\t\t\t\ttype: 'id',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t},\n\t\t\t\tvalues: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tvalueType: 'Record<string, any>',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}\n\n\t\tawait this.getEmitter().on('schema.did-fetch-schemas', async () => {\n\t\t\treturn {\n\t\t\t\tschemas: [schema1, schema2],\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.SyncAction().execute({\n\t\t\tshouldInstallMissingDependencies: true,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n\n\tprivate static SyncAction() {\n\t\treturn this.Action('schema', 'sync', {\n\t\t\toptionOverrides: {\n\t\t\t\t'sync.schemas': {},\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate static async importGeneratedFile(\n\t\tresults: FeatureActionResponse,\n\t\tfileName: string\n\t) {\n\t\tconst schemaFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\tfileName,\n\t\t\tresults.files\n\t\t)\n\n\t\treturn await this.Service('import').importDefault(schemaFile)\n\t}\n\n\tprivate static async assertCalendarEventSchemaIsImported(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst imported = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'calendarEvent.schema.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst calendarEventContents = diskUtil.readFile(imported)\n\n\t\tassert.isEqual(\n\t\t\tcalendarEventContents.trim(),\n\t\t\t`export { calendarEventSchema as default } from '@sprucelabs/calendar-utils'`\n\t\t)\n\t}\n\n\tprivate static generateTemplateItems(namespace: string) {\n\t\tconst itemBuilder = new SchemaTemplateItemBuilder(namespace)\n\t\tconst templateItems = itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[LOCAL_NAMESPACE]: [\n\t\t\t\t\t{\n\t\t\t\t\t\t...this.builder1,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t...this.builder1.fields,\n\t\t\t\t\t\t\tnestedSchema: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'nested',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\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\tthis.resolveHashSprucePath('schemas')\n\t\t)\n\t\treturn templateItems as SchemaTemplateItem[]\n\t}\n\n\tprivate static async assertValidTypesFileWhenAddingRemoteImport(\n\t\tresults: FeatureActionResponse\n\t) {\n\t\tconst schemaTypesFile = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'schemas.types.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst typesContent = `import '${REMOTE_MODULE}'\\n\\n${diskUtil.readFile(\n\t\t\tschemaTypesFile\n\t\t)}`\n\t\tdiskUtil.writeFile(schemaTypesFile, typesContent)\n\n\t\tawait this.Service('typeChecker').check(schemaTypesFile)\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingUpVscode.test.js","names":["SettingUpVscodeTest","test","skip","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","promise","waitForInput","isEqualDeep","ui","getLastInvocation","command","options","sendInput","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","isEqual","resolvePath","AbstractCliTest"],"sources":["../../../src/__tests__/behavioral/SettingUpVscode.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingUpVscodeTest extends AbstractCliTest {\n\t@test()\n\tprotected static async hasSetupAction() {\n\t\tassert.isFunction(this.Action('vscode', 'setup').execute)\n\t}\n\n\t@test.skip('Cant run on machine without vscode installed')\n\tprotected static async settingUpAsksAboutExtensonsAndSetsUpDebug() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\t\tconst promise = this.Action('vscode', 'setup').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup debugging for you?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions:\n\t\t\t\t'Want me to setup vscode settings for building, testing and linting on save?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup tasks for building and testing?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'launch.json',\n\t\t\tresults.files ?? []\n\t\t)\n\n\t\tassert.isEqual(match, this.resolvePath('.vscode/launch.json'))\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,mB,WACnB,
|
|
1
|
+
{"version":3,"file":"SettingUpVscode.test.js","names":["SettingUpVscodeTest","test","skip","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","promise","waitForInput","isEqualDeep","ui","getLastInvocation","command","options","sendInput","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","isEqual","resolvePath","AbstractCliTest"],"sources":["../../../src/__tests__/behavioral/SettingUpVscode.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class SettingUpVscodeTest extends AbstractCliTest {\n\t@test()\n\tprotected static async hasSetupAction() {\n\t\tassert.isFunction(this.Action('vscode', 'setup').execute)\n\t}\n\n\t@test.skip('Cant run on machine without vscode installed')\n\tprotected static async settingUpAsksAboutExtensonsAndSetsUpDebug() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\t\tconst promise = this.Action('vscode', 'setup').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup debugging for you?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions:\n\t\t\t\t'Want me to setup vscode settings for building, testing and linting on save?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tassert.isEqualDeep(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'confirm',\n\t\t\toptions: 'Want me to setup tasks for building and testing?',\n\t\t})\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'launch.json',\n\t\t\tresults.files ?? []\n\t\t)\n\n\t\tassert.isEqual(match, this.resolvePath('.vscode/launch.json'))\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,mB,WACnB,IAAAC,UAAA,G,UAKAA,UAAA,CAAKC,IAAL,CAAU,8CAAV,C;;;;;;;;;;;;;0GALD;QAAA;UAAA;YAAA;cAAA;gBAECC,YAAA,CAAOC,UAAP,CAAkB,KAAKC,MAAL,CAAY,QAAZ,EAAsB,OAAtB,EAA+BC,OAAjD;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;qIAKA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKC,cAAL,GAAsBC,qBAAtB,CAA4C,QAA5C,CAFP;;cAAA;gBAGOC,OAHP,GAGiB,KAAKJ,MAAL,CAAY,QAAZ,EAAsB,OAAtB,EAA+BC,OAA/B,CAAuC,EAAvC,CAHjB;gBAAA;gBAAA,OAKO,KAAKI,YAAL,EALP;;cAAA;gBAOCP,YAAA,CAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;kBAC/CC,OAAO,EAAE,SADsC;kBAE/CC,OAAO,EAAE;gBAFsC,CAAhD;;gBAPD;gBAAA,OAYO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CAZP;;cAAA;gBAAA;gBAAA,OAcO,KAAKN,YAAL,EAdP;;cAAA;gBAgBCP,YAAA,CAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;kBAC/CC,OAAO,EAAE,SADsC;kBAE/CC,OAAO,EACN;gBAH8C,CAAhD;;gBAhBD;gBAAA,OAsBO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CAtBP;;cAAA;gBAAA;gBAAA,OAwBO,KAAKN,YAAL,EAxBP;;cAAA;gBA0BCP,YAAA,CAAOQ,WAAP,CAAmB,KAAKC,EAAL,CAAQC,iBAAR,EAAnB,EAAgD;kBAC/CC,OAAO,EAAE,SADsC;kBAE/CC,OAAO,EAAE;gBAFsC,CAAhD;;gBA1BD;gBAAA,OA+BO,KAAKH,EAAL,CAAQI,SAAR,CAAkB,GAAlB,CA/BP;;cAAA;gBAAA;gBAAA,OAiCuBP,OAjCvB;;cAAA;gBAiCOQ,OAjCP;;gBAmCCd,YAAA,CAAOe,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEMC,KArCP,GAqCeC,iBAAA,CAASC,gCAAT,CACb,aADa,oBAEbL,OAAO,CAACM,KAFK,2DAEI,EAFJ,CArCf;;gBA0CCpB,YAAA,CAAOqB,OAAP,CAAeJ,KAAf,EAAsB,KAAKK,WAAL,CAAiB,qBAAjB,CAAtB;;cA1CD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EANgDC,4B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncingEventsOnlyFromDependencies.test.js","names":["SyncingEventsOnlyFromDependenciesTest","skills","getSkillFixture","registerCurrentSkill","name","registerGlobalEvent","skill","Action","execute","results","assert","isFalsy","errors","eventFolder","resolveEventFolder","isFalse","diskUtil","doesDirExist","files","fsUtil","readdirSync","resolveHashSprucePath","isLength","isEqual","Service","add","id","namespace","slug","isTrue","namesUtil","toCamel","seedDemoSkill","registerEventContract","eventSignatures","isGlobal","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.ts"],"sourcesContent":["import { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport fsUtil from 'fs-extra'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { RegisteredSkill } from '../../types/cli.types'\n\nexport default class SyncingEventsOnlyFromDependenciesTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async doesntSyncAnythingButListenersToStart() {\n\t\tconst skills = this.getSkillFixture()\n\t\tawait skills.registerCurrentSkill({\n\t\t\tname: 'events in sync skill',\n\t\t})\n\t\tconst { skill } = await this.registerGlobalEvent()\n\n\t\tconst results = await this.Action('event', 'sync', {}).execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst eventFolder = this.resolveEventFolder(skill)\n\n\t\tassert.isFalse(diskUtil.doesDirExist(eventFolder))\n\n\t\tconst files = fsUtil.readdirSync(this.resolveHashSprucePath('events'))\n\n\t\tassert.isLength(files, 2, 'The wrong number of files were generated.')\n\t\tassert.isEqual(files[0], 'events.contract.ts')\n\t\tassert.isEqual(files[1], 'listeners.ts')\n\t}\n\n\t@test()\n\tprotected static async syncsEventsForSkillsWeveAddedAsDependencies() {\n\t\tconst { skill } = await this.registerGlobalEvent()\n\n\t\tthis.Service('dependency').add({\n\t\t\tid: skill.id,\n\t\t\tnamespace: skill.slug,\n\t\t})\n\n\t\tconst results = await this.Action('event', 'sync', {}).execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst eventFolder = this.resolveEventFolder(skill)\n\n\t\tassert.isTrue(diskUtil.doesDirExist(eventFolder))\n\n\t\tconst files = fsUtil.readdirSync(this.resolveHashSprucePath('events'))\n\n\t\tassert.isLength(files, 3, 'The wrong number of files were generated.')\n\t\tassert.isEqual(files[0], namesUtil.toCamel(skill.slug))\n\t\tassert.isEqual(files[1], 'events.contract.ts')\n\t\tassert.isEqual(files[2], 'listeners.ts')\n\t}\n\n\tprivate static async registerGlobalEvent() {\n\t\tconst skills = this.getSkillFixture()\n\n\t\tconst skill = await skills.seedDemoSkill({ name: 'a temp skill' })\n\n\t\tawait skills.registerEventContract(skill, {\n\t\t\teventSignatures: {\n\t\t\t\t'test-sync::v2021_01_01': {\n\t\t\t\t\tisGlobal: true,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\n\t\treturn { skill }\n\t}\n\n\tprivate static resolveEventFolder(skill: RegisteredSkill) {\n\t\treturn this.resolveHashSprucePath('events', namesUtil.toCamel(skill.slug))\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAGqBA,qC,WAGnB,
|
|
1
|
+
{"version":3,"file":"SyncingEventsOnlyFromDependencies.test.js","names":["SyncingEventsOnlyFromDependenciesTest","test","skills","getSkillFixture","registerCurrentSkill","name","registerGlobalEvent","skill","Action","execute","results","assert","isFalsy","errors","eventFolder","resolveEventFolder","isFalse","diskUtil","doesDirExist","files","fsUtil","readdirSync","resolveHashSprucePath","isLength","isEqual","Service","add","id","namespace","slug","isTrue","namesUtil","toCamel","seedDemoSkill","registerEventContract","eventSignatures","isGlobal","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.ts"],"sourcesContent":["import { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport fsUtil from 'fs-extra'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport { RegisteredSkill } from '../../types/cli.types'\n\nexport default class SyncingEventsOnlyFromDependenciesTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'events'\n\n\t@test()\n\tprotected static async doesntSyncAnythingButListenersToStart() {\n\t\tconst skills = this.getSkillFixture()\n\t\tawait skills.registerCurrentSkill({\n\t\t\tname: 'events in sync skill',\n\t\t})\n\t\tconst { skill } = await this.registerGlobalEvent()\n\n\t\tconst results = await this.Action('event', 'sync', {}).execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst eventFolder = this.resolveEventFolder(skill)\n\n\t\tassert.isFalse(diskUtil.doesDirExist(eventFolder))\n\n\t\tconst files = fsUtil.readdirSync(this.resolveHashSprucePath('events'))\n\n\t\tassert.isLength(files, 2, 'The wrong number of files were generated.')\n\t\tassert.isEqual(files[0], 'events.contract.ts')\n\t\tassert.isEqual(files[1], 'listeners.ts')\n\t}\n\n\t@test()\n\tprotected static async syncsEventsForSkillsWeveAddedAsDependencies() {\n\t\tconst { skill } = await this.registerGlobalEvent()\n\n\t\tthis.Service('dependency').add({\n\t\t\tid: skill.id,\n\t\t\tnamespace: skill.slug,\n\t\t})\n\n\t\tconst results = await this.Action('event', 'sync', {}).execute({})\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst eventFolder = this.resolveEventFolder(skill)\n\n\t\tassert.isTrue(diskUtil.doesDirExist(eventFolder))\n\n\t\tconst files = fsUtil.readdirSync(this.resolveHashSprucePath('events'))\n\n\t\tassert.isLength(files, 3, 'The wrong number of files were generated.')\n\t\tassert.isEqual(files[0], namesUtil.toCamel(skill.slug))\n\t\tassert.isEqual(files[1], 'events.contract.ts')\n\t\tassert.isEqual(files[2], 'listeners.ts')\n\t}\n\n\tprivate static async registerGlobalEvent() {\n\t\tconst skills = this.getSkillFixture()\n\n\t\tconst skill = await skills.seedDemoSkill({ name: 'a temp skill' })\n\n\t\tawait skills.registerEventContract(skill, {\n\t\t\teventSignatures: {\n\t\t\t\t'test-sync::v2021_01_01': {\n\t\t\t\t\tisGlobal: true,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\n\t\treturn { skill }\n\t}\n\n\tprivate static resolveEventFolder(skill: RegisteredSkill) {\n\t\treturn this.resolveHashSprucePath('events', namesUtil.toCamel(skill.slug))\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestReporterSettingsRemembered.test.js","names":["TestReporterSettingsRememberedTest","FeatureFixture","installCachedFeatures","settings","Service","set","action","Action","execute","shouldReturnImmediately","shouldReportWhileRunning","results","meta","
|
|
1
|
+
{"version":3,"file":"TestReporterSettingsRemembered.test.js","names":["TestReporterSettingsRememberedTest","test","FeatureFixture","installCachedFeatures","settings","Service","set","action","Action","execute","shouldReturnImmediately","shouldReportWhileRunning","results","meta","assert","isTruthy","isEqual","getWatchMode","kill","promise","isUndefined","get","setWatchMode","AbstractTestTest"],"sources":["../../../src/__tests__/behavioral/TestReporterSettingsRemembered.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport TestAction from '../../features/test/actions/TestAction'\nimport AbstractTestTest from '../../tests/AbstractTestTest'\n\nexport default class TestReporterSettingsRememberedTest extends AbstractTestTest {\n\t@test()\n\tprotected static emptyToMakeThingsPassForSomeReason() {}\n\n\t@test()\n\tprotected static async watchSettingsRemembered() {\n\t\tawait this.FeatureFixture().installCachedFeatures('tests')\n\t\tconst settings = this.Service('settings')\n\n\t\tsettings.set('test.watchMode', 'smart')\n\n\t\tconst action = this.Action('test', 'test')\n\n\t\tconst results = await action.execute({\n\t\t\tshouldReturnImmediately: true,\n\t\t\tshouldReportWhileRunning: false,\n\t\t})\n\n\t\tconst meta = (results as any).meta\n\t\tconst test = meta.test as TestAction\n\n\t\tassert.isTruthy(test)\n\n\t\tassert.isEqual(test.getWatchMode(), 'smart')\n\t\ttest.kill()\n\n\t\tawait meta.promise\n\t}\n\n\t@test()\n\tprotected static async watchSettingsSaved() {\n\t\tawait this.FeatureFixture().installCachedFeatures('tests')\n\n\t\tconst action = this.Action('test', 'test')\n\n\t\tconst results = await action.execute({\n\t\t\tshouldReturnImmediately: true,\n\t\t\tshouldReportWhileRunning: false,\n\t\t})\n\n\t\tconst meta = (results as any).meta\n\t\tconst test = meta.test as TestAction\n\n\t\tconst settings = this.Service('settings')\n\t\tassert.isUndefined(settings.get('test.watchMode'))\n\n\t\ttest.setWatchMode('smart')\n\n\t\tassert.isEqual(test.getWatchMode(), 'smart')\n\n\t\ttest.kill()\n\n\t\tawait meta.promise\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;;;IAEqBA,kC,WACnB,IAAAC,UAAA,G,UAGA,IAAAA,UAAA,G,UAyBA,IAAAA,UAAA,G;;;;;;;;;;;;WA5BD,8CACsD,CAAE;;;;mHAExD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKC,cAAL,GAAsBC,qBAAtB,CAA4C,OAA5C,CAFP;;cAAA;gBAGOC,QAHP,GAGkB,KAAKC,OAAL,CAAa,UAAb,CAHlB;gBAKCD,QAAQ,CAACE,GAAT,CAAa,gBAAb,EAA+B,OAA/B;gBAEMC,MAPP,GAOgB,KAAKC,MAAL,CAAY,MAAZ,EAAoB,MAApB,CAPhB;gBAAA;gBAAA,OASuBD,MAAM,CAACE,OAAP,CAAe;kBACpCC,uBAAuB,EAAE,IADW;kBAEpCC,wBAAwB,EAAE;gBAFU,CAAf,CATvB;;cAAA;gBASOC,OATP;gBAcOC,IAdP,GAceD,OAAD,CAAiBC,IAd/B;gBAeOZ,IAfP,GAecY,IAAI,CAACZ,IAfnB;;gBAiBCa,YAAA,CAAOC,QAAP,CAAgBd,IAAhB;;gBAEAa,YAAA,CAAOE,OAAP,CAAef,IAAI,CAACgB,YAAL,EAAf,EAAoC,OAApC;;gBACAhB,IAAI,CAACiB,IAAL;gBApBD;gBAAA,OAsBOL,IAAI,CAACM,OAtBZ;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;8GAyBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKjB,cAAL,GAAsBC,qBAAtB,CAA4C,OAA5C,CAFP;;cAAA;gBAIOI,MAJP,GAIgB,KAAKC,MAAL,CAAY,MAAZ,EAAoB,MAApB,CAJhB;gBAAA;gBAAA,OAMuBD,MAAM,CAACE,OAAP,CAAe;kBACpCC,uBAAuB,EAAE,IADW;kBAEpCC,wBAAwB,EAAE;gBAFU,CAAf,CANvB;;cAAA;gBAMOC,OANP;gBAWOC,IAXP,GAWeD,OAAD,CAAiBC,IAX/B;gBAYOZ,IAZP,GAYcY,IAAI,CAACZ,IAZnB;gBAcOG,QAdP,GAckB,KAAKC,OAAL,CAAa,UAAb,CAdlB;;gBAeCS,YAAA,CAAOM,WAAP,CAAmBhB,QAAQ,CAACiB,GAAT,CAAa,gBAAb,CAAnB;;gBAEApB,IAAI,CAACqB,YAAL,CAAkB,OAAlB;;gBAEAR,YAAA,CAAOE,OAAP,CAAef,IAAI,CAACgB,YAAL,EAAf,EAAoC,OAApC;;gBAEAhB,IAAI,CAACiB,IAAL;gBArBD;gBAAA,OAuBOL,IAAI,CAACM,OAvBZ;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EA7B+DI,6B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestingAConversation.test.js","names":["TestingAConversationTest","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","shouldReturnImmediately","shouldRunSilently","
|
|
1
|
+
{"version":3,"file":"TestingAConversation.test.js","names":["TestingAConversationTest","test","assert","isFunction","Action","execute","FeatureFixture","installCachedFeatures","shouldReturnImmediately","shouldRunSilently","isTruthy","meta","kill","isNumber","pid","promise","findProcess","psResults","length","installAndCreateConversation","wait","isAbove","nameReadable","nameCamel","results","isFalsy","errors","createResults","getChild","setTimeout","topic","testUtil","assertFileByNameInGeneratedFiles","files","diskUtil","writeFile","isArray","AbstractCliTest"],"sources":["../../../src/__tests__/behavioral/TestingAConversation.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport findProcess from 'find-process'\nimport TestAction from '../../features/conversation/actions/TestAction'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class TestingAConversationTest extends AbstractCliTest {\n\t@test()\n\tprotected static async hasTestConvoFeature() {\n\t\tassert.isFunction(this.Action('conversation', 'test').execute)\n\t}\n\n\t@test()\n\tprotected static async shouldRunWithoutConversationShouldShutdownOnItsOwn() {\n\t\tawait this.FeatureFixture().installCachedFeatures('conversation')\n\n\t\tconst test = await this.Action('conversation', 'test').execute({\n\t\t\tshouldReturnImmediately: true,\n\t\t\tshouldRunSilently: true,\n\t\t})\n\n\t\tassert.isTruthy(test.meta)\n\t\tassert.isFunction(test.meta.kill)\n\t\tassert.isNumber(test.meta.pid)\n\t\tassert.isTruthy(test.meta.promise)\n\n\t\tlet psResults\n\n\t\tdo {\n\t\t\tpsResults = await findProcess('pid', test.meta.pid)\n\t\t} while (psResults.length > 0)\n\t}\n\n\t@test()\n\tprotected static async runsUntilKilled() {\n\t\tawait this.installAndCreateConversation()\n\n\t\tconst test = await this.Action('conversation', 'test').execute({\n\t\t\tshouldReturnImmediately: true,\n\t\t\tshouldRunSilently: true,\n\t\t})\n\n\t\tassert.isTruthy(test.meta)\n\t\tassert.isFunction(test.meta.kill)\n\t\tassert.isNumber(test.meta.pid)\n\t\tassert.isTruthy(test.meta.promise)\n\n\t\tawait this.wait(1000)\n\n\t\tlet psResults = await findProcess('pid', test.meta.pid)\n\t\tassert.isAbove(psResults.length, 0)\n\n\t\tawait test.meta.kill()\n\n\t\tdo {\n\t\t\tpsResults = await findProcess('pid', test.meta.pid)\n\t\t} while (psResults.length > 0)\n\t}\n\n\t// @test.skip('No longer dies on stderr')\n\t// protected static async diesWithStandardError() {\n\t// \tconst { conversation } = await this.installAndCreateConversation()\n\n\t// \tconst topicFile = this.resolvePath(\n\t// \t\t'src',\n\t// \t\t'conversations',\n\t// \t\t'knockKnockJoke.topic.ts'\n\t// \t)\n\n\t// \tconst contents =\n\t// \t\t`process.stderr.write('oh no!')\\n\\n` + diskUtil.readFile(topicFile)\n\n\t// \tdiskUtil.writeFile(topicFile, contents)\n\n\t// \tconst test = await conversation\n\t// \t\t.Action('test')\n\t// \t\t.execute({ shouldRunSilently: true })\n\n\t// \tassert.isTruthy(test.errors)\n\t// \terrorAssert.assertError(test.errors[0], 'EXECUTING_COMMAND_FAILED', {\n\t// \t\tstderr: 'oh no!',\n\t// \t})\n\t// }\n\n\tprivate static async installAndCreateConversation() {\n\t\tawait this.FeatureFixture().installCachedFeatures('conversation')\n\n\t\tconst results = await this.Action('conversation', 'create').execute({\n\t\t\tnameReadable: 'tell a knock knock joke',\n\t\t\tnameCamel: 'knockKnockJoke',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\t\treturn { createResults: results }\n\t}\n\n\t@test()\n\tprotected static async doesntReturnErrorWhenKilled() {\n\t\tawait this.installAndCreateConversation()\n\t\t//@ts-ignore\n\t\tconst test = this.Action('conversation', 'test').getChild() as TestAction\n\n\t\tsetTimeout(async () => {\n\t\t\tawait test.kill()\n\t\t}, 5000)\n\n\t\tconst results = await test.execute({\n\t\t\tshouldRunSilently: true,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\t}\n\n\t@test()\n\tprotected static async returnsErrorWhenScriptErrors() {\n\t\tconst { createResults } = await this.installAndCreateConversation()\n\n\t\tconst topic = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'knockKnockJoke',\n\t\t\tcreateResults.files\n\t\t)\n\n\t\tdiskUtil.writeFile(topic, 'throw new Error(\"whaaa\")')\n\n\t\tconst test = this.Action('conversation', 'test')\n\n\t\tconst results = await test.execute({\n\t\t\tshouldRunSilently: true,\n\t\t})\n\n\t\tassert.isArray(results.errors)\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestingDataStores.test.js","names":["TestingDataStoresTest","storeFeature","cli","getFeature","isInstalled","Action","execute","type","nameReadable","nameCamel","namePascal","waitForInput","last","ui","getLastInvocation","assert","isTruthy","options","choices","doesInclude","label","reset","LintService","enableLinting","promise","selectOptionBasedOnLabel","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","contents","diskUtil","readFile","Service","build","shouldReportWhileRunning","testResults","isArray","isLength","first","message","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/TestingDataStores.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport LintService from '../../services/LintService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class TestingDataStoresTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'storesWithTests'\n\n\t@test()\n\tprotected static async cantSelectAbstractStoreIfStoreFeatureNotInstalled() {\n\t\tconst storeFeature = this.cli.getFeature('store')\n\n\t\tstoreFeature.isInstalled = async () => false\n\n\t\tvoid this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest (requires install)',\n\t\t})\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async letsYouSelectAbstractStoreTest() {\n\t\tLintService.enableLinting()\n\t\tthis.cli.getFeature('store').isInstalled = async () => true\n\n\t\tconst promise = this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest',\n\t\t})\n\n\t\tawait this.selectOptionBasedOnLabel('AbstractStoreTest')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'CanBookAppointmentTest extends AbstractStoreTest'\n\t\t)\n\n\t\tawait this.Service('build').build()\n\n\t\tconst testResults = await this.Action('test', 'test').execute({\n\t\t\tshouldReportWhileRunning: false,\n\t\t})\n\n\t\tassert.isArray(testResults.errors)\n\t\tassert.isLength(testResults.errors, 1)\n\n\t\tconst first = testResults.errors[0]\n\n\t\tassert.doesInclude(first.message, 'does not equal')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,qB,WAGnB,
|
|
1
|
+
{"version":3,"file":"TestingDataStores.test.js","names":["TestingDataStoresTest","test","storeFeature","cli","getFeature","isInstalled","Action","execute","type","nameReadable","nameCamel","namePascal","waitForInput","last","ui","getLastInvocation","assert","isTruthy","options","choices","doesInclude","label","reset","LintService","enableLinting","promise","selectOptionBasedOnLabel","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","contents","diskUtil","readFile","Service","build","shouldReportWhileRunning","testResults","isArray","isLength","first","message","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/TestingDataStores.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport LintService from '../../services/LintService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class TestingDataStoresTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'storesWithTests'\n\n\t@test()\n\tprotected static async cantSelectAbstractStoreIfStoreFeatureNotInstalled() {\n\t\tconst storeFeature = this.cli.getFeature('store')\n\n\t\tstoreFeature.isInstalled = async () => false\n\n\t\tvoid this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest (requires install)',\n\t\t})\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async letsYouSelectAbstractStoreTest() {\n\t\tLintService.enableLinting()\n\t\tthis.cli.getFeature('store').isInstalled = async () => true\n\n\t\tconst promise = this.Action('test', 'create').execute({\n\t\t\ttype: 'behavioral',\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\n\t\tconst last = this.ui.getLastInvocation()\n\t\tassert.isTruthy(last.options.options.choices)\n\t\tassert.doesInclude(last.options.options.choices, {\n\t\t\tlabel: 'AbstractStoreTest',\n\t\t})\n\n\t\tawait this.selectOptionBasedOnLabel('AbstractStoreTest')\n\n\t\tconst results = await promise\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresults.files\n\t\t)\n\n\t\tconst contents = diskUtil.readFile(match)\n\n\t\tassert.doesInclude(\n\t\t\tcontents,\n\t\t\t'CanBookAppointmentTest extends AbstractStoreTest'\n\t\t)\n\n\t\tawait this.Service('build').build()\n\n\t\tconst testResults = await this.Action('test', 'test').execute({\n\t\t\tshouldReportWhileRunning: false,\n\t\t})\n\n\t\tassert.isArray(testResults.errors)\n\t\tassert.isLength(testResults.errors, 1)\n\n\t\tconst first = testResults.errors[0]\n\n\t\tassert.doesInclude(first.message, 'does not equal')\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WatchingSkillViews.test.js","names":["WatchingSkillViewsTest","oldBootExecute","BootAction","prototype","execute","getFeatureInstaller","isInstalled","SettingsService","isMarkedAsInstalled","assert","isFunction","Action","wasHit","CommandService","fakeCommand","code","callback","watchAction","wait","isTrue","kill","hitCount","isEqual","emitFileChangeEvent","passedOptions","options","shouldReturnImmediately","actionPromise","didWait","waitPromise","Promise","resolve","setTimeout","isFalse","watchFeature","getFeature","wasStarted","wasStopped","startWatching","stopWatching","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","name","getViewFixture","createViewController","nameKebab","namePascal","Service","build","results","isFalsy","errors","pid","getPid","meta","bootPromise","assertProcessRunning","doesThrowAsync","reject","ps","lookup","err","length","emitter","getEmitter","emit","changes","schemaId","version","values","action","path","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/WatchingSkillViews.test.ts"],"sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport ps from 'ps-node'\nimport BootAction from '../../features/skill/actions/BootAction'\nimport WatchAction from '../../features/view/actions/WatchAction'\nimport CommandService from '../../services/CommandService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class WatchingSkillViewsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\tprotected static oldBootExecute: any\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\t\tthis.oldBootExecute = BootAction.prototype.execute\n\t}\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.getFeatureInstaller().isInstalled = async () => true\n\t\tSettingsService.prototype.isMarkedAsInstalled = () => true\n\t\tBootAction.prototype.execute = this.oldBootExecute\n\t}\n\n\t@test()\n\tprotected static async hasWatchSkillViewsEvent() {\n\t\tassert.isFunction(this.Action('view', 'watch').execute)\n\t}\n\n\t@test()\n\tprotected static async shouldCallBoot() {\n\t\tlet wasHit = false\n\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasHit = true\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute({})\n\t\tawait this.wait(10)\n\t\tassert.isTrue(wasHit)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async shouldCallBootAgainOnFileChange() {\n\t\tlet hitCount = 0\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\thitCount++\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tvoid watchAction.execute({})\n\n\t\tawait this.wait(10)\n\n\t\tassert.isEqual(hitCount, 1)\n\n\t\tawait this.emitFileChangeEvent()\n\n\t\tassert.isEqual(hitCount, 2)\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async changesDuringBootOfSkillKillSkill() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tlet passedOptions: any = null\n\n\t\t//@ts-ignore\n\t\tBootAction.prototype.execute = (options: any) => {\n\t\t\tpassedOptions = options\n\t\t}\n\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(passedOptions.shouldReturnImmediately)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async holdsOnAction() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(async () => {\n\t\t\t\tdidWait = true\n\t\t\t\tawait watchAction.kill()\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait actionPromise\n\t\tawait waitPromise\n\n\t\tassert.isTrue(didWait)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async canKillAction() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tdidWait = true\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait this.wait(100)\n\n\t\tawait watchAction.kill()\n\n\t\tawait actionPromise\n\n\t\tassert.isFalse(didWait)\n\n\t\tawait waitPromise\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async makeSureWatcherIsStartedAndStopped() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchFeature = this.getFeatureInstaller().getFeature('watch')\n\t\tlet wasStarted = false\n\t\tlet wasStopped = false\n\n\t\twatchFeature.startWatching = async () => {\n\t\t\twasStarted = true\n\t\t}\n\n\t\twatchFeature.stopWatching = async () => {\n\t\t\twasStopped = true\n\t\t}\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isFalse(wasStopped)\n\n\t\tawait watchAction.kill()\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isTrue(wasStopped)\n\t}\n\n\t@test()\n\tprotected static async killingActionKillsProcess() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: `Watching skill views`,\n\t\t})\n\n\t\tawait this.getViewFixture().createViewController({\n\t\t\tnameKebab: 'root',\n\t\t\tnamePascal: 'Root',\n\t\t})\n\n\t\tawait this.Action('view', 'sync').execute({})\n\n\t\tawait this.Service('build').build()\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst results = await watchAction.execute({ shouldReturnImmediately: true })\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tlet pid = watchAction.getPid()\n\n\t\twhile (!pid) {\n\t\t\tawait this.wait(100)\n\t\t\tpid = watchAction.getPid()\n\t\t}\n\n\t\tawait results.meta?.bootPromise\n\n\t\tawait this.assertProcessRunning(pid)\n\n\t\tawait watchAction.kill()\n\n\t\tawait this.wait(500)\n\n\t\tawait assert.doesThrowAsync(() => this.assertProcessRunning(pid as number))\n\t}\n\n\tprivate static async assertProcessRunning(pid: number) {\n\t\tawait new Promise((resolve, reject) => {\n\t\t\tps.lookup({ pid }, (err: any, results: any) => {\n\t\t\t\tif (err || results.length !== 1) {\n\t\t\t\t\treject('boot process not running')\n\t\t\t\t}\n\n\t\t\t\tresolve(results)\n\t\t\t})\n\t\t})\n\t}\n\n\tprivate static async emitFileChangeEvent() {\n\t\tconst emitter = this.getEmitter()\n\n\t\tawait emitter.emit('watcher.did-detect-change', {\n\t\t\tchanges: [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'updated',\n\t\t\t\t\t\tname: 'Cool name!',\n\t\t\t\t\t\tpath: '/',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WatchingSkillViews.test.js","names":["WatchingSkillViewsTest","test","oldBootExecute","BootAction","prototype","execute","getFeatureInstaller","isInstalled","SettingsService","isMarkedAsInstalled","assert","isFunction","Action","wasHit","CommandService","fakeCommand","code","callback","watchAction","wait","isTrue","kill","hitCount","isEqual","emitFileChangeEvent","passedOptions","options","shouldReturnImmediately","actionPromise","didWait","waitPromise","Promise","resolve","setTimeout","isFalse","watchFeature","getFeature","wasStarted","wasStopped","startWatching","stopWatching","FeatureFixture","installCachedFeatures","getSkillFixture","registerCurrentSkill","name","getViewFixture","createViewController","nameKebab","namePascal","Service","build","results","isFalsy","errors","pid","getPid","meta","bootPromise","assertProcessRunning","doesThrowAsync","reject","ps","lookup","err","length","emitter","getEmitter","emit","changes","schemaId","version","values","action","path","AbstractSkillTest"],"sources":["../../../src/__tests__/behavioral/WatchingSkillViews.test.ts"],"sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport ps from 'ps-node'\nimport BootAction from '../../features/skill/actions/BootAction'\nimport WatchAction from '../../features/view/actions/WatchAction'\nimport CommandService from '../../services/CommandService'\nimport AbstractSkillTest from '../../tests/AbstractSkillTest'\n\nexport default class WatchingSkillViewsTest extends AbstractSkillTest {\n\tprotected static skillCacheKey = 'views'\n\tprotected static oldBootExecute: any\n\n\tprotected static async beforeAll() {\n\t\tawait super.beforeAll()\n\t\tthis.oldBootExecute = BootAction.prototype.execute\n\t}\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.getFeatureInstaller().isInstalled = async () => true\n\t\tSettingsService.prototype.isMarkedAsInstalled = () => true\n\t\tBootAction.prototype.execute = this.oldBootExecute\n\t}\n\n\t@test()\n\tprotected static async hasWatchSkillViewsEvent() {\n\t\tassert.isFunction(this.Action('view', 'watch').execute)\n\t}\n\n\t@test()\n\tprotected static async shouldCallBoot() {\n\t\tlet wasHit = false\n\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasHit = true\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute({})\n\t\tawait this.wait(10)\n\t\tassert.isTrue(wasHit)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async shouldCallBootAgainOnFileChange() {\n\t\tlet hitCount = 0\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\thitCount++\n\t\t\t},\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tvoid watchAction.execute({})\n\n\t\tawait this.wait(10)\n\n\t\tassert.isEqual(hitCount, 1)\n\n\t\tawait this.emitFileChangeEvent()\n\n\t\tassert.isEqual(hitCount, 2)\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async changesDuringBootOfSkillKillSkill() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\n\t\tlet passedOptions: any = null\n\n\t\t//@ts-ignore\n\t\tBootAction.prototype.execute = (options: any) => {\n\t\t\tpassedOptions = options\n\t\t}\n\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(passedOptions.shouldReturnImmediately)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async holdsOnAction() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(async () => {\n\t\t\t\tdidWait = true\n\t\t\t\tawait watchAction.kill()\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait actionPromise\n\t\tawait waitPromise\n\n\t\tassert.isTrue(didWait)\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async canKillAction() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst actionPromise = watchAction.execute()\n\n\t\tlet didWait = false\n\t\tconst waitPromise = new Promise((resolve) => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tdidWait = true\n\t\t\t\tresolve(null)\n\t\t\t}, 1000)\n\t\t})\n\n\t\tawait this.wait(100)\n\n\t\tawait watchAction.kill()\n\n\t\tawait actionPromise\n\n\t\tassert.isFalse(didWait)\n\n\t\tawait waitPromise\n\n\t\tawait watchAction.kill()\n\t}\n\n\t@test()\n\tprotected static async makeSureWatcherIsStartedAndStopped() {\n\t\tCommandService.fakeCommand(/yarn boot/gis, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst watchFeature = this.getFeatureInstaller().getFeature('watch')\n\t\tlet wasStarted = false\n\t\tlet wasStopped = false\n\n\t\twatchFeature.startWatching = async () => {\n\t\t\twasStarted = true\n\t\t}\n\n\t\twatchFeature.stopWatching = async () => {\n\t\t\twasStopped = true\n\t\t}\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tvoid watchAction.execute()\n\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isFalse(wasStopped)\n\n\t\tawait watchAction.kill()\n\t\tawait this.wait(100)\n\n\t\tassert.isTrue(wasStarted)\n\t\tassert.isTrue(wasStopped)\n\t}\n\n\t@test()\n\tprotected static async killingActionKillsProcess() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\t\tawait this.getSkillFixture().registerCurrentSkill({\n\t\t\tname: `Watching skill views`,\n\t\t})\n\n\t\tawait this.getViewFixture().createViewController({\n\t\t\tnameKebab: 'root',\n\t\t\tnamePascal: 'Root',\n\t\t})\n\n\t\tawait this.Action('view', 'sync').execute({})\n\n\t\tawait this.Service('build').build()\n\n\t\tconst watchAction = this.Action('view', 'watch') as WatchAction\n\t\tconst results = await watchAction.execute({ shouldReturnImmediately: true })\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tlet pid = watchAction.getPid()\n\n\t\twhile (!pid) {\n\t\t\tawait this.wait(100)\n\t\t\tpid = watchAction.getPid()\n\t\t}\n\n\t\tawait results.meta?.bootPromise\n\n\t\tawait this.assertProcessRunning(pid)\n\n\t\tawait watchAction.kill()\n\n\t\tawait this.wait(500)\n\n\t\tawait assert.doesThrowAsync(() => this.assertProcessRunning(pid as number))\n\t}\n\n\tprivate static async assertProcessRunning(pid: number) {\n\t\tawait new Promise((resolve, reject) => {\n\t\t\tps.lookup({ pid }, (err: any, results: any) => {\n\t\t\t\tif (err || results.length !== 1) {\n\t\t\t\t\treject('boot process not running')\n\t\t\t\t}\n\n\t\t\t\tresolve(results)\n\t\t\t})\n\t\t})\n\t}\n\n\tprivate static async emitFileChangeEvent() {\n\t\tconst emitter = this.getEmitter()\n\n\t\tawait emitter.emit('watcher.did-detect-change', {\n\t\t\tchanges: [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'updated',\n\t\t\t\t\t\tname: 'Cool name!',\n\t\t\t\t\t\tpath: '/',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;IAEqBA,sB,WAgBnB,IAAAC,UAAA,G,UAKA,IAAAA,UAAA,G,UAmBA,IAAAA,UAAA,G,UAwBA,IAAAA,UAAA,G,UAwBA,IAAAA,UAAA,G,UAyBA,IAAAA,UAAA,G,UA8BA,IAAAA,UAAA,G,UAiCA,IAAAA,UAAA,G;;;;;;;;;;;;;qGA5KD;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;;cAAA;gBAEC,KAAKC,cAAL,GAAsBC,sBAAA,CAAWC,SAAX,CAAqBC,OAA3C;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;sGAKA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;;cAAA;gBAEC,KAAKC,mBAAL,GAA2BC,WAA3B,8FAAyC;kBAAA;oBAAA;sBAAA;wBAAA;0BAAA,kCAAY,IAAZ;;wBAAA;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAAzC;;gBACAC,iCAAA,CAAgBJ,SAAhB,CAA0BK,mBAA1B,GAAgD;kBAAA,OAAM,IAAN;gBAAA,CAAhD;;gBACAN,sBAAA,CAAWC,SAAX,CAAqBC,OAArB,GAA+B,KAAKH,cAApC;;cAJD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;mHAOA;QAAA;UAAA;YAAA;cAAA;gBAECQ,YAAA,CAAOC,UAAP,CAAkB,KAAKC,MAAL,CAAY,MAAZ,EAAoB,OAApB,EAA6BP,OAA/C;;cAFD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;0GAKA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEKQ,MAFL,GAEc,KAFd;;gBAICC,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE,CADoC;kBAE1CC,QAAQ,EAAE,oBAAM;oBACfJ,MAAM,GAAG,IAAT;kBACA;gBAJyC,CAA3C;;gBAOMK,WAXP,GAWqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CAXrB;gBAYC,KAAKM,WAAW,CAACb,OAAZ,CAAoB,EAApB,CAAL;gBAZD;gBAAA,OAaO,KAAKc,IAAL,CAAU,EAAV,CAbP;;cAAA;gBAcCT,YAAA,CAAOU,MAAP,CAAcP,MAAd;;gBAdD;gBAAA,OAgBOK,WAAW,CAACG,IAAZ,EAhBP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;2HAmBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEKC,QAFL,GAEgB,CAFhB;;gBAGCR,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE,CADoC;kBAE1CC,QAAQ,EAAE,oBAAM;oBACfK,QAAQ;kBACR;gBAJyC,CAA3C;;gBAOMJ,WAVP,GAUqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CAVrB;gBAYC,KAAKM,WAAW,CAACb,OAAZ,CAAoB,EAApB,CAAL;gBAZD;gBAAA,OAcO,KAAKc,IAAL,CAAU,EAAV,CAdP;;cAAA;gBAgBCT,YAAA,CAAOa,OAAP,CAAeD,QAAf,EAAyB,CAAzB;;gBAhBD;gBAAA,OAkBO,KAAKE,mBAAL,EAlBP;;cAAA;gBAoBCd,YAAA,CAAOa,OAAP,CAAeD,QAAf,EAAyB,CAAzB;;gBApBD;gBAAA,OAqBOJ,WAAW,CAACG,IAAZ,EArBP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;6HAwBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAECP,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE;gBADoC,CAA3C;;gBAIME,WANP,GAMqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CANrB;gBAQKa,aARL,GAQ0B,IAR1B,EAUC;;gBACAtB,sBAAA,CAAWC,SAAX,CAAqBC,OAArB,GAA+B,UAACqB,OAAD,EAAkB;kBAChDD,aAAa,GAAGC,OAAhB;gBACA,CAFD;;gBAIA,KAAKR,WAAW,CAACb,OAAZ,EAAL;gBAfD;gBAAA,OAiBO,KAAKc,IAAL,CAAU,GAAV,CAjBP;;cAAA;gBAmBCT,YAAA,CAAOU,MAAP,CAAcK,aAAa,CAACE,uBAA5B;;gBAnBD;gBAAA,OAqBOT,WAAW,CAACG,IAAZ,EArBP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;yGAwBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAECP,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE;gBADoC,CAA3C;;gBAIME,WANP,GAMqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CANrB;gBAOOgB,aAPP,GAOuBV,WAAW,CAACb,OAAZ,EAPvB;gBAQKwB,OARL,GAQe,KARf;gBASOC,WATP,GASqB,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAa;kBAC5CC,UAAU,6FAAC;oBAAA;sBAAA;wBAAA;0BAAA;4BACVJ,OAAO,GAAG,IAAV;4BADU;4BAAA,OAEJX,WAAW,CAACG,IAAZ,EAFI;;0BAAA;4BAGVW,OAAO,CAAC,IAAD,CAAP;;0BAHU;0BAAA;4BAAA;wBAAA;sBAAA;oBAAA;kBAAA,CAAD,IAIP,IAJO,CAAV;gBAKA,CANmB,CATrB;gBAAA;gBAAA,OAiBOJ,aAjBP;;cAAA;gBAAA;gBAAA,OAkBOE,WAlBP;;cAAA;gBAoBCpB,YAAA,CAAOU,MAAP,CAAcS,OAAd;;gBApBD;gBAAA,OAsBOX,WAAW,CAACG,IAAZ,EAtBP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;yGAyBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAECP,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE;gBADoC,CAA3C;;gBAIME,WANP,GAMqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CANrB;gBAOOgB,aAPP,GAOuBV,WAAW,CAACb,OAAZ,EAPvB;gBASKwB,OATL,GASe,KATf;gBAUOC,WAVP,GAUqB,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAa;kBAC5CC,UAAU,CAAC,YAAM;oBAChBJ,OAAO,GAAG,IAAV;oBACAG,OAAO,CAAC,IAAD,CAAP;kBACA,CAHS,EAGP,IAHO,CAAV;gBAIA,CALmB,CAVrB;gBAAA;gBAAA,OAiBO,KAAKb,IAAL,CAAU,GAAV,CAjBP;;cAAA;gBAAA;gBAAA,OAmBOD,WAAW,CAACG,IAAZ,EAnBP;;cAAA;gBAAA;gBAAA,OAqBOO,aArBP;;cAAA;gBAuBClB,YAAA,CAAOwB,OAAP,CAAeL,OAAf;;gBAvBD;gBAAA,OAyBOC,WAzBP;;cAAA;gBAAA;gBAAA,OA2BOZ,WAAW,CAACG,IAAZ,EA3BP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;8HA8BA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAECP,0BAAA,CAAeC,WAAf,CAA2B,aAA3B,EAA2C;kBAC1CC,IAAI,EAAE;gBADoC,CAA3C;;gBAIMmB,YANP,GAMsB,KAAK7B,mBAAL,GAA2B8B,UAA3B,CAAsC,OAAtC,CANtB;gBAOKC,UAPL,GAOkB,KAPlB;gBAQKC,UARL,GAQkB,KARlB;gBAUCH,YAAY,CAACI,aAAb,8FAA6B;kBAAA;oBAAA;sBAAA;wBAAA;0BAC5BF,UAAU,GAAG,IAAb;;wBAD4B;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAA7B;gBAIAF,YAAY,CAACK,YAAb,8FAA4B;kBAAA;oBAAA;sBAAA;wBAAA;0BAC3BF,UAAU,GAAG,IAAb;;wBAD2B;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAA5B;gBAIMpB,WAlBP,GAkBqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CAlBrB;gBAmBC,KAAKM,WAAW,CAACb,OAAZ,EAAL;gBAnBD;gBAAA,OAqBO,KAAKc,IAAL,CAAU,GAAV,CArBP;;cAAA;gBAuBCT,YAAA,CAAOU,MAAP,CAAciB,UAAd;;gBACA3B,YAAA,CAAOwB,OAAP,CAAeI,UAAf;;gBAxBD;gBAAA,OA0BOpB,WAAW,CAACG,IAAZ,EA1BP;;cAAA;gBAAA;gBAAA,OA2BO,KAAKF,IAAL,CAAU,GAAV,CA3BP;;cAAA;gBA6BCT,YAAA,CAAOU,MAAP,CAAciB,UAAd;;gBACA3B,YAAA,CAAOU,MAAP,CAAckB,UAAd;;cA9BD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;qHAiCA;QAAA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKG,cAAL,GAAsBC,qBAAtB,CAA4C,QAA5C,CAFP;;cAAA;gBAAA;gBAAA,OAGO,KAAKC,eAAL,GAAuBC,oBAAvB,CAA4C;kBACjDC,IAAI;gBAD6C,CAA5C,CAHP;;cAAA;gBAAA;gBAAA,OAOO,KAAKC,cAAL,GAAsBC,oBAAtB,CAA2C;kBAChDC,SAAS,EAAE,MADqC;kBAEhDC,UAAU,EAAE;gBAFoC,CAA3C,CAPP;;cAAA;gBAAA;gBAAA,OAYO,KAAKrC,MAAL,CAAY,MAAZ,EAAoB,MAApB,EAA4BP,OAA5B,CAAoC,EAApC,CAZP;;cAAA;gBAAA;gBAAA,OAcO,KAAK6C,OAAL,CAAa,OAAb,EAAsBC,KAAtB,EAdP;;cAAA;gBAgBOjC,WAhBP,GAgBqB,KAAKN,MAAL,CAAY,MAAZ,EAAoB,OAApB,CAhBrB;gBAAA;gBAAA,OAiBuBM,WAAW,CAACb,OAAZ,CAAoB;kBAAEsB,uBAAuB,EAAE;gBAA3B,CAApB,CAjBvB;;cAAA;gBAiBOyB,OAjBP;;gBAmBC1C,YAAA,CAAO2C,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEIC,GArBL,GAqBWrC,WAAW,CAACsC,MAAZ,EArBX;;cAAA;gBAAA,IAuBSD,GAvBT;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAwBQ,KAAKpC,IAAL,CAAU,GAAV,CAxBR;;cAAA;gBAyBEoC,GAAG,GAAGrC,WAAW,CAACsC,MAAZ,EAAN;gBAzBF;gBAAA;;cAAA;gBAAA;gBAAA,wBA4BOJ,OAAO,CAACK,IA5Bf,kDA4BO,cAAcC,WA5BrB;;cAAA;gBAAA;gBAAA,OA8BO,KAAKC,oBAAL,CAA0BJ,GAA1B,CA9BP;;cAAA;gBAAA;gBAAA,OAgCOrC,WAAW,CAACG,IAAZ,EAhCP;;cAAA;gBAAA;gBAAA,OAkCO,KAAKF,IAAL,CAAU,GAAV,CAlCP;;cAAA;gBAAA;gBAAA,OAoCOT,YAAA,CAAOkD,cAAP,CAAsB;kBAAA,OAAM,KAAI,CAACD,oBAAL,CAA0BJ,GAA1B,CAAN;gBAAA,CAAtB,CApCP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;gHAuCA,mBAA0CA,GAA1C;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACO,IAAIxB,OAAJ,CAAY,UAACC,OAAD,EAAU6B,MAAV,EAAqB;kBACtCC,kBAAA,CAAGC,MAAH,CAAU;oBAAER,GAAG,EAAHA;kBAAF,CAAV,EAAmB,UAACS,GAAD,EAAWZ,OAAX,EAA4B;oBAC9C,IAAIY,GAAG,IAAIZ,OAAO,CAACa,MAAR,KAAmB,CAA9B,EAAiC;sBAChCJ,MAAM,CAAC,0BAAD,CAAN;oBACA;;oBAED7B,OAAO,CAACoB,OAAD,CAAP;kBACA,CAND;gBAOA,CARK,CADP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;+GAYA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACOc,OADP,GACiB,KAAKC,UAAL,EADjB;gBAAA;gBAAA,OAGOD,OAAO,CAACE,IAAR,CAAa,2BAAb,EAA0C;kBAC/CC,OAAO,EAAE,CACR;oBACCC,QAAQ,EAAE,eADX;oBAECC,OAAO,EAAE,aAFV;oBAGCC,MAAM,EAAE;sBACPC,MAAM,EAAE,SADD;sBAEP5B,IAAI,EAAE,YAFC;sBAGP6B,IAAI,EAAE;oBAHC;kBAHT,CADQ;gBADsC,CAA1C,CAHP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAnOmDC,8B,8DAClB,O"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreatingANewErrorBuilder.test.js","names":["CreatingANewErrorBuilderTest","assert","isFunction","Action","execute","installErrorsAndGetCreateAction","action","nameReadable","nameCamel","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","Service","check","assertValidActionResponseFiles","shouldFetchCoreSchemas","Cli","cli","checkHealth","health","schema","isTruthy","schemas","isLength","installErrorFeature","AbstractErrorTest"],"sources":["../../../../src/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractErrorTest from '../../../tests/AbstractErrorTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class CreatingANewErrorBuilderTest extends AbstractErrorTest {\n\t@test()\n\tprotected static async hasCreateAction() {\n\t\tassert.isFunction(this.Action('error', 'create').execute)\n\t}\n\n\t@test()\n\tprotected static async createsValidBuilder() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test failed',\n\t\t\tnameCamel: 'testFailed',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t/testFailed.builder/,\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(match)\n\t}\n\n\t@test()\n\tprotected static async buildCreatesValidSchemaAndOptionsFile() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/testPass\\.schema/, results.files)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/options\\.types/, results.files)\n\n\t\tawait this.assertValidActionResponseFiles(results)\n\t}\n\n\t@test()\n\tprotected static async buildCreatesValidSchemaAndOptionsFileWhenFetchCoreSchemasFalse() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t\tshouldFetchCoreSchemas: false,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/testPass\\.schema/, results.files)\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/options\\.types/, results.files)\n\n\t\tawait this.assertValidActionResponseFiles(results)\n\n\t\tconst cli = await this.Cli()\n\t\tconst health = await cli.checkHealth()\n\n\t\tassert.isFalsy(health.schema?.errors)\n\t\tassert.isTruthy(health.schema?.schemas)\n\t\tassert.isLength(health.schema.schemas, 0)\n\t}\n\n\tprotected static async installErrorsAndGetCreateAction() {\n\t\tawait this.installErrorFeature('errors')\n\t\treturn this.Action('error', 'create')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;IAEqBA,4B,WACnB,
|
|
1
|
+
{"version":3,"file":"CreatingANewErrorBuilder.test.js","names":["CreatingANewErrorBuilderTest","test","assert","isFunction","Action","execute","installErrorsAndGetCreateAction","action","nameReadable","nameCamel","results","isFalsy","errors","match","testUtil","assertFileByNameInGeneratedFiles","files","Service","check","assertValidActionResponseFiles","shouldFetchCoreSchemas","Cli","cli","checkHealth","health","schema","isTruthy","schemas","isLength","installErrorFeature","AbstractErrorTest"],"sources":["../../../../src/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport AbstractErrorTest from '../../../tests/AbstractErrorTest'\nimport testUtil from '../../../tests/utilities/test.utility'\n\nexport default class CreatingANewErrorBuilderTest extends AbstractErrorTest {\n\t@test()\n\tprotected static async hasCreateAction() {\n\t\tassert.isFunction(this.Action('error', 'create').execute)\n\t}\n\n\t@test()\n\tprotected static async createsValidBuilder() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test failed',\n\t\t\tnameCamel: 'testFailed',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t/testFailed.builder/,\n\t\t\tresults.files\n\t\t)\n\n\t\tawait this.Service('typeChecker').check(match)\n\t}\n\n\t@test()\n\tprotected static async buildCreatesValidSchemaAndOptionsFile() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/testPass\\.schema/, results.files)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/options\\.types/, results.files)\n\n\t\tawait this.assertValidActionResponseFiles(results)\n\t}\n\n\t@test()\n\tprotected static async buildCreatesValidSchemaAndOptionsFileWhenFetchCoreSchemasFalse() {\n\t\tconst action = await this.installErrorsAndGetCreateAction()\n\t\tconst results = await action.execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t\tshouldFetchCoreSchemas: false,\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/testPass\\.schema/, results.files)\n\t\ttestUtil.assertFileByNameInGeneratedFiles(/options\\.types/, results.files)\n\n\t\tawait this.assertValidActionResponseFiles(results)\n\n\t\tconst cli = await this.Cli()\n\t\tconst health = await cli.checkHealth()\n\n\t\tassert.isFalsy(health.schema?.errors)\n\t\tassert.isTruthy(health.schema?.schemas)\n\t\tassert.isLength(health.schema.schemas, 0)\n\t}\n\n\tprotected static async installErrorsAndGetCreateAction() {\n\t\tawait this.installErrorFeature('errors')\n\t\treturn this.Action('error', 'create')\n\t}\n}\n"],"mappings":"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"}
|