@sprucelabs/spruce-cli 17.1.38 → 17.1.41
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 +24 -0
- package/build/__tests__/behavioral/AddingADependency.test.js +10 -12
- package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
- package/build/__tests__/behavioral/BlockingCommands.test.js +3 -5
- package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingTheCli.test.js +3 -3
- package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js +7 -7
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
- package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +13 -13
- package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
- package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js +10 -10
- package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingASkill.test.js +32 -34
- package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingToSandbox.test.js +15 -17
- package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +11 -13
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
- package/build/__tests__/behavioral/GettingCliVersion.test.js +4 -4
- package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js +11 -13
- package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/ListeningToCoreEvents.test.js +4 -4
- package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js +14 -16
- package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/ManagingDependencies.test.js +9 -9
- package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +3 -3
- package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
- package/build/__tests__/behavioral/RebuildingASkill.test.js +4 -6
- package/build/__tests__/behavioral/RebuildingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +4 -4
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js +7 -7
- package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js +11 -11
- package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js +6 -6
- package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +5 -5
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +10 -12
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingRemote.test.js +9 -9
- package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js +10 -10
- package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js +29 -31
- package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpVscode.test.js +10 -10
- package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
- package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js +13 -13
- package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js +6 -6
- package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingAConversation.test.js +17 -17
- package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingDataStores.test.js +13 -13
- package/build/__tests__/behavioral/TestingDataStores.test.js.map +1 -1
- package/build/__tests__/behavioral/WatchingSkillViews.test.js +15 -15
- package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +15 -15
- package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +8 -8
- package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +32 -32
- package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +4 -6
- package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +25 -25
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +29 -31
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +26 -28
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +22 -22
- package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +38 -38
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +7 -7
- package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +6 -6
- package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SettingUpEvents.test.js +4 -4
- package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +3 -5
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +6 -6
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +6 -6
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
- package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +6 -6
- package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +3 -3
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +14 -16
- package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
- package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +7 -7
- package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
- package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +8 -8
- package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +23 -25
- package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +7 -7
- package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +6 -6
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +18 -18
- package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +7 -7
- package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +62 -64
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +6 -8
- package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +4 -6
- package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.d.ts +1 -1
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +4 -4
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/BootingASkill.test.js +12 -12
- package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js +5 -5
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +12 -14
- package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +29 -29
- package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +26 -28
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +8 -10
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/CreatingATest.test.js +10 -10
- package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/RunningTests.test.js +8 -10
- package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +17 -17
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js +3 -5
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +8 -8
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +7 -7
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +6 -6
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +15 -15
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +24 -24
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +22 -22
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +10 -10
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +9 -9
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +4 -4
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +9 -9
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js +28 -30
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingATheme.test.js +9 -11
- package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
- package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +8 -8
- package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/views/SettingUpViews.test.js +5 -5
- package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js +12 -12
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
- package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +10 -10
- package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter.test.js +5 -5
- package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js +30 -30
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter3.test.js +3 -5
- package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter4.test.js +2 -4
- package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
- package/build/__tests__/implementation/ArgParser.test.d.ts +1 -1
- package/build/__tests__/implementation/ArgParser.test.js +7 -7
- package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
- package/build/__tests__/implementation/BuildService.test.js +4 -4
- package/build/__tests__/implementation/BuildService.test.js.map +1 -1
- package/build/__tests__/implementation/BulkImporting.test.d.ts +1 -1
- package/build/__tests__/implementation/BulkImporting.test.js +20 -22
- package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
- package/build/__tests__/implementation/CachingImports.test.js +3 -3
- package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
- package/build/__tests__/implementation/CommandOptionBuilder.test.js +12 -12
- package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.d.ts +1 -1
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +13 -13
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
- package/build/__tests__/implementation/DataStoreStore.test.js +16 -18
- package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
- package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +6 -6
- package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
- package/build/__tests__/implementation/EventContractCleanerUtil.test.d.ts +1 -1
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js +7 -7
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
- package/build/__tests__/implementation/EventStore.test.js +27 -29
- package/build/__tests__/implementation/EventStore.test.js.map +1 -1
- package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +12 -12
- package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js +23 -23
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureFixture.test.js +7 -7
- package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureInstaller.test.js +8 -8
- package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
- package/build/__tests__/implementation/FeaturesUtil.test.d.ts +1 -1
- package/build/__tests__/implementation/FeaturesUtil.test.js +4 -4
- package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
- package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +11 -11
- package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/GlobalEmitter.js +3 -3
- package/build/__tests__/implementation/GlobalEmitter.js.map +1 -1
- package/build/__tests__/implementation/Introspection.test.js +4 -4
- package/build/__tests__/implementation/Introspection.test.js.map +1 -1
- package/build/__tests__/implementation/JestJsonParser.test.d.ts +1 -1
- package/build/__tests__/implementation/JestJsonParser.test.js +31 -31
- package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
- package/build/__tests__/implementation/LintService.test.js +3 -3
- package/build/__tests__/implementation/LintService.test.js.map +1 -1
- package/build/__tests__/implementation/ListenerStore.test.js +3 -3
- package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingScriptLoader.test.js +9 -9
- package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +17 -17
- package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingStore.test.js +14 -14
- package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
- package/build/__tests__/implementation/OrganizationStore.test.js +10 -10
- package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
- package/build/__tests__/implementation/ParentTestFinder.test.js +6 -6
- package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
- package/build/__tests__/implementation/PkgService.test.js +8 -8
- package/build/__tests__/implementation/PkgService.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaStore.test.js +30 -32
- package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +10 -10
- package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +13 -13
- package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
- package/build/__tests__/implementation/ServiceFactory.test.js +3 -3
- package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
- package/build/__tests__/implementation/SettingUpANodeModule.test.js +4 -6
- package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
- package/build/__tests__/implementation/SkillStore.test.js +25 -27
- package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
- package/build/__tests__/implementation/StoreFeature.test.js +4 -4
- package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
- package/build/__tests__/implementation/TestReporter.test.js +5 -5
- package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
- package/build/__tests__/implementation/TestRunner.test.js +23 -25
- package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
- package/build/__tests__/implementation/ValueTypeMapping.test.js +4 -4
- package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
- package/build/__tests__/implementation/Widgets.test.js +10 -10
- package/build/__tests__/implementation/Widgets.test.js.map +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/AbstractTest.d.ts +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/AbstractTest.ts +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/AbstractTest2.d.ts +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/AbstractTest2.ts +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/deeper/AbstractBananaTest.d.ts +1 -1
- package/build/__tests__/testDirsAndFiles/abstract_tests/deeper/AbstractBananaTest.ts +1 -1
- package/build/features/onboard/templates/ManagingTodos.test.ts.hbs +1 -1
- package/build/features/test/TestLogItemGenerator.js +2 -2
- package/build/features/test/TestLogItemGenerator.js.map +1 -1
- package/build/interfaces/SpyInterface.js +5 -5
- package/build/interfaces/SpyInterface.js.map +1 -1
- package/build/tests/AbstractCliTest.d.ts +1 -1
- package/build/tests/AbstractCliTest.js +11 -11
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/AbstractSchemaTest.js +4 -4
- package/build/tests/AbstractSchemaTest.js.map +1 -1
- package/build/tests/utilities/test.utility.js +6 -6
- package/build/tests/utilities/test.utility.js.map +1 -1
- package/build/tests/utilities/uiAssert.utility.js +6 -6
- package/build/tests/utilities/uiAssert.utility.js.map +1 -1
- package/node_modules/@typescript-eslint/parser/package.json +5 -5
- package/node_modules/@typescript-eslint/scope-manager/package.json +5 -5
- package/node_modules/@typescript-eslint/types/package.json +2 -2
- package/node_modules/@typescript-eslint/typescript-estree/package.json +5 -5
- package/node_modules/@typescript-eslint/visitor-keys/package.json +3 -3
- package/package.json +32 -32
- package/src/__tests__/behavioral/AddingADependency.test.ts +1 -1
- package/src/__tests__/behavioral/BlockingCommands.test.ts +1 -1
- package/src/__tests__/behavioral/BootingTheCli.test.ts +1 -1
- package/src/__tests__/behavioral/BootingWithBadFiles.test.ts +1 -1
- package/src/__tests__/behavioral/CreatingAConversationTopic.test.ts +1 -1
- package/src/__tests__/behavioral/CreatingSchemasWithGenerics.test.ts +1 -1
- package/src/__tests__/behavioral/DeployingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/DeployingToSandbox.test.ts +1 -1
- package/src/__tests__/behavioral/EnablingAndDisablingCache.test.ts +1 -1
- package/src/__tests__/behavioral/GettingCliVersion.test.ts +1 -1
- package/src/__tests__/behavioral/InstallingASkillAtAnOrg.test.ts +1 -1
- package/src/__tests__/behavioral/ListeningToCoreEvents.test.ts +1 -1
- package/src/__tests__/behavioral/LoggingInAsASkill.test.ts +1 -1
- package/src/__tests__/behavioral/ManagingDependencies.test.ts +1 -1
- package/src/__tests__/behavioral/OverridingCommandsInPackageJson.test.ts +1 -1
- package/src/__tests__/behavioral/RebuildingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/RegisteringConversationsOnBoot.test.ts +1 -1
- package/src/__tests__/behavioral/RegisteringEventsOnBoot.test.ts +1 -1
- package/src/__tests__/behavioral/RegisteringGlobalEvents.test.ts +1 -1
- package/src/__tests__/behavioral/RegisteringSkillViewOnBoot.test.ts +1 -1
- package/src/__tests__/behavioral/RememberingUpgradeSelections.test.ts +1 -1
- package/src/__tests__/behavioral/SettingLogTransportsInASkill.test.ts +1 -1
- package/src/__tests__/behavioral/SettingRemote.test.ts +1 -1
- package/src/__tests__/behavioral/SettingUpASkillForTesting.test.ts +1 -1
- package/src/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.ts +1 -1
- package/src/__tests__/behavioral/SettingUpVscode.test.ts +1 -1
- package/src/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.ts +1 -1
- package/src/__tests__/behavioral/TestReporterSettingsRemembered.test.ts +1 -1
- package/src/__tests__/behavioral/TestingAConversation.test.ts +1 -1
- package/src/__tests__/behavioral/TestingDataStores.test.ts +1 -1
- package/src/__tests__/behavioral/WatchingSkillViews.test.ts +1 -1
- package/src/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.ts +1 -1
- package/src/__tests__/behavioral/errors/KeepingErrorClassInSync.test.ts +1 -1
- package/src/__tests__/behavioral/errors/KeepingErrorsInSync.test.ts +1 -1
- package/src/__tests__/behavioral/errors/SettingUpErrors.test.ts +1 -1
- package/src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts +1 -1
- package/src/__tests__/behavioral/events/CreatingAListener.test.ts +1 -1
- package/src/__tests__/behavioral/events/CreatingAnEvent.test.ts +1 -1
- package/src/__tests__/behavioral/events/KeepingEventsInSync.test.ts +1 -1
- package/src/__tests__/behavioral/events/KeepingEventsInSync2.test.ts +1 -1
- package/src/__tests__/behavioral/events/KeepingListenersInSync.test.ts +1 -1
- package/src/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.ts +1 -1
- package/src/__tests__/behavioral/events/SettingUpEvents.test.ts +1 -1
- package/src/__tests__/behavioral/events/SkillEmitsBootEvents.test.ts +1 -1
- package/src/__tests__/behavioral/node/CreatingANodeModule.test.ts +1 -1
- package/src/__tests__/behavioral/onboard/StartingOnboarding.test.ts +1 -1
- package/src/__tests__/behavioral/organization/CreatingAnOrg.test.ts +1 -1
- package/src/__tests__/behavioral/permissions/CreatingPermissions.test.ts +1 -1
- package/src/__tests__/behavioral/person/LoggingInAsPerson.test.ts +1 -1
- package/src/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.ts +1 -1
- package/src/__tests__/behavioral/polish/SettingUpPolish.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/ImportingSchemaImports.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/KeepingSchemasInSync.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/SettingUpSchemas.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.ts +1 -1
- package/src/__tests__/behavioral/schemas/UsingSchemasInCli.test.ts +1 -1
- package/src/__tests__/behavioral/skill/BootingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/skill/CreatingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/skill/RegisteringASkill.test.ts +1 -1
- package/src/__tests__/behavioral/skill/SettingUpASkill.test.ts +1 -1
- package/src/__tests__/behavioral/stores/CreatingADataStore.test.ts +1 -1
- package/src/__tests__/behavioral/stores/KeepingDataStoresInSync.test.ts +1 -1
- package/src/__tests__/behavioral/tests/CreatingATest.test.ts +1 -1
- package/src/__tests__/behavioral/tests/RunningTests.test.ts +1 -1
- package/src/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.ts +1 -1
- package/src/__tests__/behavioral/tests/SettingUpTests.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpdatingDependencies.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpdatingDependencies2.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingANodeModule.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingASkill.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingASkill2.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingASkill3.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingASkill4.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingASkill5.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingWithListeners.test.ts +1 -1
- package/src/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.ts +1 -1
- package/src/__tests__/behavioral/views/CreatingASkillView.test.ts +1 -1
- package/src/__tests__/behavioral/views/CreatingATheme.test.ts +1 -1
- package/src/__tests__/behavioral/views/KeepingViewsInSync.test.ts +1 -1
- package/src/__tests__/behavioral/views/SettingUpViews.test.ts +1 -1
- package/src/__tests__/behavioral/views/TestingViewControllers.test.ts +1 -1
- package/src/__tests__/behavioral/watchers/WatchingForChanges.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter2.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter3.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter4.test.ts +1 -1
- package/src/__tests__/implementation/ArgParser.test.ts +1 -1
- package/src/__tests__/implementation/BuildService.test.ts +1 -1
- package/src/__tests__/implementation/BulkImporting.test.ts +1 -1
- package/src/__tests__/implementation/CachingImports.test.ts +1 -1
- package/src/__tests__/implementation/CommandOptionBuilder.test.ts +1 -1
- package/src/__tests__/implementation/CommanderCommandResultMapper.test.ts +1 -1
- package/src/__tests__/implementation/DataStoreStore.test.ts +1 -1
- package/src/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.ts +1 -1
- package/src/__tests__/implementation/EventContractCleanerUtil.test.ts +1 -1
- package/src/__tests__/implementation/EventStore.test.ts +1 -1
- package/src/__tests__/implementation/EventTemplateItemBuilder.test.ts +1 -1
- package/src/__tests__/implementation/FeatureCommandAttacher.test.ts +1 -1
- package/src/__tests__/implementation/FeatureFixture.test.ts +1 -1
- package/src/__tests__/implementation/FeatureInstaller.test.ts +1 -1
- package/src/__tests__/implementation/FeaturesUtil.test.ts +1 -1
- package/src/__tests__/implementation/FieldTemplateItemBuilder.test.ts +1 -1
- package/src/__tests__/implementation/GlobalEmitter.ts +1 -1
- package/src/__tests__/implementation/Introspection.test.ts +1 -1
- package/src/__tests__/implementation/JestJsonParser.test.ts +1 -1
- package/src/__tests__/implementation/LintService.test.ts +1 -1
- package/src/__tests__/implementation/ListenerStore.test.ts +1 -1
- package/src/__tests__/implementation/OnboardingScriptLoader.test.ts +1 -1
- package/src/__tests__/implementation/OnboardingScriptPlayer.test.ts +1 -1
- package/src/__tests__/implementation/OnboardingStore.test.ts +1 -1
- package/src/__tests__/implementation/OrganizationStore.test.ts +1 -1
- package/src/__tests__/implementation/ParentTestFinder.test.ts +1 -1
- package/src/__tests__/implementation/PkgService.test.ts +1 -1
- package/src/__tests__/implementation/SchemaStore.test.ts +1 -1
- package/src/__tests__/implementation/SchemaTemplateItemBuilder.test.ts +1 -1
- package/src/__tests__/implementation/SchemaValueTypeWriter.test.ts +1 -1
- package/src/__tests__/implementation/ServiceFactory.test.ts +1 -1
- package/src/__tests__/implementation/SettingUpANodeModule.test.ts +1 -1
- package/src/__tests__/implementation/SkillStore.test.ts +1 -1
- package/src/__tests__/implementation/StoreFeature.test.ts +1 -1
- package/src/__tests__/implementation/TestReporter.test.ts +1 -1
- package/src/__tests__/implementation/TestRunner.test.ts +1 -1
- package/src/__tests__/implementation/ValueTypeMapping.test.ts +1 -1
- package/src/__tests__/implementation/Widgets.test.ts +1 -1
- package/src/__tests__/testDirsAndFiles/abstract_tests/AbstractTest.ts +1 -1
- package/src/__tests__/testDirsAndFiles/abstract_tests/AbstractTest2.ts +1 -1
- package/src/__tests__/testDirsAndFiles/abstract_tests/deeper/AbstractBananaTest.ts +1 -1
- package/src/features/onboard/templates/ManagingTodos.test.ts.hbs +1 -1
- package/src/features/test/TestLogItemGenerator.ts +1 -1
- package/src/interfaces/SpyInterface.ts +1 -1
- package/src/tests/AbstractCliTest.ts +1 -1
- package/src/tests/AbstractSchemaTest.ts +1 -1
- package/src/tests/utilities/test.utility.ts +1 -1
- package/src/tests/utilities/uiAssert.utility.ts +1 -1
|
@@ -1 +1 @@
|
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAKA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;;;;;;;;;AAEA,IAAMA,eAAe,GAAG,gBAAxB;AACA,IAAMC,gBAAgB,GAAG,eAAzB;AAEA,IAAMC,aAAa,GAAG,4BAAtB;AACA,IAAMC,cAAc,GAAG,8BAAvB;IAEqBC,yC,WAsCnB,IAAAC,UAAA,EACA,0CADA,EAEA,eAFA,EAGAH,aAHA,EAIA,GAJA,C,UAMA,IAAAG,UAAA,EACA,0CADA,EAEA,gBAFA,EAGAF,cAHA,EAIA,GAJA,C,UAsDA,IAAAE,UAAA,G,UAaA,IAAAA,UAAA,G,UAYA,IAAAA,UAAA,EACA,oDADA,EAEA,CAAC,SAAD,CAFA,EAGA,CAACH,aAAD,CAHA,EAIA,KAJA,C,UAMA,IAAAG,UAAA,EACA,gDADA,EAEA,CAAC,SAAD,CAFA,EAGA,CAACH,aAAD,CAHA,EAIA,IAJA,C,UAMA,IAAAG,UAAA,EACA,gDADA,EAEA,CAAC,SAAD,EAAY,SAAZ,CAFA,EAGA,CAACH,aAAD,EAAgBC,cAAhB,CAHA,EAIA,IAJA,C,UAMA,IAAAE,UAAA,EACA,uCADA,EAEA,CAAC,SAAD,EAAY,UAAZ,EAAwB,SAAxB,CAFA,EAGA,CAACH,aAAD,EAAgBC,cAAhB,CAHA,EAIA,IAJA,C,UAwDA,IAAAE,UAAA,EAAK,sCAAL,EAA6C,CAAC,SAAD,CAA7C,C,WACA,IAAAA,UAAA,EAAK,uCAAL,EAA8C,CAAC,SAAD,EAAY,SAAZ,CAA9C,C,WAiCA,IAAAA,UAAA,EAAK,2CAAL,EAAkD,iFAAlD,C,WAGA,IAAAA,UAAA,EAAK,qEAAL,EAA4E,mKAA5E,C,WAoDA,IAAAA,UAAA,G,WAsBA,IAAAA,UAAA,G,WAkEA,IAAAA,UAAA,G;;;;;;;;;;;;WAnWD;;kIAmBA,iBAaCC,UAbD,EAcCC,YAdD,EAeCC,KAfD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAiBOC,SAjBP,GAiBmBC,2BAAA,CAAUC,OAAV,CAAkBL,UAAlB,CAjBnB;gBAkBOM,OAlBP,GAkBiB,KAAKC,MAAL,CAAY,QAAZ,EAAsB,QAAtB,EAAgCC,OAAhC,CAAwC;kBACvDC,YAAY,EAAE,2BADyC;kBAEvDT,UAAU,EAAVA,UAFuD;kBAGvDG,SAAS,EAATA,SAHuD;kBAIvDO,4BAA4B,EAAET;gBAJyB,CAAxC,CAlBjB;gBAAA;gBAAA,OAyBO,KAAKU,IAAL,CAAU,EAAV,CAzBP;;cAAA;gBAAA,KA2BK,KAAKC,EAAL,CAAQC,iBAAR,EA3BL;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OA4BQ,KAAKD,EAAL,CAAQE,SAAR,CAAkBC,6BAAA,CAAYC,eAAZ,GAA8BC,UAAhD,CA5BR;;cAAA;gBAAA;gBAAA,OA+BuBX,OA/BvB;;cAAA;gBA+BOY,OA/BP;;gBAiCCC,YAAA,CAAOC,OAAP,CAAeF,OAAO,CAACG,MAAvB;;gBAEMC,WAnCP,GAmCqBC,iBAAA,CAASC,gCAAT,WAChBrB,SADgB,kBAEnBe,OAAO,CAACO,KAFW,CAnCrB;gBAAA;gBAAA,OAwCuB,KAAKC,OAAL,CAAa,QAAb,EAAuBC,aAAvB,CAAqCL,WAArC,CAxCvB;;cAAA;gBAwCOM,OAxCP;;gBAyCCT,YAAA,CAAOU,OAAP,CAAeD,OAAO,CAAClB,4BAAvB,EAAqDT,YAArD,EAzCD,CA2CC;;;gBACA,sBAAeC,KAAf,KAA0B0B,OAA1B;gBAEME,UA9CP,GA8CoBP,iBAAA,CAASC,gCAAT,WACfrB,SADe,iBAElBe,OAAO,CAACO,KAFU,CA9CpB;gBAAA;gBAAA,OAmDsB,KAAKC,OAAL,CAAa,QAAb,EAAuBC,aAAvB,CAAqCG,UAArC,CAnDtB;;cAAA;gBAmDOC,MAnDP;;gBAoDCZ,YAAA,CAAOU,OAAP,CAAeE,MAAM,CAACrB,4BAAtB,EAAoDT,YAApD,EApDD,CAsDC;;;gBACA,qBAAcC,KAAd,KAAyB6B,MAAzB,CAvDD,CAwDC;;gBACA,qBAAc7B,KAAd,0CAA+B6B,MAA/B;kBAAuCC,EAAE,kBAAW9B,KAAX;gBAAzC;;cAzDD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;oKA4DA;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAEO+B,aAFP,GAEuB,KAAKC,qBAAL,CAA2BvC,gBAA3B,CAFvB;gBAAA,uCAI4BsC,aAJ5B;;gBAAA;kBAIC,oDAA0C;oBAA/BE,YAA+B;;oBACzChB,YAAA,CAAOU,OAAP,CACCM,YAAY,CAACJ,MAAb,CAAoBrB,4BADrB,EAECd,aAFD;;oBAIAuB,YAAA,CAAOU,OAAP,CAAeM,YAAY,CAACC,UAA5B,EAAwCxC,aAAxC;kBACA;gBAVF;kBAAA;gBAAA;kBAAA;gBAAA;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;8IAaA;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAEOqC,aAFP,GAEuB,KAAKC,qBAAL,CAA2BxC,eAA3B,CAFvB;gBAAA,wCAG4BuC,aAH5B;;gBAAA;kBAGC,uDAA0C;oBAA/BE,YAA+B;;oBACzChB,YAAA,CAAOU,OAAP,CACCM,YAAY,CAACJ,MAAb,CAAoBrB,4BADrB,EAECd,aAFD;;oBAIAuB,YAAA,CAAOkB,OAAP,CAAe,gBAAgBF,YAA/B;kBACA;gBATF;kBAAA;gBAAA;kBAAA;gBAAA;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;yHAYA,kBAyBCG,WAzBD,EA0BCC,eA1BD,EA2BCC,oBA3BD;QAAA;;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OA6BO,KAAKC,cAAL,EA7BP;;cAAA;gBAAA;gBAAA,OA+BO,KAAKC,KAAL,CAAW,OAAX,EAAoBC,yBAApB,CAA8C,YAA9C,CA/BP;;cAAA;gBAiCOC,OAjCP,GAiCiBN,WAAW,CAACO,GAAZ,CAAgB,UAACC,IAAD;kBAAA,OAAU,KAAI,CAACA,IAAD,CAAd;gBAAA,CAAhB,CAjCjB;gBAAA;gBAAA,OAmCO,KAAKC,UAAL,GAAkBC,EAAlB,CAAqB,0BAArB,6FAAiD;kBAAA;oBAAA;sBAAA;wBAAA;0BAAA,kCAC/C;4BACNJ,OAAO,EAAPA;0BADM,CAD+C;;wBAAA;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAAjD,GAnCP;;cAAA;gBAyCOtC,OAzCP,GAyCiB,KAAK2C,UAAL,GAAkBzC,OAAlB,CAA0B,EAA1B,CAzCjB;gBAAA;gBAAA,OA2CO,KAAK0C,YAAL,EA3CP;;cAAA;gBA6COC,YA7CP,GA6CsB,KAAKvC,EAAL,CAAQwC,WAAR,CAAoB,KAAKxC,EAAL,CAAQwC,WAAR,CAAoBC,MAApB,GAA6B,CAAjD,CA7CtB;;gBA+CClC,YAAA,CAAOU,OAAP,CACCsB,YAAY,CAACG,OAAb,CAAqBC,QADtB,oBAEYhB,eAAe,CAACc,MAF5B,oBAGEd,eAAe,CAACc,MAAhB,KAA2B,CAA3B,GAA+B,EAA/B,GAAoC,GAHtC;;gBA/CD,wCAsDwBd,eAtDxB;;gBAAA;kBAsDC,uDAAwC;oBAA7BiB,SAA6B;;oBACvCrC,YAAA,CAAOsC,WAAP,CAAmBN,YAAY,CAACG,OAAb,CAAqBI,KAAxC,EAA+CF,SAA/C;kBACA;gBAxDF;kBAAA;gBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OA0DO,KAAK5C,EAAL,CAAQE,SAAR,CAAkB0B,oBAAoB,GAAG,GAAH,GAAS,GAA/C,CA1DP;;cAAA;gBAAA;gBAAA,OA4DuBlC,OA5DvB;;cAAA;gBA4DOY,OA5DP;;gBA8DC,IAAIsB,oBAAJ,EAA0B;kBACzBrB,YAAA,CAAOC,OAAP,CAAeF,OAAO,CAACG,MAAvB;;kBACMsC,GAFmB,GAEb,KAAKjC,OAAL,CAAa,KAAb,CAFa;kBAAA,wCAGFa,eAHE;;kBAAA;oBAGzB,uDAAwC;sBAA7BiB,QAA6B;;sBACvCrC,YAAA,CAAOyC,MAAP,CAAcD,GAAG,CAACE,WAAJ,CAAgBL,QAAhB,CAAd;oBACA;kBALwB;oBAAA;kBAAA;oBAAA;kBAAA;gBAMzB,CAND,MAMO;kBACNrC,YAAA,CAAO2C,QAAP,CAAgB5C,OAAO,CAACG,MAAxB;;kBACA0C,sBAAA,CAAYC,WAAZ,CAAwB9C,OAAO,CAACG,MAAR,CAAe,CAAf,CAAxB,EAA2C,kBAA3C;gBACA;;cAvEF;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;wJA0EA,kBAGCiB,WAHD;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAKO,KAAKG,cAAL,EALP;;cAAA;gBAAA;gBAAA,OAMO,KAAKC,KAAL,CAAW,OAAX,EAAoBC,yBAApB,CAA8C,YAA9C,CANP;;cAAA;gBAQOC,OARP,GAQ2B,EAR3B;gBAAA,wCAUoBN,WAVpB;;gBAAA;kBAUC,uDAAgC;oBAArBQ,IAAqB;oBAC/BF,OAAO,CAACqB,IAAR,CAAa,KAAKnB,IAAL,CAAb;kBACA;gBAZF;kBAAA;gBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAcO,KAAKC,UAAL,GAAkBC,EAAlB,CAAqB,0BAArB,6FAAiD;kBAAA;oBAAA;sBAAA;wBAAA;0BAAA,kCAC/C;4BACNJ,OAAO,EAAPA;0BADM,CAD+C;;wBAAA;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAAjD,GAdP;;cAAA;gBAAA;gBAAA,OAoBuB,KAAKK,UAAL,GAAkBzC,OAAlB,CAA0B;kBAC/C0D,gCAAgC,EAAE;gBADa,CAA1B,CApBvB;;cAAA;gBAoBOhD,OApBP;gBAAA;gBAAA,OAwBO,KAAKiD,mCAAL,CAAyCjD,OAAzC,CAxBP;;cAAA;gBA0BCC,YAAA,CAAOiD,SAAP,CAAiB;kBAAA,OAChB7C,iBAAA,CAASC,gCAAT,CACC,kBADD,EAECN,OAAO,CAACO,KAFT,CADgB;gBAAA,CAAjB;;cA1BD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;uIAkCA,kBAQC4C,iBARD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAUO,KAAK5B,cAAL,EAVP;;cAAA;gBAAA;gBAAA,OAWO,KAAKC,KAAL,CAAW,OAAX,EAAoBC,yBAApB,CAA8C,YAA9C,CAXP;;cAAA;gBAaO2B,QAbP,GAakB;kBAChBtC,EAAE,EAAE,aADY;kBAEhBqC,iBAAiB,EAAjBA,iBAFgB;kBAGhBE,MAAM,EAAE;oBACPC,aAAa,EAAE;sBACdC,IAAI,EAAE,QADQ;sBAEdnB,OAAO,EAAE;wBACRvB,MAAM,kCACF,KAAK2C,OADH;0BAELC,SAAS,EAAE,eAFN;0BAGLC,OAAO,EAAE;wBAHJ;sBADE;oBAFK;kBADR;gBAHQ,CAblB;gBAAA;gBAAA,OA8BO,KAAK7B,UAAL,GAAkBC,EAAlB,CAAqB,0BAArB,6FAAiD;kBAAA;oBAAA;sBAAA;wBAAA;0BAAA,kCAC/C;4BACNJ,OAAO,EAAE,CAAC0B,QAAD;0BADH,CAD+C;;wBAAA;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAAjD,GA9BP;;cAAA;gBAAA;gBAAA,OAoCuB,KAAKrB,UAAL,GAAkBzC,OAAlB,CAA0B;kBAC/C0D,gCAAgC,EAAE;gBADa,CAA1B,CApCvB;;cAAA;gBAoCOhD,OApCP;gBAwCO2D,eAxCP,GAwCyBtD,iBAAA,CAASC,gCAAT,CACvB,uBADuB,EAEvBN,OAAO,CAACO,KAFe,CAxCzB;gBAAA;gBAAA,OA6C2B,KAAKC,OAAL,CAAa,QAAb,EAAuBC,aAAvB,CACzBkD,eADyB,CA7C3B;;cAAA;gBA6COC,WA7CP;;gBAiDC3D,YAAA,CAAO4D,WAAP,CAAmBD,WAAW,CAACT,iBAA/B,EAAkDA,iBAAlD;;gBAjDD;gBAAA,OAmDO,KAAKF,mCAAL,CAAyCjD,OAAzC,CAnDP;;cAAA;gBAAA;gBAAA,OAoDO,KAAK8D,0CAAL,CAAgD9D,OAAhD,CApDP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;wJAuDA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKuB,cAAL,EAFP;;cAAA;gBAAA;gBAAA,OAIO,KAAKlC,MAAL,CAAY,QAAZ,EAAsB,QAAtB,EAAgCC,OAAhC,CAAwC;kBAC7CC,YAAY,EAAE,2BAD+B;kBAE7CT,UAAU,EAAE,eAFiC;kBAG7CG,SAAS,EAAE;gBAHkC,CAAxC,CAJP;;cAAA;gBAAA;gBAAA,OAUuB,KAAK8C,UAAL,GAAkBzC,OAAlB,CAA0B;kBAC/CE,4BAA4B,EAAEd;gBADiB,CAA1B,CAVvB;;cAAA;gBAUOsB,OAVP;gBAAA;gBAAA,OAcuB,KAAK+D,mBAAL,CACrB/D,OADqB,4BAdvB;;cAAA;gBAcC,KAAKwD,OAdN;;gBAmBCvD,YAAA,CAAOU,OAAP,CAAe,KAAK6C,OAAL,CAAahE,4BAA5B,EAA0Dd,aAA1D;;cAnBD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;kIAsBA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOgF,OAFP,GAEiB7D,6BAAA,CAAYC,eAAZ,GAA8BC,UAF/C;gBAIOiE,oBAJP,GAI8B;kBAC5BlD,EAAE,EAAE,mBADwB;kBAE5B4C,OAAO,EAAPA,OAF4B;kBAG5BlE,4BAA4B,EAAE,wCAHF;kBAI5B6D,MAAM,EAAE;oBACPvC,EAAE,EAAE;sBACHyC,IAAI,EAAE,IADH;sBAEHU,UAAU,EAAE;oBAFT,CADG;oBAKPC,QAAQ,EAAE;sBACTX,IAAI,EAAE,IADG;sBAETU,UAAU,EAAE;oBAFH,CALH;oBASPE,MAAM,EAAE;sBACPZ,IAAI,EAAE,KADC;sBAEPa,OAAO,EAAE,IAFF;sBAGPhC,OAAO,EAAE;wBACRiC,SAAS,EAAE;sBADH;oBAHF;kBATD;gBAJoB,CAJ9B;gBA2BOC,WA3BP,GA2BqB;kBACnBxD,EAAE,EAAE,WADe;kBAEnB4C,OAAO,EAAPA,OAFmB;kBAGnBlE,4BAA4B,EAAE,wCAHX;kBAInB6D,MAAM,EAAE;oBACPvC,EAAE,EAAE;sBACHyC,IAAI,EAAE,IADH;sBAEHU,UAAU,EAAE;oBAFT,CADG;oBAKPM,WAAW,EAAE;sBACZhB,IAAI,EAAE;oBADM,CALN;oBAQPS,oBAAoB,EAAE;sBACrBT,IAAI,EAAE,QADe;sBAErBnB,OAAO,EAAE;wBACRoC,QAAQ,EAAE;0BACTd,OAAO,EAAPA,OADS;0BAET5C,EAAE,EAAE;wBAFK;sBADF;oBAFY;kBARf;gBAJW,CA3BrB;gBAmDO2D,WAnDP,GAmDqB,IAAIC,qCAAJ,CAA8B,WAA9B,CAnDrB;gBAqDO1E,OArDP,GAqDiByE,WAAW,CAACE,kBAAZ,CAA+B;kBAC9C;kBACAC,SAAS,EAAE,CAACZ,oBAAD,EAAuBM,WAAvB;gBAFmC,CAA/B,CArDjB;;gBA0DCrE,YAAA,CAAOC,OAAP,kBAEEF,OAAO,CAAC6E,IAAR,CAAa,UAACC,CAAD;kBAAA,OAAOA,CAAC,CAAChE,EAAF,KAAS,WAAhB;gBAAA,CAAb,CAFF,2EAEE,cAA2CD,MAA3C,CAAkDwC,MAFpD,oFAEE,sBACGW,oBAHL,qFAEE,uBACyB5B,OAH3B,qFACC,uBAGG2C,SAJJ,qFACC,uBAGe,CAHf,CADD,2DACC,uBAGmBvF,4BAJpB;;cA1DD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;mIAkEA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAGO,KAAKgC,KAAL,CAAW,OAAX,EAAoBC,yBAApB,CAA8C,YAA9C,CAHP;;cAAA;gBAKO+B,OALP,GAKiB;kBACf1C,EAAE,EAAE,mBADW;kBAEf2C,SAAS,EAAE,WAFI;kBAGfC,OAAO,EAAE7D,6BAAA,CAAYC,eAAZ,GAA8BkF,QAHxB;kBAIfxF,4BAA4B,EAAE,wCAJf;kBAKf2D,iBAAiB,EAAE,CAAC,0BAAD,CALJ;kBAMfE,MAAM,EAAE;oBACPvC,EAAE,EAAE;sBACHyC,IAAI,EAAE,IADH;sBAEHU,UAAU,EAAE;oBAFT,CADG;oBAKPC,QAAQ,EAAE;sBACTX,IAAI,EAAE,IADG;sBAETU,UAAU,EAAE;oBAFH,CALH;oBASPE,MAAM,EAAE;sBACPZ,IAAI,EAAE,KADC;sBAEPa,OAAO,EAAE,IAFF;sBAGPhC,OAAO,EAAE;wBACRiC,SAAS,EAAE;sBADH;oBAHF;kBATD;gBANO,CALjB;gBA8BOY,OA9BP,GA8BiB;kBACfnE,EAAE,EAAE,gBADW;kBAEf4C,OAAO,EAAE7D,6BAAA,CAAYC,eAAZ,GAA8BkF,QAFxB;kBAGf3B,MAAM,EAAE;oBACPvC,EAAE,EAAE;sBACHyC,IAAI,EAAE,IADH;sBAEHU,UAAU,EAAE;oBAFT,CADG;oBAKPC,QAAQ,EAAE;sBACTX,IAAI,EAAE,IADG;sBAETU,UAAU,EAAE;oBAFH,CALH;oBASPE,MAAM,EAAE;sBACPZ,IAAI,EAAE,KADC;sBAEPa,OAAO,EAAE,IAFF;sBAGPhC,OAAO,EAAE;wBACRiC,SAAS,EAAE;sBADH;oBAHF;kBATD;gBAHO,CA9BjB;gBAAA;gBAAA,OAoDO,KAAKxC,UAAL,GAAkBC,EAAlB,CAAqB,0BAArB,6FAAiD;kBAAA;oBAAA;sBAAA;wBAAA;0BAAA,mCAC/C;4BACNJ,OAAO,EAAE,CAAC8B,OAAD,EAAUyB,OAAV;0BADH,CAD+C;;wBAAA;wBAAA;0BAAA;sBAAA;oBAAA;kBAAA;gBAAA,CAAjD,GApDP;;cAAA;gBAAA;gBAAA,OA0DuB,KAAKlD,UAAL,GAAkBzC,OAAlB,CAA0B;kBAC/C0D,gCAAgC,EAAE;gBADa,CAA1B,CA1DvB;;cAAA;gBA0DOhD,OA1DP;;gBA8DCC,YAAA,CAAOC,OAAP,CAAeF,OAAO,CAACG,MAAvB;;gBAEM+E,eAhEP,GAgEyB7E,iBAAA,CAASC,gCAAT,CACvB,kBADuB,EAEvBN,OAAO,CAACO,KAFe,CAhEzB;gBAAA;gBAAA,OAqEO,KAAKC,OAAL,CAAa,aAAb,EAA4B2E,KAA5B,CAAkCD,eAAlC,CArEP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAwEA,sBAA4B;MAC3B,OAAO,KAAK7F,MAAL,CAAY,QAAZ,EAAsB,MAAtB,EAA8B;QACpC+F,eAAe,EAAE;UAChB,gBAAgB;QADA;MADmB,CAA9B,CAAP;IAKA;;;;+GAED,mBACCpF,OADD,EAECqF,QAFD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAIOzE,UAJP,GAIoBP,iBAAA,CAASC,gCAAT,CAClB+E,QADkB,EAElBrF,OAAO,CAACO,KAFU,CAJpB;gBAAA;gBAAA,OASc,KAAKC,OAAL,CAAa,QAAb,EAAuBC,aAAvB,CAAqCG,UAArC,CATd;;cAAA;gBAAA;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;+HAYA,mBACCZ,OADD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAGCC,YAAA,CAAOC,OAAP,CAAeF,OAAO,CAACG,MAAvB;;gBAEMmF,QALP,GAKkBjF,iBAAA,CAASC,gCAAT,CAChB,yBADgB,EAEhBN,OAAO,CAACO,KAFQ,CALlB;gBAUOgF,qBAVP,GAU+BC,0BAAA,CAASC,QAAT,CAAkBH,QAAlB,CAV/B;;gBAYCrF,YAAA,CAAOU,OAAP,CACC4E,qBAAqB,CAACG,IAAtB,EADD;;cAZD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAkBA,+BAAqCjC,SAArC,EAAwD;MACvD,IAAMgB,WAAW,GAAG,IAAIC,qCAAJ,CAA8BjB,SAA9B,CAApB;MACA,IAAM1C,aAAa,GAAG0D,WAAW,CAACE,kBAAZ,sCAEnBnG,eAFmB,EAED,iCAEd,KAAKmH,QAFS;QAGjBtC,MAAM,kCACF,KAAKsC,QAAL,CAActC,MADZ;UAELuC,YAAY,EAAE;YACbrC,IAAI,EAAE,QADO;YAEbnB,OAAO,EAAE;cACRvB,MAAM,EAAE;gBACPC,EAAE,EAAE,QADG;gBAEPuC,MAAM,EAAE;kBACPwC,SAAS,EAAE;oBACVtC,IAAI,EAAE;kBADI;gBADJ;cAFD;YADA;UAFI;QAFT;MAHW,GAFC,GAwBrB,KAAKuC,qBAAL,CAA2B,SAA3B,CAxBqB,CAAtB;MA0BA,OAAO/E,aAAP;IACA;;;;sIAED,mBACCf,OADD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAGOkF,eAHP,GAGyB7E,iBAAA,CAASC,gCAAT,CACvB,kBADuB,EAEvBN,OAAO,CAACO,KAFe,CAHzB;gBAQOwF,YARP,qBAQiCrH,aARjC,kBAQsD8G,0BAAA,CAASC,QAAT,CACpDP,eADoD,CARtD;;gBAWCM,0BAAA,CAASQ,SAAT,CAAmBd,eAAnB,EAAoCa,YAApC;;gBAXD;gBAAA,OAaO,KAAKvF,OAAL,CAAa,aAAb,EAA4B2E,KAA5B,CAAkCD,eAAlC,CAbP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAngBsEe,8B,8DACrC,S,uHAEA;EAChCnF,EAAE,EAAE,eAD4B;EAEhC4C,OAAO,EAAE,aAFuB;EAGhCD,SAAS,EAAE,gBAHqB;EAIhC7B,IAAI,EAAE,2BAJ0B;EAKhCpC,4BAA4B,EAAE,4BALE;EAMhC6D,MAAM,EAAE;IACP6C,UAAU,EAAE;MAAEC,KAAK,EAAE,aAAT;MAAwB5C,IAAI,EAAE,MAA9B;MAAsCU,UAAU,EAAE;IAAlD,CADL;IAEPmC,UAAU,EAAE;MACXD,KAAK,EAAE,cADI;MAEX5C,IAAI,EAAE,QAFK;MAGXU,UAAU,EAAE,IAHD;MAIXoC,IAAI,EAAE;IAJK;EAFL;AANwB,C,uHAkBA;EAChCvF,EAAE,EAAE,gBAD4B;EAEhC4C,OAAO,EAAE,aAFuB;EAGhCD,SAAS,EAAE,gBAHqB;EAIhC7B,IAAI,EAAE,2BAJ0B;EAKhCpC,4BAA4B,EAAE,8BALE;EAMhC6D,MAAM,EAAE;IACP6C,UAAU,EAAE;MAAEC,KAAK,EAAE,aAAT;MAAwB5C,IAAI,EAAE,MAA9B;MAAsCU,UAAU,EAAE;IAAlD,CADL;IAEPmC,UAAU,EAAE;MACXD,KAAK,EAAE,cADI;MAEX5C,IAAI,EAAE,QAFK;MAGXU,UAAU,EAAE,IAHD;MAIXoC,IAAI,EAAE;IAJK;EAFL;AANwB,C"}
|
|
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-utils'\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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"}
|
|
@@ -23,11 +23,11 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
23
23
|
|
|
24
24
|
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _testUtils = require("@sprucelabs/test-utils");
|
|
27
27
|
|
|
28
28
|
var _AbstractCliTest2 = _interopRequireDefault(require("../../tests/AbstractCliTest"));
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _test = _interopRequireDefault(require("../../tests/utilities/test.utility"));
|
|
31
31
|
|
|
32
32
|
var _dec, _dec2, _class;
|
|
33
33
|
|
|
@@ -35,7 +35,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
35
35
|
|
|
36
36
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
37
37
|
|
|
38
|
-
var SettingUpVscodeTest = (_dec = (0,
|
|
38
|
+
var SettingUpVscodeTest = (_dec = (0, _testUtils.test)(), _dec2 = _testUtils.test.skip('Cant run on machine without vscode installed'), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
39
39
|
(0, _inherits2["default"])(SettingUpVscodeTest, _AbstractCliTest);
|
|
40
40
|
|
|
41
41
|
var _super = _createSuper(SettingUpVscodeTest);
|
|
@@ -53,7 +53,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
53
53
|
while (1) {
|
|
54
54
|
switch (_context.prev = _context.next) {
|
|
55
55
|
case 0:
|
|
56
|
-
|
|
56
|
+
_testUtils.assert.isFunction(this.Action('vscode', 'setup').execute);
|
|
57
57
|
|
|
58
58
|
case 1:
|
|
59
59
|
case "end":
|
|
@@ -89,7 +89,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
89
89
|
return this.waitForInput();
|
|
90
90
|
|
|
91
91
|
case 5:
|
|
92
|
-
|
|
92
|
+
_testUtils.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
93
93
|
command: 'confirm',
|
|
94
94
|
options: 'Want me to setup debugging for you?'
|
|
95
95
|
});
|
|
@@ -102,7 +102,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
102
102
|
return this.waitForInput();
|
|
103
103
|
|
|
104
104
|
case 10:
|
|
105
|
-
|
|
105
|
+
_testUtils.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
106
106
|
command: 'confirm',
|
|
107
107
|
options: 'Want me to setup vscode settings for building, testing and linting on save?'
|
|
108
108
|
});
|
|
@@ -115,7 +115,7 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
115
115
|
return this.waitForInput();
|
|
116
116
|
|
|
117
117
|
case 15:
|
|
118
|
-
|
|
118
|
+
_testUtils.assert.isEqualDeep(this.ui.getLastInvocation(), {
|
|
119
119
|
command: 'confirm',
|
|
120
120
|
options: 'Want me to setup tasks for building and testing?'
|
|
121
121
|
});
|
|
@@ -130,11 +130,11 @@ var SettingUpVscodeTest = (_dec = (0, _test.test)(), _dec2 = _test.test.skip('Ca
|
|
|
130
130
|
case 20:
|
|
131
131
|
results = _context2.sent;
|
|
132
132
|
|
|
133
|
-
|
|
133
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
134
134
|
|
|
135
|
-
match =
|
|
135
|
+
match = _test["default"].assertFileByNameInGeneratedFiles('launch.json', (_results$files = results.files) !== null && _results$files !== void 0 ? _results$files : []);
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
_testUtils.assert.isEqual(match, this.resolvePath('.vscode/launch.json'));
|
|
138
138
|
|
|
139
139
|
case 24:
|
|
140
140
|
case "end":
|
|
@@ -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,IAAAC,
|
|
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-utils'\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,eAAA,G,UAKAA,eAAA,CAAKC,IAAL,CAAU,8CAAV,C;;;;;;;;;;;;;0GALD;QAAA;UAAA;YAAA;cAAA;gBAECC,iBAAA,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,iBAAA,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,iBAAA,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,iBAAA,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,iBAAA,CAAOe,OAAP,CAAeD,OAAO,CAACE,MAAvB;;gBAEMC,KArCP,GAqCeC,gBAAA,CAASC,gCAAT,CACb,aADa,oBAEbL,OAAO,CAACM,KAFK,2DAEI,EAFJ,CArCf;;gBA0CCpB,iBAAA,CAAOqB,OAAP,CAAeJ,KAAf,EAAsB,KAAKK,WAAL,CAAiB,qBAAjB,CAAtB;;cA1CD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EANgDC,4B"}
|
|
@@ -27,7 +27,7 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
|
|
|
27
27
|
|
|
28
28
|
var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _testUtils = require("@sprucelabs/test-utils");
|
|
31
31
|
|
|
32
32
|
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
33
33
|
|
|
@@ -39,7 +39,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
39
39
|
|
|
40
40
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
41
41
|
|
|
42
|
-
var SyncingEventsOnlyFromDependenciesTest = (_dec = (0,
|
|
42
|
+
var SyncingEventsOnlyFromDependenciesTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractSkillTest) {
|
|
43
43
|
(0, _inherits2["default"])(SyncingEventsOnlyFromDependenciesTest, _AbstractSkillTest);
|
|
44
44
|
|
|
45
45
|
var _super = _createSuper(SyncingEventsOnlyFromDependenciesTest);
|
|
@@ -78,19 +78,19 @@ var SyncingEventsOnlyFromDependenciesTest = (_dec = (0, _test.test)(), _dec2 = (
|
|
|
78
78
|
case 9:
|
|
79
79
|
results = _context.sent;
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
82
82
|
|
|
83
83
|
eventFolder = this.resolveEventFolder(skill);
|
|
84
84
|
|
|
85
|
-
|
|
85
|
+
_testUtils.assert.isFalse(_spruceSkillUtils.diskUtil.doesDirExist(eventFolder));
|
|
86
86
|
|
|
87
87
|
files = _fsExtra["default"].readdirSync(this.resolveHashSprucePath('events'));
|
|
88
88
|
|
|
89
|
-
|
|
89
|
+
_testUtils.assert.isLength(files, 2, 'The wrong number of files were generated.');
|
|
90
90
|
|
|
91
|
-
|
|
91
|
+
_testUtils.assert.isEqual(files[0], 'events.contract.ts');
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
_testUtils.assert.isEqual(files[1], 'listeners.ts');
|
|
94
94
|
|
|
95
95
|
case 17:
|
|
96
96
|
case "end":
|
|
@@ -132,21 +132,21 @@ var SyncingEventsOnlyFromDependenciesTest = (_dec = (0, _test.test)(), _dec2 = (
|
|
|
132
132
|
case 7:
|
|
133
133
|
results = _context2.sent;
|
|
134
134
|
|
|
135
|
-
|
|
135
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
136
136
|
|
|
137
137
|
eventFolder = this.resolveEventFolder(skill);
|
|
138
138
|
|
|
139
|
-
|
|
139
|
+
_testUtils.assert.isTrue(_spruceSkillUtils.diskUtil.doesDirExist(eventFolder));
|
|
140
140
|
|
|
141
141
|
files = _fsExtra["default"].readdirSync(this.resolveHashSprucePath('events'));
|
|
142
142
|
|
|
143
|
-
|
|
143
|
+
_testUtils.assert.isLength(files, 3, 'The wrong number of files were generated.');
|
|
144
144
|
|
|
145
|
-
|
|
145
|
+
_testUtils.assert.isEqual(files[0], _spruceSkillUtils.namesUtil.toCamel(skill.slug));
|
|
146
146
|
|
|
147
|
-
|
|
147
|
+
_testUtils.assert.isEqual(files[1], 'events.contract.ts');
|
|
148
148
|
|
|
149
|
-
|
|
149
|
+
_testUtils.assert.isEqual(files[2], 'listeners.ts');
|
|
150
150
|
|
|
151
151
|
case 16:
|
|
152
152
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAGqBA,qC,WAGnB,IAAAC,
|
|
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-utils'\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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"}
|
|
@@ -23,7 +23,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
23
23
|
|
|
24
24
|
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _testUtils = require("@sprucelabs/test-utils");
|
|
27
27
|
|
|
28
28
|
var _AbstractTestTest2 = _interopRequireDefault(require("../../tests/AbstractTestTest"));
|
|
29
29
|
|
|
@@ -33,7 +33,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
33
33
|
|
|
34
34
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
35
|
|
|
36
|
-
var TestReporterSettingsRememberedTest = (_dec = (0,
|
|
36
|
+
var TestReporterSettingsRememberedTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractTestTest) {
|
|
37
37
|
(0, _inherits2["default"])(TestReporterSettingsRememberedTest, _AbstractTestTest);
|
|
38
38
|
|
|
39
39
|
var _super = _createSuper(TestReporterSettingsRememberedTest);
|
|
@@ -73,9 +73,9 @@ var TestReporterSettingsRememberedTest = (_dec = (0, _test.test)(), _dec2 = (0,
|
|
|
73
73
|
meta = results.meta;
|
|
74
74
|
test = meta.test;
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
_testUtils.assert.isTruthy(test);
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
_testUtils.assert.isEqual(test.getWatchMode(), 'smart');
|
|
79
79
|
|
|
80
80
|
test.kill();
|
|
81
81
|
_context.next = 15;
|
|
@@ -121,11 +121,11 @@ var TestReporterSettingsRememberedTest = (_dec = (0, _test.test)(), _dec2 = (0,
|
|
|
121
121
|
test = meta.test;
|
|
122
122
|
settings = this.Service('settings');
|
|
123
123
|
|
|
124
|
-
|
|
124
|
+
_testUtils.assert.isUndefined(settings.get('test.watchMode'));
|
|
125
125
|
|
|
126
126
|
test.setWatchMode('smart');
|
|
127
127
|
|
|
128
|
-
|
|
128
|
+
_testUtils.assert.isEqual(test.getWatchMode(), 'smart');
|
|
129
129
|
|
|
130
130
|
test.kill();
|
|
131
131
|
_context2.next = 15;
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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-utils'\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,eAAA,G,UAGA,IAAAA,eAAA,G,UAyBA,IAAAA,eAAA,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,iBAAA,CAAOC,QAAP,CAAgBd,IAAhB;;gBAEAa,iBAAA,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,iBAAA,CAAOM,WAAP,CAAmBhB,QAAQ,CAACiB,GAAT,CAAa,gBAAb,CAAnB;;gBAEApB,IAAI,CAACqB,YAAL,CAAkB,OAAlB;;gBAEAR,iBAAA,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"}
|
|
@@ -25,13 +25,13 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
|
|
|
25
25
|
|
|
26
26
|
var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _testUtils = require("@sprucelabs/test-utils");
|
|
29
29
|
|
|
30
30
|
var _findProcess = _interopRequireDefault(require("find-process"));
|
|
31
31
|
|
|
32
32
|
var _AbstractCliTest2 = _interopRequireDefault(require("../../tests/AbstractCliTest"));
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _test = _interopRequireDefault(require("../../tests/utilities/test.utility"));
|
|
35
35
|
|
|
36
36
|
var _dec, _dec2, _dec3, _dec4, _dec5, _class;
|
|
37
37
|
|
|
@@ -39,7 +39,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
39
39
|
|
|
40
40
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
41
41
|
|
|
42
|
-
var TestingAConversationTest = (_dec = (0,
|
|
42
|
+
var TestingAConversationTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), _dec4 = (0, _testUtils.test)(), _dec5 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
43
43
|
(0, _inherits2["default"])(TestingAConversationTest, _AbstractCliTest);
|
|
44
44
|
|
|
45
45
|
var _super = _createSuper(TestingAConversationTest);
|
|
@@ -57,7 +57,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
57
57
|
while (1) {
|
|
58
58
|
switch (_context.prev = _context.next) {
|
|
59
59
|
case 0:
|
|
60
|
-
|
|
60
|
+
_testUtils.assert.isFunction(this.Action('conversation', 'test').execute);
|
|
61
61
|
|
|
62
62
|
case 1:
|
|
63
63
|
case "end":
|
|
@@ -95,13 +95,13 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
95
95
|
case 4:
|
|
96
96
|
test = _context2.sent;
|
|
97
97
|
|
|
98
|
-
|
|
98
|
+
_testUtils.assert.isTruthy(test.meta);
|
|
99
99
|
|
|
100
|
-
|
|
100
|
+
_testUtils.assert.isFunction(test.meta.kill);
|
|
101
101
|
|
|
102
|
-
|
|
102
|
+
_testUtils.assert.isNumber(test.meta.pid);
|
|
103
103
|
|
|
104
|
-
|
|
104
|
+
_testUtils.assert.isTruthy(test.meta.promise);
|
|
105
105
|
|
|
106
106
|
case 9:
|
|
107
107
|
_context2.next = 11;
|
|
@@ -152,13 +152,13 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
152
152
|
case 4:
|
|
153
153
|
test = _context3.sent;
|
|
154
154
|
|
|
155
|
-
|
|
155
|
+
_testUtils.assert.isTruthy(test.meta);
|
|
156
156
|
|
|
157
|
-
|
|
157
|
+
_testUtils.assert.isFunction(test.meta.kill);
|
|
158
158
|
|
|
159
|
-
|
|
159
|
+
_testUtils.assert.isNumber(test.meta.pid);
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
_testUtils.assert.isTruthy(test.meta.promise);
|
|
162
162
|
|
|
163
163
|
_context3.next = 11;
|
|
164
164
|
return this.wait(1000);
|
|
@@ -170,7 +170,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
170
170
|
case 13:
|
|
171
171
|
psResults = _context3.sent;
|
|
172
172
|
|
|
173
|
-
|
|
173
|
+
_testUtils.assert.isAbove(psResults.length, 0);
|
|
174
174
|
|
|
175
175
|
_context3.next = 17;
|
|
176
176
|
return test.meta.kill();
|
|
@@ -243,7 +243,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
243
243
|
case 4:
|
|
244
244
|
results = _context4.sent;
|
|
245
245
|
|
|
246
|
-
|
|
246
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
247
247
|
|
|
248
248
|
return _context4.abrupt("return", {
|
|
249
249
|
createResults: results
|
|
@@ -301,7 +301,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
301
301
|
case 6:
|
|
302
302
|
results = _context6.sent;
|
|
303
303
|
|
|
304
|
-
|
|
304
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
305
305
|
|
|
306
306
|
case 8:
|
|
307
307
|
case "end":
|
|
@@ -333,7 +333,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
333
333
|
case 2:
|
|
334
334
|
_yield$this$installAn = _context7.sent;
|
|
335
335
|
createResults = _yield$this$installAn.createResults;
|
|
336
|
-
topic =
|
|
336
|
+
topic = _test["default"].assertFileByNameInGeneratedFiles('knockKnockJoke', createResults.files);
|
|
337
337
|
|
|
338
338
|
_spruceSkillUtils.diskUtil.writeFile(topic, 'throw new Error("whaaa")');
|
|
339
339
|
|
|
@@ -346,7 +346,7 @@ var TestingAConversationTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test
|
|
|
346
346
|
case 9:
|
|
347
347
|
results = _context7.sent;
|
|
348
348
|
|
|
349
|
-
|
|
349
|
+
_testUtils.assert.isArray(results.errors);
|
|
350
350
|
|
|
351
351
|
case 11:
|
|
352
352
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;IAEqBA,wB,WACnB,IAAAC,
|
|
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-utils'\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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"}
|