@sprucelabs/spruce-cli 17.1.40 → 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 +8 -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/package.json +5 -5
- 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
|
@@ -25,7 +25,7 @@ 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 _AbstractCliTest2 = _interopRequireDefault(require("../../../tests/AbstractCliTest"));
|
|
31
31
|
|
|
@@ -41,7 +41,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
41
41
|
|
|
42
42
|
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; } }
|
|
43
43
|
|
|
44
|
-
var WatchingForChangesTest = (_dec = (0,
|
|
44
|
+
var WatchingForChangesTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), _dec4 = (0, _testUtils.test)('does not watch src', 'src', false), _dec5 = (0, _testUtils.test)('does watch build', 'build', true), _dec6 = (0, _testUtils.test)('fires once with one change', 1), _dec7 = (0, _testUtils.test)('fires once with two changes', 2), _dec8 = (0, _testUtils.test)('fires once with three changes', 3), _dec9 = (0, _testUtils.test)(), _dec10 = (0, _testUtils.test)(), _dec11 = (0, _testUtils.test)(), _dec12 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
45
45
|
(0, _inherits2["default"])(WatchingForChangesTest, _AbstractCliTest);
|
|
46
46
|
|
|
47
47
|
var _super = _createSuper(WatchingForChangesTest);
|
|
@@ -100,7 +100,7 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
100
100
|
case 5:
|
|
101
101
|
isWatching = _context2.sent;
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
_testUtils.assert.isFalse(isWatching);
|
|
104
104
|
|
|
105
105
|
case 7:
|
|
106
106
|
case "end":
|
|
@@ -138,7 +138,7 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
138
138
|
case 7:
|
|
139
139
|
isWatching = _context3.sent;
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
_testUtils.assert.isTrue(isWatching);
|
|
142
142
|
|
|
143
143
|
_context3.next = 11;
|
|
144
144
|
return feature.stopWatching();
|
|
@@ -150,7 +150,7 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
150
150
|
case 13:
|
|
151
151
|
isWatching = _context3.sent;
|
|
152
152
|
|
|
153
|
-
|
|
153
|
+
_testUtils.assert.isFalse(isWatching);
|
|
154
154
|
|
|
155
155
|
case 15:
|
|
156
156
|
case "end":
|
|
@@ -196,7 +196,7 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
196
196
|
return this.stopWatching(feature);
|
|
197
197
|
|
|
198
198
|
case 11:
|
|
199
|
-
|
|
199
|
+
_testUtils.assert.isEqual(fireCount, shouldFire ? 1 : 0);
|
|
200
200
|
|
|
201
201
|
case 12:
|
|
202
202
|
case "end":
|
|
@@ -263,14 +263,14 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
263
263
|
return this.stopWatching(feature);
|
|
264
264
|
|
|
265
265
|
case 14:
|
|
266
|
-
|
|
266
|
+
_testUtils.assert.isEqual(fireCount, 1);
|
|
267
267
|
|
|
268
|
-
|
|
268
|
+
_testUtils.assert.isTrue(payloadChanges.length >= changeCount);
|
|
269
269
|
|
|
270
270
|
for (_i = 0, _expectedChanges = expectedChanges; _i < _expectedChanges.length; _i++) {
|
|
271
271
|
expected = _expectedChanges[_i];
|
|
272
272
|
|
|
273
|
-
|
|
273
|
+
_testUtils.assert.doesInclude(payloadChanges, expected);
|
|
274
274
|
}
|
|
275
275
|
|
|
276
276
|
case 17:
|
|
@@ -388,7 +388,7 @@ var WatchingForChangesTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(
|
|
|
388
388
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
389
389
|
e = _step.value;
|
|
390
390
|
|
|
391
|
-
|
|
391
|
+
_testUtils.assert.doesInclude(payloadChanges, e);
|
|
392
392
|
}
|
|
393
393
|
} catch (err) {
|
|
394
394
|
_iterator.e(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WatchingForChanges.test.js","names":["WatchingForChangesTest","test","installWatch","assertIsFeatureInstalled","cli","getFeature","isWatching","assert","isFalse","feature","startWatching","isTrue","stopWatching","path","shouldFire","fireCount","on","diskUtil","writeFile","resolvePath","isEqual","changeCount","payloadChanges","payload","changes","createDir","cwd","expectedChanges","idx","filename","push","schemaId","version","CORE_SCHEMA_VERSION","constValue","values","action","name","length","expected","doesInclude","wait","delay","sourceDir","runner","e","watchRunStop","newDirDest","deleteDir","newFile","deleteFile","fixture","FeatureFixture","installFeatures","code","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/watchers/WatchingForChanges.test.ts"],"sourcesContent":["import { CORE_SCHEMA_VERSION, diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport WatchFeature from '../../../features/watch/WatchFeature'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport { GeneratedFileOrDir } from '../../../types/cli.types'\n\nexport default class WatchingForChangesTest extends AbstractCliTest {\n\t@test()\n\tprotected static async installsWatchers() {\n\t\tawait this.installWatch()\n\t\tawait this.assertIsFeatureInstalled('watch')\n\t}\n\n\t@test()\n\tprotected static async notWatchingAtTheStart() {\n\t\tconst cli = await this.installWatch()\n\t\tconst isWatching = await cli.getFeature('watch').isWatching()\n\t\tassert.isFalse(isWatching)\n\t}\n\n\t@test()\n\tprotected static async canStartAndStopWatch() {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tvoid feature.startWatching()\n\n\t\tlet isWatching = await feature.isWatching()\n\t\tassert.isTrue(isWatching)\n\n\t\tawait feature.stopWatching()\n\n\t\tisWatching = await feature.isWatching()\n\t\tassert.isFalse(isWatching)\n\t}\n\n\t@test('does not watch src', 'src', false)\n\t@test('does watch build', 'build', true)\n\tprotected static async watchesInCorrectDir(\n\t\tpath: string,\n\t\tshouldFire: boolean\n\t) {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tawait this.startWatching(feature)\n\n\t\tlet fireCount = 0\n\n\t\tvoid cli.on('watcher.did-detect-change', () => {\n\t\t\tfireCount++\n\t\t})\n\n\t\tdiskUtil.writeFile(\n\t\t\tthis.resolvePath(path, 'test.ts'),\n\t\t\t'console.log(\"hello world\")'\n\t\t)\n\n\t\tawait this.stopWatching(feature)\n\n\t\tassert.isEqual(fireCount, shouldFire ? 1 : 0)\n\t}\n\n\t@test('fires once with one change', 1)\n\t@test('fires once with two changes', 2)\n\t@test('fires once with three changes', 3)\n\tprotected static async watcherFiresEventWhenASrcFileChanges(\n\t\tchangeCount: number\n\t) {\n\t\tlet fireCount = 0\n\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\t\tlet payloadChanges: any = {}\n\n\t\tvoid cli.on('watcher.did-detect-change', (payload) => {\n\t\t\tfireCount++\n\t\t\tpayloadChanges = payload.changes\n\t\t})\n\n\t\tdiskUtil.createDir(this.cwd)\n\n\t\tawait this.startWatching(feature)\n\n\t\tconst expectedChanges: any[] = []\n\t\tfor (let idx = 0; idx < changeCount; idx++) {\n\t\t\tconst filename = `index-${idx}.js`\n\t\t\tdiskUtil.writeFile(\n\t\t\t\tthis.resolvePath('build', filename),\n\t\t\t\t'console.log(\"hello world\")'\n\t\t\t)\n\t\t\texpectedChanges.push({\n\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\tversion: CORE_SCHEMA_VERSION.constValue,\n\t\t\t\tvalues: {\n\t\t\t\t\taction: 'generated',\n\t\t\t\t\tpath: this.resolvePath('build', filename),\n\t\t\t\t\tname: filename,\n\t\t\t\t},\n\t\t\t})\n\t\t}\n\n\t\tawait this.stopWatching(feature)\n\n\t\tassert.isEqual(fireCount, 1)\n\t\tassert.isTrue(payloadChanges.length >= changeCount)\n\n\t\tfor (const expected of expectedChanges) {\n\t\t\tassert.doesInclude(payloadChanges, expected)\n\t\t}\n\t}\n\n\tprivate static async stopWatching(feature: WatchFeature) {\n\t\tawait this.wait(3000)\n\t\tawait feature.stopWatching()\n\t\tawait this.wait(500)\n\t}\n\n\tprivate static async startWatching(feature: WatchFeature) {\n\t\tvoid feature.startWatching({ delay: 2000, sourceDir: '.' })\n\t\tawait this.wait(500)\n\t}\n\n\tprotected static async watchRunStop(\n\t\trunner: () => Promise<GeneratedFileOrDir[]>\n\t) {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tlet payloadChanges: any = {}\n\t\tvoid cli.on('watcher.did-detect-change', (payload) => {\n\t\t\tpayloadChanges = payload.changes\n\t\t})\n\n\t\tawait this.startWatching(feature)\n\n\t\tconst expected: GeneratedFileOrDir[] = await runner()\n\n\t\tawait this.stopWatching(feature)\n\n\t\tfor (const e of expected) {\n\t\t\tassert.doesInclude(payloadChanges, e)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async canTrackAddingDir() {\n\t\tawait this.watchRunStop(async () => {\n\t\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\t\tdiskUtil.createDir(newDirDest)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedDir',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'generated',\n\t\t\t\t\t\tname: 'new_dir',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingDir() {\n\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\tdiskUtil.createDir(newDirDest)\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteDir(newDirDest)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedDir',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'new_dir',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingFile() {\n\t\tconst newFile = this.resolvePath('build', 'test.js')\n\t\tdiskUtil.writeFile(newFile, 'test')\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteFile(newFile)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'test.js',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'test.js'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingFileInDirectory() {\n\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\tdiskUtil.createDir(newDirDest)\n\n\t\tconst newFile = this.resolvePath('build', 'new_dir', 'test.js')\n\t\tdiskUtil.writeFile(newFile, 'test')\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteFile(newFile)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'test.js',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir', 'test.js'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\n\t\t\treturn expected\n\t\t})\n\t}\n\n\tprivate static async installWatch() {\n\t\tconst fixture = this.FeatureFixture()\n\t\tconst cli = await fixture.installFeatures([{ code: 'watch' }])\n\t\treturn cli\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WatchingForChanges.test.js","names":["WatchingForChangesTest","test","installWatch","assertIsFeatureInstalled","cli","getFeature","isWatching","assert","isFalse","feature","startWatching","isTrue","stopWatching","path","shouldFire","fireCount","on","diskUtil","writeFile","resolvePath","isEqual","changeCount","payloadChanges","payload","changes","createDir","cwd","expectedChanges","idx","filename","push","schemaId","version","CORE_SCHEMA_VERSION","constValue","values","action","name","length","expected","doesInclude","wait","delay","sourceDir","runner","e","watchRunStop","newDirDest","deleteDir","newFile","deleteFile","fixture","FeatureFixture","installFeatures","code","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/watchers/WatchingForChanges.test.ts"],"sourcesContent":["import { CORE_SCHEMA_VERSION, diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport WatchFeature from '../../../features/watch/WatchFeature'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport { GeneratedFileOrDir } from '../../../types/cli.types'\n\nexport default class WatchingForChangesTest extends AbstractCliTest {\n\t@test()\n\tprotected static async installsWatchers() {\n\t\tawait this.installWatch()\n\t\tawait this.assertIsFeatureInstalled('watch')\n\t}\n\n\t@test()\n\tprotected static async notWatchingAtTheStart() {\n\t\tconst cli = await this.installWatch()\n\t\tconst isWatching = await cli.getFeature('watch').isWatching()\n\t\tassert.isFalse(isWatching)\n\t}\n\n\t@test()\n\tprotected static async canStartAndStopWatch() {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tvoid feature.startWatching()\n\n\t\tlet isWatching = await feature.isWatching()\n\t\tassert.isTrue(isWatching)\n\n\t\tawait feature.stopWatching()\n\n\t\tisWatching = await feature.isWatching()\n\t\tassert.isFalse(isWatching)\n\t}\n\n\t@test('does not watch src', 'src', false)\n\t@test('does watch build', 'build', true)\n\tprotected static async watchesInCorrectDir(\n\t\tpath: string,\n\t\tshouldFire: boolean\n\t) {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tawait this.startWatching(feature)\n\n\t\tlet fireCount = 0\n\n\t\tvoid cli.on('watcher.did-detect-change', () => {\n\t\t\tfireCount++\n\t\t})\n\n\t\tdiskUtil.writeFile(\n\t\t\tthis.resolvePath(path, 'test.ts'),\n\t\t\t'console.log(\"hello world\")'\n\t\t)\n\n\t\tawait this.stopWatching(feature)\n\n\t\tassert.isEqual(fireCount, shouldFire ? 1 : 0)\n\t}\n\n\t@test('fires once with one change', 1)\n\t@test('fires once with two changes', 2)\n\t@test('fires once with three changes', 3)\n\tprotected static async watcherFiresEventWhenASrcFileChanges(\n\t\tchangeCount: number\n\t) {\n\t\tlet fireCount = 0\n\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\t\tlet payloadChanges: any = {}\n\n\t\tvoid cli.on('watcher.did-detect-change', (payload) => {\n\t\t\tfireCount++\n\t\t\tpayloadChanges = payload.changes\n\t\t})\n\n\t\tdiskUtil.createDir(this.cwd)\n\n\t\tawait this.startWatching(feature)\n\n\t\tconst expectedChanges: any[] = []\n\t\tfor (let idx = 0; idx < changeCount; idx++) {\n\t\t\tconst filename = `index-${idx}.js`\n\t\t\tdiskUtil.writeFile(\n\t\t\t\tthis.resolvePath('build', filename),\n\t\t\t\t'console.log(\"hello world\")'\n\t\t\t)\n\t\t\texpectedChanges.push({\n\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\tversion: CORE_SCHEMA_VERSION.constValue,\n\t\t\t\tvalues: {\n\t\t\t\t\taction: 'generated',\n\t\t\t\t\tpath: this.resolvePath('build', filename),\n\t\t\t\t\tname: filename,\n\t\t\t\t},\n\t\t\t})\n\t\t}\n\n\t\tawait this.stopWatching(feature)\n\n\t\tassert.isEqual(fireCount, 1)\n\t\tassert.isTrue(payloadChanges.length >= changeCount)\n\n\t\tfor (const expected of expectedChanges) {\n\t\t\tassert.doesInclude(payloadChanges, expected)\n\t\t}\n\t}\n\n\tprivate static async stopWatching(feature: WatchFeature) {\n\t\tawait this.wait(3000)\n\t\tawait feature.stopWatching()\n\t\tawait this.wait(500)\n\t}\n\n\tprivate static async startWatching(feature: WatchFeature) {\n\t\tvoid feature.startWatching({ delay: 2000, sourceDir: '.' })\n\t\tawait this.wait(500)\n\t}\n\n\tprotected static async watchRunStop(\n\t\trunner: () => Promise<GeneratedFileOrDir[]>\n\t) {\n\t\tconst cli = await this.installWatch()\n\t\tconst feature = cli.getFeature('watch')\n\n\t\tlet payloadChanges: any = {}\n\t\tvoid cli.on('watcher.did-detect-change', (payload) => {\n\t\t\tpayloadChanges = payload.changes\n\t\t})\n\n\t\tawait this.startWatching(feature)\n\n\t\tconst expected: GeneratedFileOrDir[] = await runner()\n\n\t\tawait this.stopWatching(feature)\n\n\t\tfor (const e of expected) {\n\t\t\tassert.doesInclude(payloadChanges, e)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async canTrackAddingDir() {\n\t\tawait this.watchRunStop(async () => {\n\t\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\t\tdiskUtil.createDir(newDirDest)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedDir',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'generated',\n\t\t\t\t\t\tname: 'new_dir',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingDir() {\n\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\tdiskUtil.createDir(newDirDest)\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteDir(newDirDest)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedDir',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'new_dir',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingFile() {\n\t\tconst newFile = this.resolvePath('build', 'test.js')\n\t\tdiskUtil.writeFile(newFile, 'test')\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteFile(newFile)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'test.js',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'test.js'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\t\t\treturn expected\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async canTrackDeletingFileInDirectory() {\n\t\tconst newDirDest = this.resolvePath('build', 'new_dir')\n\t\tdiskUtil.createDir(newDirDest)\n\n\t\tconst newFile = this.resolvePath('build', 'new_dir', 'test.js')\n\t\tdiskUtil.writeFile(newFile, 'test')\n\n\t\tawait this.watchRunStop(async () => {\n\t\t\tdiskUtil.deleteFile(newFile)\n\n\t\t\tconst expected: GeneratedFileOrDir[] = [\n\t\t\t\t{\n\t\t\t\t\tschemaId: 'generatedFile',\n\t\t\t\t\tversion: 'v2020_07_22',\n\t\t\t\t\tvalues: {\n\t\t\t\t\t\taction: 'deleted',\n\t\t\t\t\t\tname: 'test.js',\n\t\t\t\t\t\tpath: this.resolvePath('build', 'new_dir', 'test.js'),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]\n\n\t\t\treturn expected\n\t\t})\n\t}\n\n\tprivate static async installWatch() {\n\t\tconst fixture = this.FeatureFixture()\n\t\tconst cli = await fixture.installFeatures([{ code: 'watch' }])\n\t\treturn cli\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -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 _SchemaStore = require("../../features/schema/stores/SchemaStore");
|
|
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 FeatureCommandExecuterTest = (_dec = (0,
|
|
42
|
+
var FeatureCommandExecuterTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractSchemaTest) {
|
|
43
43
|
(0, _inherits2["default"])(FeatureCommandExecuterTest, _AbstractSchemaTest);
|
|
44
44
|
|
|
45
45
|
var _super = _createSuper(FeatureCommandExecuterTest);
|
|
@@ -105,7 +105,7 @@ var FeatureCommandExecuterTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.te
|
|
|
105
105
|
case 23:
|
|
106
106
|
isInstalled = _context.sent;
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
_testUtils.assert.isFalse(isInstalled);
|
|
109
109
|
|
|
110
110
|
_context.next = 27;
|
|
111
111
|
return promise;
|
|
@@ -134,7 +134,7 @@ var FeatureCommandExecuterTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.te
|
|
|
134
134
|
case 31:
|
|
135
135
|
isInstalled = _context.sent;
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
_testUtils.assert.isTrue(isInstalled);
|
|
138
138
|
|
|
139
139
|
case 33:
|
|
140
140
|
case "end":
|
|
@@ -233,7 +233,7 @@ var FeatureCommandExecuterTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.te
|
|
|
233
233
|
case 29:
|
|
234
234
|
isInstalled = _context2.sent;
|
|
235
235
|
|
|
236
|
-
|
|
236
|
+
_testUtils.assert.isTrue(isInstalled);
|
|
237
237
|
|
|
238
238
|
case 31:
|
|
239
239
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionExecuter.test.js","names":["FeatureCommandExecuterTest","test","executer","Action","shouldAutoHandleDependencies","promise","execute","waitForInput","ui","sendInput","wait","installer","getFeatureInstaller","isInstalled","assert","isFalse","assertHealthySkillNamed","skill","status","schema","schemas","generateExpectedHealthSchemas","Object","values","coreSchemas","id","name","namespace","version","versionUtil","generateVersion","constValue","isTrue","error","errorSchemas","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter.test.ts"],"sourcesContent":["import { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport { coreSchemas } from '../../features/schema/stores/SchemaStore'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nexport default class FeatureCommandExecuterTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async shouldInstallDependentFeatures() {\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('yes')\n\n\t\tawait this.ui.sendInput('Skill with 1 dependency')\n\n\t\tawait this.ui.sendInput('A skill that is so good')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.ui.sendInput('Restaurant')\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.wait(100)\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tlet isInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isFalse(isInstalled)\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('skill-with-1-dependency', {\n\t\t\tskill: { status: 'passed' },\n\t\t\tschema: {\n\t\t\t\tstatus: 'passed',\n\t\t\t\tschemas: this.generateExpectedHealthSchemas([\n\t\t\t\t\t...Object.values(coreSchemas),\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'restaurant',\n\t\t\t\t\t\tname: 'Restaurant',\n\t\t\t\t\t\tnamespace: 'SkillWith1Dependency',\n\t\t\t\t\t\tversion: versionUtil.generateVersion().constValue,\n\t\t\t\t\t},\n\t\t\t\t]),\n\t\t\t},\n\t\t})\n\n\t\tisInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isTrue(isInstalled)\n\t}\n\n\t@test()\n\tprotected static async shouldInstallTwoDependentFeatures() {\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('yes')\n\n\t\tawait this.ui.sendInput('My skill with 2 dependent features')\n\n\t\tawait this.ui.sendInput('A skill that is so good')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.ui.sendInput('Test error')\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('my-skill-with-2-dependent-features', {\n\t\t\tskill: { status: 'passed' },\n\t\t\tschema: {\n\t\t\t\tstatus: 'passed',\n\t\t\t\tschemas: [],\n\t\t\t},\n\t\t\terror: {\n\t\t\t\terrorSchemas: [{ name: 'Test error', id: 'testError' }],\n\t\t\t\tstatus: 'passed',\n\t\t\t},\n\t\t})\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tconst isInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isTrue(isInstalled)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;IAEqBA,0B,WACnB,IAAAC,
|
|
1
|
+
{"version":3,"file":"ActionExecuter.test.js","names":["FeatureCommandExecuterTest","test","executer","Action","shouldAutoHandleDependencies","promise","execute","waitForInput","ui","sendInput","wait","installer","getFeatureInstaller","isInstalled","assert","isFalse","assertHealthySkillNamed","skill","status","schema","schemas","generateExpectedHealthSchemas","Object","values","coreSchemas","id","name","namespace","version","versionUtil","generateVersion","constValue","isTrue","error","errorSchemas","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter.test.ts"],"sourcesContent":["import { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport { coreSchemas } from '../../features/schema/stores/SchemaStore'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nexport default class FeatureCommandExecuterTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async shouldInstallDependentFeatures() {\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('yes')\n\n\t\tawait this.ui.sendInput('Skill with 1 dependency')\n\n\t\tawait this.ui.sendInput('A skill that is so good')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.ui.sendInput('Restaurant')\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.wait(100)\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tlet isInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isFalse(isInstalled)\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('skill-with-1-dependency', {\n\t\t\tskill: { status: 'passed' },\n\t\t\tschema: {\n\t\t\t\tstatus: 'passed',\n\t\t\t\tschemas: this.generateExpectedHealthSchemas([\n\t\t\t\t\t...Object.values(coreSchemas),\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'restaurant',\n\t\t\t\t\t\tname: 'Restaurant',\n\t\t\t\t\t\tnamespace: 'SkillWith1Dependency',\n\t\t\t\t\t\tversion: versionUtil.generateVersion().constValue,\n\t\t\t\t\t},\n\t\t\t\t]),\n\t\t\t},\n\t\t})\n\n\t\tisInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isTrue(isInstalled)\n\t}\n\n\t@test()\n\tprotected static async shouldInstallTwoDependentFeatures() {\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('yes')\n\n\t\tawait this.ui.sendInput('My skill with 2 dependent features')\n\n\t\tawait this.ui.sendInput('A skill that is so good')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait this.ui.sendInput('Test error')\n\n\t\tawait this.ui.sendInput('\\n')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('my-skill-with-2-dependent-features', {\n\t\t\tskill: { status: 'passed' },\n\t\t\tschema: {\n\t\t\t\tstatus: 'passed',\n\t\t\t\tschemas: [],\n\t\t\t},\n\t\t\terror: {\n\t\t\t\terrorSchemas: [{ name: 'Test error', id: 'testError' }],\n\t\t\t\tstatus: 'passed',\n\t\t\t},\n\t\t})\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tconst isInstalled = await installer.isInstalled('schema')\n\n\t\tassert.isTrue(isInstalled)\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ 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 _feature = _interopRequireDefault(require("../../features/feature.utilities"));
|
|
31
31
|
|
|
@@ -33,7 +33,7 @@ var _CommandService = _interopRequireDefault(require("../../services/CommandServ
|
|
|
33
33
|
|
|
34
34
|
var _AbstractSchemaTest2 = _interopRequireDefault(require("../../tests/AbstractSchemaTest"));
|
|
35
35
|
|
|
36
|
-
var
|
|
36
|
+
var _test = _interopRequireDefault(require("../../tests/utilities/test.utility"));
|
|
37
37
|
|
|
38
38
|
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class;
|
|
39
39
|
|
|
@@ -41,7 +41,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
41
41
|
|
|
42
42
|
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; } }
|
|
43
43
|
|
|
44
|
-
var FeatureCommandExecuterContTest = (_dec = (0,
|
|
44
|
+
var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), _dec4 = (0, _testUtils.test)(), _dec5 = (0, _testUtils.test)(), _dec6 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractSchemaTest) {
|
|
45
45
|
(0, _inherits2["default"])(FeatureCommandExecuterContTest, _AbstractSchemaTest);
|
|
46
46
|
|
|
47
47
|
var _super = _createSuper(FeatureCommandExecuterContTest);
|
|
@@ -73,15 +73,15 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
73
73
|
case 6:
|
|
74
74
|
results = _context.sent;
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
_testUtils.assert.isTruthy(results.files);
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
_testUtils.assert.isFalsy(results.errors);
|
|
79
79
|
|
|
80
80
|
pluginsDir = this.resolveHashSprucePath('features');
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
_testUtils.assert.isFalse(_spruceSkillUtils.diskUtil.doesDirExist(pluginsDir));
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
_test["default"].assertFileByNameInGeneratedFiles('myNewError.schema.ts', results.files);
|
|
85
85
|
|
|
86
86
|
case 12:
|
|
87
87
|
case "end":
|
|
@@ -136,13 +136,13 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
136
136
|
};
|
|
137
137
|
});
|
|
138
138
|
|
|
139
|
-
|
|
139
|
+
_testUtils.assert.isFalse(emittedWillEvent);
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
_testUtils.assert.isFalse(emittedDidEvent);
|
|
142
142
|
|
|
143
|
-
|
|
143
|
+
_testUtils.assert.isEqual(willExecuteHitCount, 0);
|
|
144
144
|
|
|
145
|
-
|
|
145
|
+
_testUtils.assert.isEqual(didExecuteHitCount, 0);
|
|
146
146
|
|
|
147
147
|
promise = executer.execute({});
|
|
148
148
|
_context2.next = 18;
|
|
@@ -163,15 +163,15 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
163
163
|
case 24:
|
|
164
164
|
results = _context2.sent;
|
|
165
165
|
|
|
166
|
-
|
|
166
|
+
_testUtils.assert.isEqual((_results$meta = results.meta) === null || _results$meta === void 0 ? void 0 : _results$meta.taco, 'bell');
|
|
167
167
|
|
|
168
|
-
|
|
168
|
+
_testUtils.assert.isEqual(willEventCommand, 'create.skill');
|
|
169
169
|
|
|
170
|
-
|
|
170
|
+
_testUtils.assert.isEqual(didEventCommand, 'create.skill');
|
|
171
171
|
|
|
172
|
-
|
|
172
|
+
_testUtils.assert.isEqual(willExecuteHitCount, 1);
|
|
173
173
|
|
|
174
|
-
|
|
174
|
+
_testUtils.assert.isEqual(didExecuteHitCount, 1);
|
|
175
175
|
|
|
176
176
|
case 30:
|
|
177
177
|
case "end":
|
|
@@ -215,7 +215,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
215
215
|
return this.waitForInput();
|
|
216
216
|
|
|
217
217
|
case 10:
|
|
218
|
-
|
|
218
|
+
_testUtils.assert.doesNotInclude(this.ui.getLastInvocation(), {
|
|
219
219
|
command: 'prompt',
|
|
220
220
|
options: {
|
|
221
221
|
type: 'select'
|
|
@@ -236,9 +236,9 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
236
236
|
case 17:
|
|
237
237
|
secondTimeResults = _context3.sent;
|
|
238
238
|
|
|
239
|
-
|
|
239
|
+
_testUtils.assert.isTruthy(secondTimeResults.files);
|
|
240
240
|
|
|
241
|
-
|
|
241
|
+
_test["default"].assertFileByNameInGeneratedFiles('myNewError.schema.ts', secondTimeResults.files);
|
|
242
242
|
|
|
243
243
|
case 20:
|
|
244
244
|
case "end":
|
|
@@ -276,13 +276,13 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
276
276
|
case 4:
|
|
277
277
|
results = _context4.sent;
|
|
278
278
|
|
|
279
|
-
|
|
279
|
+
_testUtils.assert.isTruthy(results.files);
|
|
280
280
|
|
|
281
|
-
|
|
281
|
+
_testUtils.assert.isTruthy(results.packagesInstalled);
|
|
282
282
|
|
|
283
|
-
|
|
283
|
+
_testUtils.assert.isAbove(results.files.length, 0);
|
|
284
284
|
|
|
285
|
-
|
|
285
|
+
_testUtils.assert.isAbove(results.packagesInstalled.length, 0);
|
|
286
286
|
|
|
287
287
|
case 9:
|
|
288
288
|
case "end":
|
|
@@ -319,9 +319,9 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
319
319
|
this.ui.reset();
|
|
320
320
|
lastQuestion = this.ui.getLastInvocation();
|
|
321
321
|
|
|
322
|
-
|
|
322
|
+
_testUtils.assert.isEqual(lastQuestion.command, 'prompt');
|
|
323
323
|
|
|
324
|
-
|
|
324
|
+
_testUtils.assert.doesInclude(lastQuestion.options.label, /install the skill feature/gi);
|
|
325
325
|
|
|
326
326
|
case 9:
|
|
327
327
|
case "end":
|
|
@@ -374,7 +374,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
374
374
|
results = _context6.sent;
|
|
375
375
|
version = _spruceSkillUtils.versionUtil.generateVersion().dirValue;
|
|
376
376
|
|
|
377
|
-
|
|
377
|
+
_test["default"].assertFileByNameInGeneratedFiles("will-boot.".concat(version, ".listener.ts"), results.files);
|
|
378
378
|
|
|
379
379
|
case 16:
|
|
380
380
|
case "end":
|
|
@@ -463,13 +463,13 @@ var FeatureCommandExecuterContTest = (_dec = (0, _test.test)(), _dec2 = (0, _tes
|
|
|
463
463
|
case 4:
|
|
464
464
|
message = this.ui.invocations[this.ui.invocations.length - 2].options.message;
|
|
465
465
|
|
|
466
|
-
|
|
466
|
+
_testUtils.assert.isTruthy(message);
|
|
467
467
|
|
|
468
|
-
|
|
468
|
+
_testUtils.assert.doesInclude(message, /2 required/gi);
|
|
469
469
|
|
|
470
|
-
|
|
470
|
+
_testUtils.assert.doesInclude(message, /1 optional/gi);
|
|
471
471
|
|
|
472
|
-
|
|
472
|
+
_testUtils.assert.doesInclude(this.ui.getLastInvocation(), {
|
|
473
473
|
command: 'prompt',
|
|
474
474
|
options: {
|
|
475
475
|
type: 'select',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionExecuter2.test.js","names":["FeatureCommandExecuterContTest","test","startBuildingNewErrorUntilOptionalDependencies","actionPromise","promise","finishBuildingUpToNamingNewError","results","assert","isTruthy","files","isFalsy","errors","pluginsDir","resolveHashSprucePath","isFalse","diskUtil","doesDirExist","testUtil","assertFileByNameInGeneratedFiles","setupMockCommands","executer","Action","shouldAutoHandleDependencies","emittedWillEvent","willEventCommand","emittedDidEvent","didEventCommand","willExecuteHitCount","didExecuteHitCount","emitter","getEmitter","on","payload","featuresUtil","generateCommand","featureCode","actionCode","meta","taco","isEqual","execute","waitForInput","ui","sendInput","doesNotInclude","getLastInvocation","command","options","type","secondTimeResults","name","description","packagesInstalled","isAbove","length","reset","lastQuestion","doesInclude","label","FeatureFixture","installCachedFeatures","version","versionUtil","generateVersion","dirValue","skillFeatureAnswer","message","invocations","choices","value","CommandService","fakeCommand","RegExp","code","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter2.test.ts"],"sourcesContent":["import { diskUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\nimport featuresUtil from '../../features/feature.utilities'\nimport {\n\tFeatureActionResponse,\n\tFeatureInstallResponse,\n} from '../../features/features.types'\nimport CommandService from '../../services/CommandService'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class FeatureCommandExecuterContTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async canSkipOptionalDependencies() {\n\t\tconst { promise: actionPromise } =\n\t\t\tawait this.startBuildingNewErrorUntilOptionalDependencies('skip')\n\n\t\tconst results = await this.finishBuildingUpToNamingNewError(actionPromise)\n\n\t\tassert.isTruthy(results.files)\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst pluginsDir = this.resolveHashSprucePath('features')\n\t\tassert.isFalse(diskUtil.doesDirExist(pluginsDir))\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'myNewError.schema.ts',\n\t\t\tresults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldEmitExecutionEvents() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\n\t\tlet emittedWillEvent = false\n\t\tlet willEventCommand = ''\n\t\tlet emittedDidEvent = false\n\t\tlet didEventCommand = ''\n\t\tlet willExecuteHitCount = 0\n\t\tlet didExecuteHitCount = 0\n\n\t\tconst emitter = this.getEmitter()\n\n\t\tvoid emitter.on('feature.will-execute', (payload) => {\n\t\t\temittedWillEvent = true\n\t\t\twillExecuteHitCount++\n\n\t\t\twillEventCommand = featuresUtil.generateCommand(\n\t\t\t\tpayload.featureCode,\n\t\t\t\tpayload.actionCode\n\t\t\t)\n\t\t\treturn {}\n\t\t})\n\n\t\tvoid emitter.on('feature.did-execute', (payload) => {\n\t\t\temittedDidEvent = true\n\t\t\tdidExecuteHitCount++\n\t\t\tdidEventCommand = featuresUtil.generateCommand(\n\t\t\t\tpayload.featureCode,\n\t\t\t\tpayload.actionCode\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tmeta: {\n\t\t\t\t\ttaco: 'bell',\n\t\t\t\t},\n\t\t\t}\n\t\t})\n\n\t\tassert.isFalse(emittedWillEvent)\n\t\tassert.isFalse(emittedDidEvent)\n\t\tassert.isEqual(willExecuteHitCount, 0)\n\t\tassert.isEqual(didExecuteHitCount, 0)\n\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new skill')\n\t\tawait this.ui.sendInput('So great!')\n\n\t\tconst results = await promise\n\n\t\tassert.isEqual(results.meta?.taco, 'bell')\n\t\tassert.isEqual(willEventCommand, 'create.skill')\n\t\tassert.isEqual(didEventCommand, 'create.skill')\n\t\tassert.isEqual(willExecuteHitCount, 1)\n\t\tassert.isEqual(didExecuteHitCount, 1)\n\t}\n\n\t@test()\n\tprotected static async canPermanentlySkipOptionalDependencies() {\n\t\tconst { promise: actionPromise } =\n\t\t\tawait this.startBuildingNewErrorUntilOptionalDependencies('alwaysSkip')\n\n\t\tawait this.finishBuildingUpToNamingNewError(actionPromise)\n\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tassert.doesNotInclude(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'prompt',\n\t\t\toptions: {\n\t\t\t\ttype: 'select',\n\t\t\t},\n\t\t})\n\n\t\tawait this.ui.sendInput('My second error')\n\t\tawait this.ui.sendInput('')\n\n\t\tconst secondTimeResults = await promise\n\n\t\tassert.isTruthy(secondTimeResults.files)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'myNewError.schema.ts',\n\t\t\tsecondTimeResults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldReturnProperSummary() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst results = await executer.execute({\n\t\t\tname: 'install summary test skill',\n\t\t\tdescription: 'go team!',\n\t\t})\n\n\t\tassert.isTruthy(results.files)\n\t\tassert.isTruthy(results.packagesInstalled)\n\n\t\tassert.isAbove(results.files.length, 0)\n\t\tassert.isAbove(results.packagesInstalled.length, 0)\n\t}\n\n\t@test()\n\tprotected static async shouldAskInstallDependentFeatures() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tvoid executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tthis.ui.reset()\n\t\tconst lastQuestion = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(lastQuestion.command, 'prompt')\n\t\tassert.doesInclude(\n\t\t\tlastQuestion.options.label,\n\t\t\t/install the skill feature/gi\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldAddListenerWithoutBreakingOnSkill() {\n\t\tthis.setupMockCommands()\n\n\t\tawait this.FeatureFixture().installCachedFeatures('schemas')\n\n\t\tconst executer = this.Action('event', 'listen', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('skill')\n\t\tawait this.ui.sendInput('will-boot')\n\n\t\tconst results = await promise\n\n\t\tconst version = versionUtil.generateVersion().dirValue\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`will-boot.${version}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\t}\n\n\tprivate static async finishBuildingUpToNamingNewError(\n\t\tactionPromise: Promise<FeatureInstallResponse & FeatureActionResponse>\n\t) {\n\t\tawait this.ui.sendInput('')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new error')\n\t\tawait this.ui.sendInput('')\n\n\t\tconst results = await actionPromise\n\t\treturn results\n\t}\n\n\tprivate static async startBuildingNewErrorUntilOptionalDependencies(\n\t\tskillFeatureAnswer: 'skip' | 'yes' | 'alwaysSkip'\n\t) {\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst message =\n\t\t\tthis.ui.invocations[this.ui.invocations.length - 2].options.message\n\t\tassert.isTruthy(message)\n\n\t\tassert.doesInclude(message, /2 required/gi)\n\t\tassert.doesInclude(message, /1 optional/gi)\n\n\t\tassert.doesInclude(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'prompt',\n\t\t\toptions: {\n\t\t\t\ttype: 'select',\n\t\t\t\toptions: {\n\t\t\t\t\tchoices: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'yes',\n\t\t\t\t\t\t\tlabel: 'Yes',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'skip',\n\t\t\t\t\t\t\tlabel: 'Skip',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'alwaysSkip',\n\t\t\t\t\t\t\tlabel: 'Always skip',\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.ui.sendInput(skillFeatureAnswer)\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new module')\n\t\tawait this.ui.sendInput('it is for testing')\n\n\t\tawait this.waitForInput()\n\n\t\treturn { promise }\n\t}\n\n\tprivate static setupMockCommands() {\n\t\tCommandService.fakeCommand(new RegExp(/npm.*?install .*?/gis), {\n\t\t\tcode: 0,\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ActionExecuter2.test.js","names":["FeatureCommandExecuterContTest","test","startBuildingNewErrorUntilOptionalDependencies","actionPromise","promise","finishBuildingUpToNamingNewError","results","assert","isTruthy","files","isFalsy","errors","pluginsDir","resolveHashSprucePath","isFalse","diskUtil","doesDirExist","testUtil","assertFileByNameInGeneratedFiles","setupMockCommands","executer","Action","shouldAutoHandleDependencies","emittedWillEvent","willEventCommand","emittedDidEvent","didEventCommand","willExecuteHitCount","didExecuteHitCount","emitter","getEmitter","on","payload","featuresUtil","generateCommand","featureCode","actionCode","meta","taco","isEqual","execute","waitForInput","ui","sendInput","doesNotInclude","getLastInvocation","command","options","type","secondTimeResults","name","description","packagesInstalled","isAbove","length","reset","lastQuestion","doesInclude","label","FeatureFixture","installCachedFeatures","version","versionUtil","generateVersion","dirValue","skillFeatureAnswer","message","invocations","choices","value","CommandService","fakeCommand","RegExp","code","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter2.test.ts"],"sourcesContent":["import { diskUtil, versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport featuresUtil from '../../features/feature.utilities'\nimport {\n\tFeatureActionResponse,\n\tFeatureInstallResponse,\n} from '../../features/features.types'\nimport CommandService from '../../services/CommandService'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\nimport testUtil from '../../tests/utilities/test.utility'\n\nexport default class FeatureCommandExecuterContTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async canSkipOptionalDependencies() {\n\t\tconst { promise: actionPromise } =\n\t\t\tawait this.startBuildingNewErrorUntilOptionalDependencies('skip')\n\n\t\tconst results = await this.finishBuildingUpToNamingNewError(actionPromise)\n\n\t\tassert.isTruthy(results.files)\n\t\tassert.isFalsy(results.errors)\n\n\t\tconst pluginsDir = this.resolveHashSprucePath('features')\n\t\tassert.isFalse(diskUtil.doesDirExist(pluginsDir))\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'myNewError.schema.ts',\n\t\t\tresults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldEmitExecutionEvents() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\n\t\tlet emittedWillEvent = false\n\t\tlet willEventCommand = ''\n\t\tlet emittedDidEvent = false\n\t\tlet didEventCommand = ''\n\t\tlet willExecuteHitCount = 0\n\t\tlet didExecuteHitCount = 0\n\n\t\tconst emitter = this.getEmitter()\n\n\t\tvoid emitter.on('feature.will-execute', (payload) => {\n\t\t\temittedWillEvent = true\n\t\t\twillExecuteHitCount++\n\n\t\t\twillEventCommand = featuresUtil.generateCommand(\n\t\t\t\tpayload.featureCode,\n\t\t\t\tpayload.actionCode\n\t\t\t)\n\t\t\treturn {}\n\t\t})\n\n\t\tvoid emitter.on('feature.did-execute', (payload) => {\n\t\t\temittedDidEvent = true\n\t\t\tdidExecuteHitCount++\n\t\t\tdidEventCommand = featuresUtil.generateCommand(\n\t\t\t\tpayload.featureCode,\n\t\t\t\tpayload.actionCode\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tmeta: {\n\t\t\t\t\ttaco: 'bell',\n\t\t\t\t},\n\t\t\t}\n\t\t})\n\n\t\tassert.isFalse(emittedWillEvent)\n\t\tassert.isFalse(emittedDidEvent)\n\t\tassert.isEqual(willExecuteHitCount, 0)\n\t\tassert.isEqual(didExecuteHitCount, 0)\n\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new skill')\n\t\tawait this.ui.sendInput('So great!')\n\n\t\tconst results = await promise\n\n\t\tassert.isEqual(results.meta?.taco, 'bell')\n\t\tassert.isEqual(willEventCommand, 'create.skill')\n\t\tassert.isEqual(didEventCommand, 'create.skill')\n\t\tassert.isEqual(willExecuteHitCount, 1)\n\t\tassert.isEqual(didExecuteHitCount, 1)\n\t}\n\n\t@test()\n\tprotected static async canPermanentlySkipOptionalDependencies() {\n\t\tconst { promise: actionPromise } =\n\t\t\tawait this.startBuildingNewErrorUntilOptionalDependencies('alwaysSkip')\n\n\t\tawait this.finishBuildingUpToNamingNewError(actionPromise)\n\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tassert.doesNotInclude(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'prompt',\n\t\t\toptions: {\n\t\t\t\ttype: 'select',\n\t\t\t},\n\t\t})\n\n\t\tawait this.ui.sendInput('My second error')\n\t\tawait this.ui.sendInput('')\n\n\t\tconst secondTimeResults = await promise\n\n\t\tassert.isTruthy(secondTimeResults.files)\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'myNewError.schema.ts',\n\t\t\tsecondTimeResults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldReturnProperSummary() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst results = await executer.execute({\n\t\t\tname: 'install summary test skill',\n\t\t\tdescription: 'go team!',\n\t\t})\n\n\t\tassert.isTruthy(results.files)\n\t\tassert.isTruthy(results.packagesInstalled)\n\n\t\tassert.isAbove(results.files.length, 0)\n\t\tassert.isAbove(results.packagesInstalled.length, 0)\n\t}\n\n\t@test()\n\tprotected static async shouldAskInstallDependentFeatures() {\n\t\tthis.setupMockCommands()\n\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tvoid executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tthis.ui.reset()\n\t\tconst lastQuestion = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(lastQuestion.command, 'prompt')\n\t\tassert.doesInclude(\n\t\t\tlastQuestion.options.label,\n\t\t\t/install the skill feature/gi\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async shouldAddListenerWithoutBreakingOnSkill() {\n\t\tthis.setupMockCommands()\n\n\t\tawait this.FeatureFixture().installCachedFeatures('schemas')\n\n\t\tconst executer = this.Action('event', 'listen', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('skill')\n\t\tawait this.ui.sendInput('will-boot')\n\n\t\tconst results = await promise\n\n\t\tconst version = versionUtil.generateVersion().dirValue\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t`will-boot.${version}.listener.ts`,\n\t\t\tresults.files\n\t\t)\n\t}\n\n\tprivate static async finishBuildingUpToNamingNewError(\n\t\tactionPromise: Promise<FeatureInstallResponse & FeatureActionResponse>\n\t) {\n\t\tawait this.ui.sendInput('')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new error')\n\t\tawait this.ui.sendInput('')\n\n\t\tconst results = await actionPromise\n\t\treturn results\n\t}\n\n\tprivate static async startBuildingNewErrorUntilOptionalDependencies(\n\t\tskillFeatureAnswer: 'skip' | 'yes' | 'alwaysSkip'\n\t) {\n\t\tconst executer = this.Action('error', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tconst message =\n\t\t\tthis.ui.invocations[this.ui.invocations.length - 2].options.message\n\t\tassert.isTruthy(message)\n\n\t\tassert.doesInclude(message, /2 required/gi)\n\t\tassert.doesInclude(message, /1 optional/gi)\n\n\t\tassert.doesInclude(this.ui.getLastInvocation(), {\n\t\t\tcommand: 'prompt',\n\t\t\toptions: {\n\t\t\t\ttype: 'select',\n\t\t\t\toptions: {\n\t\t\t\t\tchoices: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'yes',\n\t\t\t\t\t\t\tlabel: 'Yes',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'skip',\n\t\t\t\t\t\t\tlabel: 'Skip',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvalue: 'alwaysSkip',\n\t\t\t\t\t\t\tlabel: 'Always skip',\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.ui.sendInput(skillFeatureAnswer)\n\n\t\tawait this.ui.sendInput('y')\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new module')\n\t\tawait this.ui.sendInput('it is for testing')\n\n\t\tawait this.waitForInput()\n\n\t\treturn { promise }\n\t}\n\n\tprivate static setupMockCommands() {\n\t\tCommandService.fakeCommand(new RegExp(/npm.*?install .*?/gis), {\n\t\t\tcode: 0,\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -23,8 +23,6 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
23
23
|
|
|
24
24
|
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
25
25
|
|
|
26
|
-
var _test = require("@sprucelabs/test");
|
|
27
|
-
|
|
28
26
|
var _testUtils = require("@sprucelabs/test-utils");
|
|
29
27
|
|
|
30
28
|
var _AbstractSchemaTest2 = _interopRequireDefault(require("../../tests/AbstractSchemaTest"));
|
|
@@ -35,7 +33,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
35
33
|
|
|
36
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; } }
|
|
37
35
|
|
|
38
|
-
var FeatureCommandExecuterTest = (_dec = (0,
|
|
36
|
+
var FeatureCommandExecuterTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), _dec4 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractSchemaTest) {
|
|
39
37
|
(0, _inherits2["default"])(FeatureCommandExecuterTest, _AbstractSchemaTest);
|
|
40
38
|
|
|
41
39
|
var _super = _createSuper(FeatureCommandExecuterTest);
|
|
@@ -58,7 +56,7 @@ var FeatureCommandExecuterTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.te
|
|
|
58
56
|
shouldAutoHandleDependencies: true
|
|
59
57
|
});
|
|
60
58
|
|
|
61
|
-
|
|
59
|
+
_testUtils.assert.isTruthy(executer);
|
|
62
60
|
|
|
63
61
|
case 2:
|
|
64
62
|
case "end":
|
|
@@ -86,7 +84,7 @@ var FeatureCommandExecuterTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.te
|
|
|
86
84
|
switch (_context2.prev = _context2.next) {
|
|
87
85
|
case 0:
|
|
88
86
|
_context2.next = 2;
|
|
89
|
-
return
|
|
87
|
+
return _testUtils.assert.doesThrowAsync(function () {
|
|
90
88
|
return _this.Action('skill', 'create').execute({});
|
|
91
89
|
});
|
|
92
90
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionExecuter3.test.js","names":["FeatureCommandExecuterTest","test","executer","Action","shouldAutoHandleDependencies","assert","isTruthy","doesThrowAsync","execute","err","errorAssert","assertError","promise","waitForInput","ui","sendInput","assertHealthySkillNamed","description","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter3.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nexport default class FeatureCommandExecuterTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async canInstantiateExecuter() {\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tassert.isTruthy(executer)\n\t}\n\n\t@test()\n\tprotected static async throwWhenExecutingWhenMissingDependencies() {\n\t\tconst err = await assert.doesThrowAsync(() =>\n\t\t\tthis.Action('skill', 'create').execute({})\n\t\t)\n\t\terrorAssert.assertError(err, 'FEATURE_NOT_INSTALLED')\n\t}\n\n\t@test()\n\tprotected static async shouldAskAllQuestionsOfFeature() {\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new skill')\n\t\tawait this.ui.sendInput('So great!')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('my-new-skill')\n\t}\n\n\t@test()\n\tprotected static async shouldNotAskAlreadyAnsweredQuestions() {\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({ description: 'go team!' })\n\n\t\tawait this.waitForInput()\n\n\t\tvoid this.ui.sendInput('Already answered skill')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('already-answered-skill')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;
|
|
1
|
+
{"version":3,"file":"ActionExecuter3.test.js","names":["FeatureCommandExecuterTest","test","executer","Action","shouldAutoHandleDependencies","assert","isTruthy","doesThrowAsync","execute","err","errorAssert","assertError","promise","waitForInput","ui","sendInput","assertHealthySkillNamed","description","AbstractSchemaTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter3.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test-utils'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nexport default class FeatureCommandExecuterTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async canInstantiateExecuter() {\n\t\tconst executer = this.Action('schema', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tassert.isTruthy(executer)\n\t}\n\n\t@test()\n\tprotected static async throwWhenExecutingWhenMissingDependencies() {\n\t\tconst err = await assert.doesThrowAsync(() =>\n\t\t\tthis.Action('skill', 'create').execute({})\n\t\t)\n\t\terrorAssert.assertError(err, 'FEATURE_NOT_INSTALLED')\n\t}\n\n\t@test()\n\tprotected static async shouldAskAllQuestionsOfFeature() {\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tawait this.ui.sendInput('My new skill')\n\t\tawait this.ui.sendInput('So great!')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('my-new-skill')\n\t}\n\n\t@test()\n\tprotected static async shouldNotAskAlreadyAnsweredQuestions() {\n\t\tconst executer = this.Action('skill', 'create', {\n\t\t\tshouldAutoHandleDependencies: true,\n\t\t})\n\t\tconst promise = executer.execute({ description: 'go team!' })\n\n\t\tawait this.waitForInput()\n\n\t\tvoid this.ui.sendInput('Already answered skill')\n\n\t\tawait promise\n\n\t\tawait this.assertHealthySkillNamed('already-answered-skill')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;;;IAEqBA,0B,WACnB,IAAAC,eAAA,G,UAQA,IAAAA,eAAA,G,UAQA,IAAAA,eAAA,G,UAiBA,IAAAA,eAAA,G;;;;;;;;;;;;;kHAjCD;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOC,QAFP,GAEkB,KAAKC,MAAL,CAAY,QAAZ,EAAsB,QAAtB,EAAgC;kBAChDC,4BAA4B,EAAE;gBADkB,CAAhC,CAFlB;;gBAKCC,iBAAA,CAAOC,QAAP,CAAgBJ,QAAhB;;cALD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;qIAQA;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEmBG,iBAAA,CAAOE,cAAP,CAAsB;kBAAA,OACvC,KAAI,CAACJ,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BK,OAA/B,CAAuC,EAAvC,CADuC;gBAAA,CAAtB,CAFnB;;cAAA;gBAEOC,GAFP;;gBAKCC,sBAAA,CAAYC,WAAZ,CAAwBF,GAAxB,EAA6B,uBAA7B;;cALD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;0HAQA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOP,QAFP,GAEkB,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+B;kBAC/CC,4BAA4B,EAAE;gBADiB,CAA/B,CAFlB;gBAKOQ,OALP,GAKiBV,QAAQ,CAACM,OAAT,CAAiB,EAAjB,CALjB;gBAAA;gBAAA,OAOO,KAAKK,YAAL,EAPP;;cAAA;gBAAA;gBAAA,OASO,KAAKC,EAAL,CAAQC,SAAR,CAAkB,cAAlB,CATP;;cAAA;gBAAA;gBAAA,OAUO,KAAKD,EAAL,CAAQC,SAAR,CAAkB,WAAlB,CAVP;;cAAA;gBAAA;gBAAA,OAYOH,OAZP;;cAAA;gBAAA;gBAAA,OAcO,KAAKI,uBAAL,CAA6B,cAA7B,CAdP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;gIAiBA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAEOd,QAFP,GAEkB,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+B;kBAC/CC,4BAA4B,EAAE;gBADiB,CAA/B,CAFlB;gBAKOQ,OALP,GAKiBV,QAAQ,CAACM,OAAT,CAAiB;kBAAES,WAAW,EAAE;gBAAf,CAAjB,CALjB;gBAAA;gBAAA,OAOO,KAAKJ,YAAL,EAPP;;cAAA;gBASC,KAAK,KAAKC,EAAL,CAAQC,SAAR,CAAkB,wBAAlB,CAAL;gBATD;gBAAA,OAWOH,OAXP;;cAAA;gBAAA;gBAAA,OAaO,KAAKI,uBAAL,CAA6B,wBAA7B,CAbP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAlCuDE,+B"}
|
|
@@ -25,8 +25,6 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
25
25
|
|
|
26
26
|
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
27
27
|
|
|
28
|
-
var _test = require("@sprucelabs/test");
|
|
29
|
-
|
|
30
28
|
var _testUtils = require("@sprucelabs/test-utils");
|
|
31
29
|
|
|
32
30
|
var _constants = require("../../features/cache/constants");
|
|
@@ -41,7 +39,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
41
39
|
|
|
42
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; } }
|
|
43
41
|
|
|
44
|
-
var ActionExecuter4Test = (_dec = (0,
|
|
42
|
+
var ActionExecuter4Test = (_dec = (0, _testUtils.test)('throws by default with will-execute listener error 1', 'test'), _dec2 = (0, _testUtils.test)('throws by default with will-execute listener error 2', 'test2'), _dec3 = (0, _testUtils.test)('throws by default with did-execute listener error 1', 'test2', 'did'), _dec4 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
45
43
|
(0, _inherits2["default"])(ActionExecuter4Test, _AbstractCliTest);
|
|
46
44
|
|
|
47
45
|
var _super = _createSuper(ActionExecuter4Test);
|
|
@@ -106,7 +104,7 @@ var ActionExecuter4Test = (_dec = (0, _test.test)('throws by default with will-e
|
|
|
106
104
|
|
|
107
105
|
case 3:
|
|
108
106
|
_context2.next = 5;
|
|
109
|
-
return
|
|
107
|
+
return _testUtils.assert.doesThrowAsync(function () {
|
|
110
108
|
return _this.Action('cache', 'enable').execute({});
|
|
111
109
|
});
|
|
112
110
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionExecuter4.test.js","names":["ActionExecuter4Test","test","CommandService","fakeCommand","code","ENABLE_NPM_CACHE_COMMAND","msg","willDid","getEmitter","on","Error","assert","doesThrowAsync","Action","execute","err","errorAssert","assertError","AbstractCliTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter4.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport { ENABLE_NPM_CACHE_COMMAND } from '../../features/cache/constants'\nimport CommandService from '../../services/CommandService'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nexport default class ActionExecuter4Test extends AbstractCliTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\n\t\tCommandService.fakeCommand(/which docker/gis, {\n\t\t\tcode: 0,\n\t\t})\n\t\tCommandService.fakeCommand(ENABLE_NPM_CACHE_COMMAND, {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\t@test('throws by default with will-execute listener error 1', 'test')\n\t@test('throws by default with will-execute listener error 2', 'test2')\n\t@test('throws by default with did-execute listener error 1', 'test2', 'did')\n\tprotected static async canBeConfiguredToThrowWhenExecuteListenersReturnErrors(\n\t\tmsg: string,\n\t\twillDid: 'will' | 'did' = 'will'\n\t) {\n\t\tawait this.getEmitter().on(`feature.${willDid}-execute`, () => {\n\t\t\tthrow new Error(msg)\n\t\t})\n\n\t\tconst err = await assert.doesThrowAsync(() =>\n\t\t\tthis.Action('cache', 'enable').execute({})\n\t\t)\n\n\t\terrorAssert.assertError(err, 'LISTENER_ERROR', {\n\t\t\t'originalError.message': msg,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async stillReturnsIfNoErrorThrows() {\n\t\tawait this.Action('cache', 'enable').execute({})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;
|
|
1
|
+
{"version":3,"file":"ActionExecuter4.test.js","names":["ActionExecuter4Test","test","CommandService","fakeCommand","code","ENABLE_NPM_CACHE_COMMAND","msg","willDid","getEmitter","on","Error","assert","doesThrowAsync","Action","execute","err","errorAssert","assertError","AbstractCliTest"],"sources":["../../../src/__tests__/implementation/ActionExecuter4.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test-utils'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport { ENABLE_NPM_CACHE_COMMAND } from '../../features/cache/constants'\nimport CommandService from '../../services/CommandService'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nexport default class ActionExecuter4Test extends AbstractCliTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\n\t\tCommandService.fakeCommand(/which docker/gis, {\n\t\t\tcode: 0,\n\t\t})\n\t\tCommandService.fakeCommand(ENABLE_NPM_CACHE_COMMAND, {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\t@test('throws by default with will-execute listener error 1', 'test')\n\t@test('throws by default with will-execute listener error 2', 'test2')\n\t@test('throws by default with did-execute listener error 1', 'test2', 'did')\n\tprotected static async canBeConfiguredToThrowWhenExecuteListenersReturnErrors(\n\t\tmsg: string,\n\t\twillDid: 'will' | 'did' = 'will'\n\t) {\n\t\tawait this.getEmitter().on(`feature.${willDid}-execute`, () => {\n\t\t\tthrow new Error(msg)\n\t\t})\n\n\t\tconst err = await assert.doesThrowAsync(() =>\n\t\t\tthis.Action('cache', 'enable').execute({})\n\t\t)\n\n\t\terrorAssert.assertError(err, 'LISTENER_ERROR', {\n\t\t\t'originalError.message': msg,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async stillReturnsIfNoErrorThrows() {\n\t\tawait this.Action('cache', 'enable').execute({})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;;;IAEqBA,mB,WAYnB,IAAAC,eAAA,EAAK,sDAAL,EAA6D,MAA7D,C,UACA,IAAAA,eAAA,EAAK,sDAAL,EAA6D,OAA7D,C,UACA,IAAAA,eAAA,EAAK,qDAAL,EAA4D,OAA5D,EAAqE,KAArE,C,UAkBA,IAAAA,eAAA,G;;;;;;;;;;;;;sGA/BD;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;;cAAA;gBAGCC,0BAAA,CAAeC,WAAf,CAA2B,gBAA3B,EAA8C;kBAC7CC,IAAI,EAAE;gBADuC,CAA9C;;gBAGAF,0BAAA,CAAeC,WAAf,CAA2BE,mCAA3B,EAAqD;kBACpDD,IAAI,EAAE;gBAD8C,CAArD;;cAND;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;kJAWA,kBAICE,GAJD;QAAA;;QAAA;QAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAKCC,OALD,8DAK2B,MAL3B;gBAAA;gBAAA,OAOO,KAAKC,UAAL,GAAkBC,EAAlB,mBAAgCF,OAAhC,eAAmD,YAAM;kBAC9D,MAAM,IAAIG,KAAJ,CAAUJ,GAAV,CAAN;gBACA,CAFK,CAPP;;cAAA;gBAAA;gBAAA,OAWmBK,iBAAA,CAAOC,cAAP,CAAsB;kBAAA,OACvC,KAAI,CAACC,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC,EAAvC,CADuC;gBAAA,CAAtB,CAXnB;;cAAA;gBAWOC,GAXP;;gBAeCC,sBAAA,CAAYC,WAAZ,CAAwBF,GAAxB,EAA6B,gBAA7B,EAA+C;kBAC9C,yBAAyBT;gBADqB,CAA/C;;cAfD;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;uHAoBA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEO,KAAKO,MAAL,CAAY,OAAZ,EAAqB,QAArB,EAA+BC,OAA/B,CAAuC,EAAvC,CAFP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAhCgDI,4B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import AbstractSpruceTest from '@sprucelabs/test';
|
|
1
|
+
import AbstractSpruceTest from '@sprucelabs/test-utils';
|
|
2
2
|
export default class ArgParserTest extends AbstractSpruceTest {
|
|
3
3
|
protected static canGetArgParser(): Promise<void>;
|
|
4
4
|
protected static parse(args: string, expected: Record<string, string>): Promise<void>;
|