@sprucelabs/spruce-cli 18.1.8 → 18.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/build/.spruce/events/events.contract.d.ts +159 -0
- package/build/.spruce/events/events.contract.js +5 -1
- package/build/.spruce/events/events.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.d.ts +46 -0
- package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.js +57 -0
- package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.js.map +1 -0
- package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.d.ts +68 -0
- package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.js +78 -0
- package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.js.map +1 -0
- package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.d.ts +40 -0
- package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.js +51 -0
- package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.js.map +1 -0
- package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.d.ts +9 -0
- package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.js +17 -0
- package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.js.map +1 -0
- package/build/.spruce/schemas/schemas.types.d.ts +158 -55
- package/build/.spruce/schemas/schemas.types.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.d.ts +3 -0
- package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.js +70 -0
- package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.js.map +1 -0
- package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.d.ts +3 -0
- package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.js +35 -0
- package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.js.map +1 -0
- package/build/.spruce/settings.json +2 -1
- package/build/GlobalEmitter.d.ts +13 -38
- package/build/GlobalEmitter.js +3 -6
- package/build/GlobalEmitter.js.map +1 -1
- package/build/__tests__/behavioral/TestingAConversation.test.d.ts +2 -1
- package/build/__tests__/behavioral/TestingAConversation.test.js +74 -84
- package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +38 -13
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.d.ts +1 -0
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +16 -9
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.d.ts +2 -2
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +7 -7
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionPlugin.test.d.ts +6 -0
- package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js +85 -0
- package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -0
- package/build/__tests__/behavioral/permissions/PermissionStore.test.d.ts +12 -2
- package/build/__tests__/behavioral/permissions/PermissionStore.test.js +248 -36
- package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionWriter.test.d.ts +5 -0
- package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +88 -0
- package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -0
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.d.ts +15 -4
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +325 -28
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.d.ts +11 -0
- package/build/__tests__/behavioral/permissions/{AbstractPermissionsTest.js → support/AbstractPermissionsTest.js} +34 -2
- package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -0
- package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.d.ts +1 -0
- package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.js +11 -0
- package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.js.map +1 -0
- package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.d.ts +1 -0
- package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.js +17 -0
- package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.js.map +1 -0
- package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.d.ts +5 -0
- package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.js +10 -0
- package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.js.map +1 -0
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.d.ts +1 -1
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +46 -46
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/CreatingATest.test.js +2 -2
- package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +7 -3
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +2 -2
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.d.ts +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js +23 -11
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/__tests__/implementation/GlobalEmitter.test.d.ts +1 -0
- package/build/__tests__/implementation/GlobalEmitter.test.js +40 -3
- package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
- package/build/__tests__/implementation/SkillStore.test.js +3 -4
- package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
- package/build/__tests__/support/EventFaker.d.ts +5 -0
- package/build/__tests__/support/EventFaker.js +48 -0
- package/build/__tests__/support/EventFaker.js.map +1 -0
- package/build/features/AbstractAction.d.ts +1 -1
- package/build/features/AbstractAction.js.map +1 -1
- package/build/features/AbstractFeature.d.ts +3 -3
- package/build/features/AbstractFeature.js +8 -8
- package/build/features/AbstractFeature.js.map +1 -1
- package/build/features/ActionExecuter.d.ts +1 -1
- package/build/features/ActionExecuter.js +3 -4
- package/build/features/ActionExecuter.js.map +1 -1
- package/build/features/ActionFactory.d.ts +12 -5
- package/build/features/ActionFactory.js +27 -6
- package/build/features/ActionFactory.js.map +1 -1
- package/build/features/ActionQuestionAsker.d.ts +1 -1
- package/build/features/ActionQuestionAsker.js +6 -6
- package/build/features/ActionQuestionAsker.js.map +1 -1
- package/build/features/conversation/ConversationFeature.js +1 -1
- package/build/features/conversation/ConversationFeature.js.map +1 -1
- package/build/features/dependencies/DependencyFeature.js +1 -1
- package/build/features/dependencies/DependencyFeature.js.map +1 -1
- package/build/features/deploy/actions/HerokuAction.js +31 -33
- package/build/features/deploy/actions/HerokuAction.js.map +1 -1
- package/build/features/error/ErrorFeature.js +4 -4
- package/build/features/error/ErrorFeature.js.map +1 -1
- package/build/features/event/EventFeature.d.ts +8 -8
- package/build/features/event/EventFeature.js +7 -4
- package/build/features/event/EventFeature.js.map +1 -1
- package/build/features/event/actions/CreateAction.js.map +1 -1
- package/build/features/event/actions/ListenAction.js.map +1 -1
- package/build/features/event/stores/EventStore.d.ts +9 -9
- package/build/features/event/stores/EventStore.js +26 -26
- package/build/features/event/stores/EventStore.js.map +1 -1
- package/build/features/eventContract/EventContractFeature.js +4 -1
- package/build/features/eventContract/EventContractFeature.js.map +1 -1
- package/build/features/eventContract/actions/PullAction.js +10 -5
- package/build/features/eventContract/actions/PullAction.js.map +1 -1
- package/build/features/features.types.d.ts +2 -37
- package/build/features/features.types.js +0 -41
- package/build/features/features.types.js.map +1 -1
- package/build/features/log/LogFeature.js +1 -1
- package/build/features/log/LogFeature.js.map +1 -1
- package/build/features/node/NodeFeature.js.map +1 -1
- package/build/features/organization/actions/InstallAction.js.map +1 -1
- package/build/features/permission/PermissionFeature.d.ts +12 -2
- package/build/features/permission/PermissionFeature.js +140 -15
- package/build/features/permission/PermissionFeature.js.map +1 -1
- package/build/features/permission/actions/CreateAction.js +4 -1
- package/build/features/permission/actions/CreateAction.js.map +1 -1
- package/build/features/permission/actions/SyncAction.d.ts +5 -1
- package/build/features/permission/actions/SyncAction.js +28 -10
- package/build/features/permission/actions/SyncAction.js.map +1 -1
- package/build/features/permission/stores/PermissionStore.d.ts +7 -1
- package/build/features/permission/stores/PermissionStore.js +92 -23
- package/build/features/permission/stores/PermissionStore.js.map +1 -1
- package/build/features/permission/writers/PermissionWriter.d.ts +7 -1
- package/build/features/permission/writers/PermissionWriter.js +66 -17
- package/build/features/permission/writers/PermissionWriter.js.map +1 -1
- package/build/features/person/PersonFeature.js +1 -1
- package/build/features/person/PersonFeature.js.map +1 -1
- package/build/features/sandbox/SandboxFeature.js +1 -1
- package/build/features/sandbox/SandboxFeature.js.map +1 -1
- package/build/features/schema/SchemaFeature.d.ts +8 -8
- package/build/features/schema/SchemaFeature.js +4 -4
- package/build/features/schema/SchemaFeature.js.map +1 -1
- package/build/features/schema/writers/SchemaWriter.d.ts +12 -12
- package/build/features/schema/writers/SchemaWriter.js.map +1 -1
- package/build/features/skill/SkillFeature.d.ts +11 -11
- package/build/features/skill/SkillFeature.js +2 -2
- package/build/features/skill/SkillFeature.js.map +1 -1
- package/build/features/skill/actions/RebuildAction.js.map +1 -1
- package/build/features/skill/actions/RegisterAction.js.map +1 -1
- package/build/features/skill/stores/SkillStore.js +1 -2
- package/build/features/skill/stores/SkillStore.js.map +1 -1
- package/build/features/store/StoreFeature.js +1 -1
- package/build/features/store/StoreFeature.js.map +1 -1
- package/build/features/store/actions/SyncAction.d.ts +1 -1
- package/build/features/store/actions/SyncAction.js.map +1 -1
- package/build/features/test/TestFeature.js +1 -1
- package/build/features/test/TestFeature.js.map +1 -1
- package/build/features/view/ViewFeature.js +1 -1
- package/build/features/view/ViewFeature.js.map +1 -1
- package/build/schemas/v2020_07_22/actionResponse.builder.d.ts +85 -0
- package/build/schemas/v2020_07_22/actionResponse.builder.js +70 -0
- package/build/schemas/v2020_07_22/actionResponse.builder.js.map +1 -0
- package/build/schemas/v2020_07_22/generatedFile.builder.d.ts +27 -0
- package/build/schemas/v2020_07_22/generatedFile.builder.js +45 -0
- package/build/schemas/v2020_07_22/generatedFile.builder.js.map +1 -0
- package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js +4 -40
- package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
- package/build/services/CommandService.d.ts +2 -2
- package/build/services/CommandService.js +6 -6
- package/build/services/CommandService.js.map +1 -1
- package/build/services/PkgService.d.ts +1 -0
- package/build/services/PkgService.js +5 -0
- package/build/services/PkgService.js.map +1 -1
- package/build/tests/AbstractCliTest.d.ts +7 -3
- package/build/tests/AbstractCliTest.js +81 -45
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/buildTestCache.js +7 -0
- package/build/tests/buildTestCache.js.map +1 -1
- package/build/tests/fixtures/FeatureFixture.js +1 -0
- package/build/tests/fixtures/FeatureFixture.js.map +1 -1
- package/build/tests/utilities/test.utility.d.ts +2 -0
- package/build/tests/utilities/test.utility.js +6 -0
- package/build/tests/utilities/test.utility.js.map +1 -1
- package/node_modules/@typescript-eslint/parser/package.json +6 -6
- package/node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.js +9 -9
- package/node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/definition/Definition.d.ts +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/definition/Definition.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.iterable.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.iterable.js +1 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.iterable.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.js +21 -7
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.intl.d.ts +3 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.intl.d.ts.map +1 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.intl.js +12 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.intl.js.map +1 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.js +2 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/index.d.ts +1 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/index.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/index.js +2 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/index.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.iterable.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.iterable.js +2 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.iterable.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.js +39 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts +4 -2
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js +13 -5
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ExportVisitor.d.ts +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ExportVisitor.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.d.ts +2 -2
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.js +9 -9
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Reference.js +17 -17
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Reference.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts +2 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js +3 -0
- package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/scope/Scope.d.ts +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/scope/Scope.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeBase.d.ts +1 -1
- package/node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeBase.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/scope-manager/package.json +12 -12
- package/node_modules/@typescript-eslint/types/_ts3.4/dist/generated/ast-spec.d.ts +27 -3
- package/node_modules/@typescript-eslint/types/_ts3.4/dist/lib.d.ts +1 -1
- package/node_modules/@typescript-eslint/types/_ts3.4/dist/parser-options.d.ts +3 -3
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +27 -3
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js +3 -0
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js.map +1 -1
- package/node_modules/@typescript-eslint/types/dist/lib.d.ts +1 -1
- package/node_modules/@typescript-eslint/types/dist/lib.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts +3 -3
- package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/types/package.json +3 -3
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/shared.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/index.d.ts +2 -2
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parser-options.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parser.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/simple-traverse.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ts-estree/estree-to-ts-node-types.d.ts +4 -1
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/ts-estree/ts-nodes.d.ts +4 -2
- package/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +22 -3
- package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js +9 -0
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.d.ts +2 -2
- package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts +4 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts +4 -2
- package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/package.json +6 -6
- package/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js +63 -48
- package/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js.map +1 -1
- package/node_modules/@typescript-eslint/visitor-keys/package.json +4 -4
- package/package.json +65 -33
- package/src/.spruce/events/events.contract.ts +24 -0
- package/src/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.ts +54 -0
- package/src/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.ts +79 -0
- package/src/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.ts +48 -0
- package/src/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.ts +13 -0
- package/src/.spruce/schemas/schemas.types.ts +171 -52
- package/src/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.ts +58 -0
- package/src/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.ts +33 -0
- package/src/.spruce/settings.json +2 -1
- package/src/GlobalEmitter.ts +2 -7
- package/src/__tests__/behavioral/TestingAConversation.test.ts +20 -37
- package/src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts +14 -2
- package/src/__tests__/behavioral/events/SkillEmitsBootEvents.test.ts +6 -0
- package/src/__tests__/behavioral/permissions/CreatingPermissions.test.ts +2 -2
- package/src/__tests__/behavioral/permissions/PermissionPlugin.test.ts +24 -0
- package/src/__tests__/behavioral/permissions/PermissionStore.test.ts +204 -23
- package/src/__tests__/behavioral/permissions/PermissionWriter.test.ts +23 -0
- package/src/__tests__/behavioral/permissions/SyncingPermissions.test.ts +125 -8
- package/src/__tests__/behavioral/permissions/support/AbstractPermissionsTest.ts +38 -0
- package/src/__tests__/behavioral/permissions/support/generateShortAlphaId.ts +5 -0
- package/src/__tests__/behavioral/permissions/support/renderPermissionTestFile.ts +27 -0
- package/src/__tests__/behavioral/permissions/support/sortPermissionContracts.ts +3 -0
- package/src/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.ts +12 -12
- package/src/__tests__/behavioral/tests/CreatingATest.test.ts +2 -2
- package/src/__tests__/behavioral/upgrading/UpgradingANodeModule.test.ts +3 -0
- package/src/__tests__/behavioral/upgrading/UpgradingASkill3.test.ts +3 -2
- package/src/__tests__/behavioral/upgrading/UpgradingASkill4.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter2.test.ts +13 -6
- package/src/__tests__/implementation/GlobalEmitter.test.ts +22 -1
- package/src/__tests__/implementation/SkillStore.test.ts +1 -2
- package/src/__tests__/support/EventFaker.ts +23 -0
- package/src/features/AbstractAction.ts +2 -2
- package/src/features/AbstractFeature.ts +8 -8
- package/src/features/ActionExecuter.ts +4 -5
- package/src/features/ActionFactory.ts +44 -20
- package/src/features/ActionQuestionAsker.ts +17 -17
- package/src/features/conversation/ConversationFeature.ts +1 -1
- package/src/features/dependencies/DependencyFeature.ts +1 -1
- package/src/features/deploy/actions/HerokuAction.ts +2 -2
- package/src/features/error/ErrorFeature.ts +4 -4
- package/src/features/event/EventFeature.ts +15 -14
- package/src/features/event/actions/CreateAction.ts +1 -1
- package/src/features/event/actions/ListenAction.ts +1 -1
- package/src/features/event/stores/EventStore.ts +37 -37
- package/src/features/eventContract/EventContractFeature.ts +6 -1
- package/src/features/eventContract/actions/PullAction.ts +7 -3
- package/src/features/features.types.ts +4 -41
- package/src/features/log/LogFeature.ts +1 -1
- package/src/features/node/NodeFeature.ts +1 -1
- package/src/features/organization/actions/InstallAction.ts +1 -1
- package/src/features/permission/PermissionFeature.ts +66 -11
- package/src/features/permission/actions/CreateAction.ts +2 -0
- package/src/features/permission/actions/SyncAction.ts +22 -3
- package/src/features/permission/stores/PermissionStore.ts +44 -3
- package/src/features/permission/writers/PermissionWriter.ts +64 -3
- package/src/features/person/PersonFeature.ts +1 -1
- package/src/features/sandbox/SandboxFeature.ts +1 -3
- package/src/features/schema/SchemaFeature.ts +14 -14
- package/src/features/schema/writers/SchemaWriter.ts +14 -15
- package/src/features/skill/SkillFeature.ts +18 -18
- package/src/features/skill/actions/RebuildAction.ts +1 -1
- package/src/features/skill/actions/RegisterAction.ts +1 -1
- package/src/features/skill/stores/SkillStore.ts +1 -2
- package/src/features/store/StoreFeature.ts +1 -1
- package/src/features/store/actions/SyncAction.ts +1 -1
- package/src/features/test/TestFeature.ts +1 -1
- package/src/features/view/ViewFeature.ts +1 -1
- package/src/schemas/v2020_07_22/actionResponse.builder.ts +62 -0
- package/src/schemas/v2020_07_22/generatedFile.builder.ts +44 -0
- package/src/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.ts +3 -46
- package/src/services/CommandService.ts +5 -5
- package/src/services/PkgService.ts +4 -0
- package/src/tests/AbstractCliTest.ts +31 -13
- package/src/tests/buildTestCache.ts +7 -0
- package/src/tests/fixtures/FeatureFixture.ts +2 -0
- package/src/tests/utilities/test.utility.ts +13 -0
- package/build/__tests__/behavioral/permissions/AbstractPermissionsTest.d.ts +0 -8
- package/build/__tests__/behavioral/permissions/AbstractPermissionsTest.js.map +0 -1
- package/src/__tests__/behavioral/permissions/AbstractPermissionsTest.ts +0 -20
|
@@ -57,49 +57,20 @@ var GettingSchemasFromHealthCheckTest = (_dec = (0, _testUtils.test)(), _dec2 =
|
|
|
57
57
|
return getsCoreSchemasFromHealthCheck;
|
|
58
58
|
}()
|
|
59
59
|
}, {
|
|
60
|
-
key: "
|
|
60
|
+
key: "getsCoreAndLocalSchemasFromHealthCheck",
|
|
61
61
|
value: function () {
|
|
62
|
-
var
|
|
63
|
-
var
|
|
62
|
+
var _getsCoreAndLocalSchemasFromHealthCheck = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
63
|
+
var cli, createSchema, cleanedExpected;
|
|
64
64
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
65
65
|
while (1) {
|
|
66
66
|
switch (_context2.prev = _context2.next) {
|
|
67
67
|
case 0:
|
|
68
68
|
_context2.next = 2;
|
|
69
|
-
return cli.checkHealth();
|
|
70
|
-
case 2:
|
|
71
|
-
health = _context2.sent;
|
|
72
|
-
_testUtils.assert.isFalsy(health.skill.errors);
|
|
73
|
-
_testUtils.assert.isTruthy(health.schema);
|
|
74
|
-
_testUtils.assert.isEqual(health.schema.status, 'passed');
|
|
75
|
-
_testUtils.assert.isEqualDeep(this.sortSchemas(health.schema.schemas), expected);
|
|
76
|
-
case 7:
|
|
77
|
-
case "end":
|
|
78
|
-
return _context2.stop();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}, _callee2, this);
|
|
82
|
-
}));
|
|
83
|
-
function assertExpectedSchemas(_x, _x2) {
|
|
84
|
-
return _assertExpectedSchemas.apply(this, arguments);
|
|
85
|
-
}
|
|
86
|
-
return assertExpectedSchemas;
|
|
87
|
-
}()
|
|
88
|
-
}, {
|
|
89
|
-
key: "getsCoreAndLocalSchemasFromHealthCheck",
|
|
90
|
-
value: function () {
|
|
91
|
-
var _getsCoreAndLocalSchemasFromHealthCheck = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
92
|
-
var cli, createSchema, cleanedExpected;
|
|
93
|
-
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
94
|
-
while (1) {
|
|
95
|
-
switch (_context3.prev = _context3.next) {
|
|
96
|
-
case 0:
|
|
97
|
-
_context3.next = 2;
|
|
98
69
|
return this.installAndSyncSchemas();
|
|
99
70
|
case 2:
|
|
100
|
-
cli =
|
|
71
|
+
cli = _context2.sent;
|
|
101
72
|
createSchema = this.Action('schema', 'create');
|
|
102
|
-
|
|
73
|
+
_context2.next = 6;
|
|
103
74
|
return createSchema.execute({
|
|
104
75
|
nameReadable: 'Test schema!',
|
|
105
76
|
namePascal: 'Test',
|
|
@@ -114,14 +85,14 @@ var GettingSchemasFromHealthCheckTest = (_dec = (0, _testUtils.test)(), _dec2 =
|
|
|
114
85
|
namespace: 'TestingSchemas',
|
|
115
86
|
description: 'this is so great!'
|
|
116
87
|
}]));
|
|
117
|
-
|
|
88
|
+
_context2.next = 9;
|
|
118
89
|
return this.assertExpectedSchemas(cli, cleanedExpected);
|
|
119
90
|
case 9:
|
|
120
91
|
case "end":
|
|
121
|
-
return
|
|
92
|
+
return _context2.stop();
|
|
122
93
|
}
|
|
123
94
|
}
|
|
124
|
-
},
|
|
95
|
+
}, _callee2, this);
|
|
125
96
|
}));
|
|
126
97
|
function getsCoreAndLocalSchemasFromHealthCheck() {
|
|
127
98
|
return _getsCoreAndLocalSchemasFromHealthCheck.apply(this, arguments);
|
|
@@ -131,32 +102,61 @@ var GettingSchemasFromHealthCheckTest = (_dec = (0, _testUtils.test)(), _dec2 =
|
|
|
131
102
|
}, {
|
|
132
103
|
key: "installAndSyncSchemas",
|
|
133
104
|
value: function () {
|
|
134
|
-
var _installAndSyncSchemas = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
105
|
+
var _installAndSyncSchemas = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
135
106
|
var cli;
|
|
136
|
-
return _regenerator["default"].wrap(function
|
|
107
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
137
108
|
while (1) {
|
|
138
|
-
switch (
|
|
109
|
+
switch (_context3.prev = _context3.next) {
|
|
139
110
|
case 0:
|
|
140
|
-
|
|
111
|
+
_context3.next = 2;
|
|
141
112
|
return this.installSchemaFeature('schemas');
|
|
142
113
|
case 2:
|
|
143
|
-
cli =
|
|
144
|
-
|
|
114
|
+
cli = _context3.sent;
|
|
115
|
+
_context3.next = 5;
|
|
145
116
|
return this.Action('schema', 'sync').execute({});
|
|
146
117
|
case 5:
|
|
147
|
-
return
|
|
118
|
+
return _context3.abrupt("return", cli);
|
|
148
119
|
case 6:
|
|
149
120
|
case "end":
|
|
150
|
-
return
|
|
121
|
+
return _context3.stop();
|
|
151
122
|
}
|
|
152
123
|
}
|
|
153
|
-
},
|
|
124
|
+
}, _callee3, this);
|
|
154
125
|
}));
|
|
155
126
|
function installAndSyncSchemas() {
|
|
156
127
|
return _installAndSyncSchemas.apply(this, arguments);
|
|
157
128
|
}
|
|
158
129
|
return installAndSyncSchemas;
|
|
159
130
|
}()
|
|
131
|
+
}, {
|
|
132
|
+
key: "assertExpectedSchemas",
|
|
133
|
+
value: function () {
|
|
134
|
+
var _assertExpectedSchemas = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(cli, expected) {
|
|
135
|
+
var health;
|
|
136
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
137
|
+
while (1) {
|
|
138
|
+
switch (_context4.prev = _context4.next) {
|
|
139
|
+
case 0:
|
|
140
|
+
_context4.next = 2;
|
|
141
|
+
return cli.checkHealth();
|
|
142
|
+
case 2:
|
|
143
|
+
health = _context4.sent;
|
|
144
|
+
_testUtils.assert.isFalsy(health.skill.errors);
|
|
145
|
+
_testUtils.assert.isTruthy(health.schema);
|
|
146
|
+
_testUtils.assert.isEqual(health.schema.status, 'passed');
|
|
147
|
+
_testUtils.assert.isEqualDeep(this.sortSchemas(health.schema.schemas), expected);
|
|
148
|
+
case 7:
|
|
149
|
+
case "end":
|
|
150
|
+
return _context4.stop();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}, _callee4, this);
|
|
154
|
+
}));
|
|
155
|
+
function assertExpectedSchemas(_x, _x2) {
|
|
156
|
+
return _assertExpectedSchemas.apply(this, arguments);
|
|
157
|
+
}
|
|
158
|
+
return assertExpectedSchemas;
|
|
159
|
+
}()
|
|
160
160
|
}]);
|
|
161
161
|
return GettingSchemasFromHealthCheckTest;
|
|
162
162
|
}(_AbstractSchemaTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "getsCoreSchemasFromHealthCheck", [_dec], Object.getOwnPropertyDescriptor(_class, "getsCoreSchemasFromHealthCheck"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "getsCoreAndLocalSchemasFromHealthCheck", [_dec2], Object.getOwnPropertyDescriptor(_class, "getsCoreAndLocalSchemasFromHealthCheck"), _class)), _class));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GettingSchemasFromHealthCheck.test.js","names":["GettingSchemasFromHealthCheckTest","test","installAndSyncSchemas","cli","cleanedExpected","generateExpectedHealthSchemas","Object","values","coreSchemas","assertExpectedSchemas","
|
|
1
|
+
{"version":3,"file":"GettingSchemasFromHealthCheck.test.js","names":["GettingSchemasFromHealthCheckTest","test","installAndSyncSchemas","cli","cleanedExpected","generateExpectedHealthSchemas","Object","values","coreSchemas","assertExpectedSchemas","createSchema","Action","execute","nameReadable","namePascal","nameCamel","description","id","name","version","versionUtil","generateVersion","constValue","namespace","installSchemaFeature","expected","checkHealth","health","assert","isFalsy","skill","errors","isTruthy","schema","isEqual","status","isEqualDeep","sortSchemas","schemas","AbstractSchemaTest"],"sources":["../../../../src/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.ts"],"sourcesContent":["import { Schema } from '@sprucelabs/schema'\nimport { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport { CliInterface } from '../../../cli'\nimport { coreSchemas } from '../../../features/schema/stores/SchemaStore'\nimport AbstractSchemaTest from '../../../tests/AbstractSchemaTest'\n\nexport default class GettingSchemasFromHealthCheckTest extends AbstractSchemaTest {\n\t@test()\n\tprotected static async getsCoreSchemasFromHealthCheck() {\n\t\tconst cli = await this.installAndSyncSchemas()\n\n\t\tconst cleanedExpected = this.generateExpectedHealthSchemas(\n\t\t\tObject.values(coreSchemas)\n\t\t)\n\n\t\tawait this.assertExpectedSchemas(cli, cleanedExpected)\n\t}\n\n\t@test()\n\tprotected static async getsCoreAndLocalSchemasFromHealthCheck() {\n\t\tconst cli = await this.installAndSyncSchemas()\n\t\tconst createSchema = this.Action('schema', 'create')\n\n\t\tawait createSchema.execute({\n\t\t\tnameReadable: 'Test schema!',\n\t\t\tnamePascal: 'Test',\n\t\t\tnameCamel: 'test',\n\t\t\tdescription: 'this is so great!',\n\t\t})\n\n\t\tconst cleanedExpected = this.generateExpectedHealthSchemas([\n\t\t\t...Object.values(coreSchemas),\n\t\t\t{\n\t\t\t\tid: 'test',\n\t\t\t\tname: 'Test schema!',\n\t\t\t\tversion: versionUtil.generateVersion().constValue,\n\t\t\t\tnamespace: 'TestingSchemas',\n\t\t\t\tdescription: 'this is so great!',\n\t\t\t},\n\t\t])\n\n\t\tawait this.assertExpectedSchemas(cli, cleanedExpected)\n\t}\n\n\tprivate static async installAndSyncSchemas() {\n\t\tconst cli = await this.installSchemaFeature('schemas')\n\t\tawait this.Action('schema', 'sync').execute({})\n\t\treturn cli\n\t}\n\n\tprivate static async assertExpectedSchemas(\n\t\tcli: CliInterface,\n\t\texpected: Schema[]\n\t) {\n\t\tconst health = await cli.checkHealth()\n\t\tassert.isFalsy(health.skill.errors)\n\t\tassert.isTruthy(health.schema)\n\t\tassert.isEqual(health.schema.status, 'passed')\n\n\t\tassert.isEqualDeep(this.sortSchemas(health.schema.schemas), expected)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;AACA;AACA;AAEA;AACA;AAAkE;AAAA;AAAA;AAAA,IAE7CA,iCAAiC,WACpD,IAAAC,eAAI,GAAE,UAWN,IAAAA,eAAI,GAAE;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;MAAA,oHAXP;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEmB,IAAI,CAACC,qBAAqB,EAAE;cAAA;gBAAxCC,GAAG;gBAEHC,eAAe,GAAG,IAAI,CAACC,6BAA6B,CACzDC,MAAM,CAACC,MAAM,CAACC,wBAAW,CAAC,CAC1B;gBAAA;gBAAA,OAEK,IAAI,CAACC,qBAAqB,CAACN,GAAG,EAAEC,eAAe,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACtD;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,4HAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEmB,IAAI,CAACF,qBAAqB,EAAE;cAAA;gBAAxCC,GAAG;gBACHO,YAAY,GAAG,IAAI,CAACC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAAA;gBAAA,OAE9CD,YAAY,CAACE,OAAO,CAAC;kBAC1BC,YAAY,EAAE,cAAc;kBAC5BC,UAAU,EAAE,MAAM;kBAClBC,SAAS,EAAE,MAAM;kBACjBC,WAAW,EAAE;gBACd,CAAC,CAAC;cAAA;gBAEIZ,eAAe,GAAG,IAAI,CAACC,6BAA6B,+CACtDC,MAAM,CAACC,MAAM,CAACC,wBAAW,CAAC,IAC7B;kBACCS,EAAE,EAAE,MAAM;kBACVC,IAAI,EAAE,cAAc;kBACpBC,OAAO,EAAEC,6BAAW,CAACC,eAAe,EAAE,CAACC,UAAU;kBACjDC,SAAS,EAAE,gBAAgB;kBAC3BP,WAAW,EAAE;gBACd,CAAC,GACA;gBAAA;gBAAA,OAEI,IAAI,CAACP,qBAAqB,CAACN,GAAG,EAAEC,eAAe,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACtD;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,2GAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACmB,IAAI,CAACoB,oBAAoB,CAAC,SAAS,CAAC;cAAA;gBAAhDrB,GAAG;gBAAA;gBAAA,OACH,IAAI,CAACQ,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;cAAA;gBAAA,kCACxCT,GAAG;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACV;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,2GAED,kBACCA,GAAiB,EACjBsB,QAAkB;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAEGtB,GAAG,CAACuB,WAAW,EAAE;cAAA;gBAAhCC,MAAM;gBACZC,iBAAM,CAACC,OAAO,CAACF,MAAM,CAACG,KAAK,CAACC,MAAM,CAAC;gBACnCH,iBAAM,CAACI,QAAQ,CAACL,MAAM,CAACM,MAAM,CAAC;gBAC9BL,iBAAM,CAACM,OAAO,CAACP,MAAM,CAACM,MAAM,CAACE,MAAM,EAAE,QAAQ,CAAC;gBAE9CP,iBAAM,CAACQ,WAAW,CAAC,IAAI,CAACC,WAAW,CAACV,MAAM,CAACM,MAAM,CAACK,OAAO,CAAC,EAAEb,QAAQ,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACrE;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;EAAA;AAAA,EAtD6Dc,+BAAkB;AAAA"}
|
|
@@ -68,8 +68,8 @@ var CreatingBehavioralTestsTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _t
|
|
|
68
68
|
case 5:
|
|
69
69
|
candidates = _context2.sent;
|
|
70
70
|
_testUtils.assert.doesInclude(candidates, {
|
|
71
|
-
label: '
|
|
72
|
-
name: '
|
|
71
|
+
label: 'AbstractStoreTest (requires install)',
|
|
72
|
+
name: 'AbstractStoreTest'
|
|
73
73
|
});
|
|
74
74
|
case 7:
|
|
75
75
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreatingATest.test.js","names":["CreatingBehavioralTestsTest","test","assert","isFunction","Action","execute","installTests","testFeature","featureInstaller","getFeature","buildParentClassCandidates","candidates","doesInclude","label","name","testName","LintService","enableLinting","createTestAndGetFile","match","Service","build","doesThrowAsync","testType","createTestSubDir","installAndStartTestActionAndWaitForInput","promise","uiAssert","assertSelectRenderChoice","ui","sendInput","waitAndSelectSubClass","dirs","dir","dirName","results","expectedPath","resolvePath","isEqual","files","path","file","resolveTestDir","diskUtil","writeFile","assertSelectDidNotRenderChoice","reset","testFile","contents","readFile","newDir","createDir","testDirs","selectOptionBasedOnLabel","response","type","nameReadable","nameCamel","namePascal","waitForInput","selectedSubClass","createTest","testUtil","assertFileByNameInGeneratedFiles","AbstractTestTest"],"sources":["../../../../src/__tests__/behavioral/tests/CreatingATest.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport LintService from '../../../services/LintService'\nimport AbstractTestTest from '../../../tests/AbstractTestTest'\nimport testUtil from '../../../tests/utilities/test.utility'\nimport uiAssert from '../../../tests/utilities/uiAssert.utility'\n\nexport default class CreatingBehavioralTestsTest extends AbstractTestTest {\n\t@test()\n\tprotected static async hasCreateAction() {\n\t\tassert.isFunction(this.Action('test', 'create').execute)\n\t}\n\n\t@test()\n\tprotected static async requiresInstallIfFeatureNotInstalled() {\n\t\tawait this.installTests('testsInNodeModule')\n\n\t\tconst testFeature = this.featureInstaller.getFeature('test')\n\t\tconst candidates = await testFeature.buildParentClassCandidates()\n\n\t\tassert.doesInclude(candidates, {\n\t\t\tlabel: 'AbstractSpruceFixtureTest (requires install)',\n\t\t\tname: 'AbstractSpruceFixtureTest',\n\t\t})\n\t}\n\n\t@test(\n\t\t'can create behavioral test with AbstractSpruceFixtureTest',\n\t\t'AbstractSpruceFixtureTest'\n\t)\n\t@test(\n\t\t'can create behavioral test with AbstractStoreTest',\n\t\t'AbstractStoreTest (requires install)'\n\t)\n\tprotected static async canCreateBehavioralTest(testName: string) {\n\t\tLintService.enableLinting()\n\t\tconst match = await this.createTestAndGetFile(testName)\n\n\t\tassert.doesInclude(match, 'behavioral')\n\n\t\tawait this.Service('build').build()\n\n\t\tawait assert.doesThrowAsync(\n\t\t\t() => this.Service('command').execute('yarn test'),\n\t\t\t/false.*?does not equal.*?true/gis\n\t\t)\n\t}\n\n\t@test('finds folders inside behavioral', 'behavioral')\n\t@test('finds folders inside implementation', 'implementation')\n\tprotected static async promptsToSelectFolderIfInsideTestDir(\n\t\ttestType: string\n\t) {\n\t\tawait this.installTests()\n\n\t\tthis.createTestSubDir(testType, 'dummy1')\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput(\n\t\t\ttestType\n\t\t)\n\n\t\tuiAssert.assertSelectRenderChoice(this.ui, '.', testType)\n\t\tuiAssert.assertSelectRenderChoice(this.ui, `dummy1`, `${testType}/dummy1`)\n\n\t\tawait this.ui.sendInput('.')\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tawait promise\n\t}\n\n\t@test()\n\tprotected static async listsManyDirsIfExistInsideTestDir() {\n\t\tawait this.installTests()\n\n\t\tconst dirs = ['dir1', 'dir2', 'dir3']\n\n\t\tfor (const dir of dirs) {\n\t\t\tthis.createTestSubDir('behavioral', dir)\n\t\t}\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput()\n\n\t\tfor (const dir of dirs) {\n\t\t\tuiAssert.assertSelectRenderChoice(this.ui, `${dir}`, `behavioral/${dir}`)\n\t\t}\n\n\t\tawait this.ui.sendInput('.')\n\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tawait promise\n\t}\n\n\t@test('can select sub dir 1', 'test')\n\t@test('can select sub dir 2', 'test-2')\n\tprotected static async selectingAnOptionRendersToSubDir(dirName: string) {\n\t\tawait this.installTests()\n\t\tthis.createTestSubDir('behavioral', dirName)\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput(\n\t\t\t'behavioral'\n\t\t)\n\n\t\tawait this.ui.sendInput(`${dirName}`)\n\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tconst results = await promise\n\n\t\tconst expectedPath = this.resolvePath(\n\t\t\t'src',\n\t\t\t'__tests__',\n\t\t\t'behavioral',\n\t\t\tdirName,\n\t\t\t'CanBookAppointment.test.ts'\n\t\t)\n\n\t\tassert.isEqual(expectedPath, results.files?.[0]?.path)\n\t}\n\n\t@test()\n\tprotected static async doesNotListFiles() {\n\t\tawait this.installTests()\n\t\tthis.createTestSubDir('behavioral', 'subdir')\n\n\t\tconst file = this.resolveTestDir('behavioral', 'test.ts')\n\t\tdiskUtil.writeFile(file, 'what the!?')\n\n\t\tawait this.installAndStartTestActionAndWaitForInput()\n\n\t\tuiAssert.assertSelectDidNotRenderChoice(\n\t\t\tthis.ui,\n\t\t\t'test',\n\t\t\t`behavioral/test/test.ts`\n\t\t)\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async allTestsComeFakedToStart() {\n\t\tconst testFile = await this.createTestAndGetFile()\n\t\tconst contents = diskUtil.readFile(testFile)\n\t\tassert.doesInclude(contents, 'fake.login()')\n\t}\n\n\tprivate static createTestSubDir(...testDirs: string[]) {\n\t\tconst newDir = this.resolveTestDir(...testDirs)\n\t\tdiskUtil.createDir(newDir)\n\t}\n\n\tprivate static resolveTestDir(...testDirs: string[]) {\n\t\treturn this.resolvePath('src', '__tests__', ...testDirs)\n\t}\n\n\tprivate static async createTest(testName = 'AbstractSpruceFixtureTest') {\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput()\n\n\t\tthis.selectOptionBasedOnLabel(testName)\n\n\t\tconst response = await promise\n\t\treturn response\n\t}\n\n\tprivate static async installAndStartTestActionAndWaitForInput(\n\t\ttestType = 'behavioral'\n\t) {\n\t\tawait this.installTests()\n\t\tconst promise = this.Action('test', 'create').execute({\n\t\t\ttype: testType,\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\t\treturn { promise }\n\t}\n\n\tprivate static async waitAndSelectSubClass(selectedSubClass?: string) {\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput(selectedSubClass ?? '')\n\t}\n\n\tprivate static async createTestAndGetFile(testName?: string) {\n\t\tconst response = await this.createTest(testName)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresponse.files\n\t\t)\n\t\treturn match\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CreatingATest.test.js","names":["CreatingBehavioralTestsTest","test","assert","isFunction","Action","execute","installTests","testFeature","featureInstaller","getFeature","buildParentClassCandidates","candidates","doesInclude","label","name","testName","LintService","enableLinting","createTestAndGetFile","match","Service","build","doesThrowAsync","testType","createTestSubDir","installAndStartTestActionAndWaitForInput","promise","uiAssert","assertSelectRenderChoice","ui","sendInput","waitAndSelectSubClass","dirs","dir","dirName","results","expectedPath","resolvePath","isEqual","files","path","file","resolveTestDir","diskUtil","writeFile","assertSelectDidNotRenderChoice","reset","testFile","contents","readFile","newDir","createDir","testDirs","selectOptionBasedOnLabel","response","type","nameReadable","nameCamel","namePascal","waitForInput","selectedSubClass","createTest","testUtil","assertFileByNameInGeneratedFiles","AbstractTestTest"],"sources":["../../../../src/__tests__/behavioral/tests/CreatingATest.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport LintService from '../../../services/LintService'\nimport AbstractTestTest from '../../../tests/AbstractTestTest'\nimport testUtil from '../../../tests/utilities/test.utility'\nimport uiAssert from '../../../tests/utilities/uiAssert.utility'\n\nexport default class CreatingBehavioralTestsTest extends AbstractTestTest {\n\t@test()\n\tprotected static async hasCreateAction() {\n\t\tassert.isFunction(this.Action('test', 'create').execute)\n\t}\n\n\t@test()\n\tprotected static async requiresInstallIfFeatureNotInstalled() {\n\t\tawait this.installTests('testsInNodeModule')\n\n\t\tconst testFeature = this.featureInstaller.getFeature('test')\n\t\tconst candidates = await testFeature.buildParentClassCandidates()\n\n\t\tassert.doesInclude(candidates, {\n\t\t\tlabel: 'AbstractStoreTest (requires install)',\n\t\t\tname: 'AbstractStoreTest',\n\t\t})\n\t}\n\n\t@test(\n\t\t'can create behavioral test with AbstractSpruceFixtureTest',\n\t\t'AbstractSpruceFixtureTest'\n\t)\n\t@test(\n\t\t'can create behavioral test with AbstractStoreTest',\n\t\t'AbstractStoreTest (requires install)'\n\t)\n\tprotected static async canCreateBehavioralTest(testName: string) {\n\t\tLintService.enableLinting()\n\t\tconst match = await this.createTestAndGetFile(testName)\n\n\t\tassert.doesInclude(match, 'behavioral')\n\n\t\tawait this.Service('build').build()\n\n\t\tawait assert.doesThrowAsync(\n\t\t\t() => this.Service('command').execute('yarn test'),\n\t\t\t/false.*?does not equal.*?true/gis\n\t\t)\n\t}\n\n\t@test('finds folders inside behavioral', 'behavioral')\n\t@test('finds folders inside implementation', 'implementation')\n\tprotected static async promptsToSelectFolderIfInsideTestDir(\n\t\ttestType: string\n\t) {\n\t\tawait this.installTests()\n\n\t\tthis.createTestSubDir(testType, 'dummy1')\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput(\n\t\t\ttestType\n\t\t)\n\n\t\tuiAssert.assertSelectRenderChoice(this.ui, '.', testType)\n\t\tuiAssert.assertSelectRenderChoice(this.ui, `dummy1`, `${testType}/dummy1`)\n\n\t\tawait this.ui.sendInput('.')\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tawait promise\n\t}\n\n\t@test()\n\tprotected static async listsManyDirsIfExistInsideTestDir() {\n\t\tawait this.installTests()\n\n\t\tconst dirs = ['dir1', 'dir2', 'dir3']\n\n\t\tfor (const dir of dirs) {\n\t\t\tthis.createTestSubDir('behavioral', dir)\n\t\t}\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput()\n\n\t\tfor (const dir of dirs) {\n\t\t\tuiAssert.assertSelectRenderChoice(this.ui, `${dir}`, `behavioral/${dir}`)\n\t\t}\n\n\t\tawait this.ui.sendInput('.')\n\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tawait promise\n\t}\n\n\t@test('can select sub dir 1', 'test')\n\t@test('can select sub dir 2', 'test-2')\n\tprotected static async selectingAnOptionRendersToSubDir(dirName: string) {\n\t\tawait this.installTests()\n\t\tthis.createTestSubDir('behavioral', dirName)\n\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput(\n\t\t\t'behavioral'\n\t\t)\n\n\t\tawait this.ui.sendInput(`${dirName}`)\n\n\t\tawait this.waitAndSelectSubClass()\n\n\t\tconst results = await promise\n\n\t\tconst expectedPath = this.resolvePath(\n\t\t\t'src',\n\t\t\t'__tests__',\n\t\t\t'behavioral',\n\t\t\tdirName,\n\t\t\t'CanBookAppointment.test.ts'\n\t\t)\n\n\t\tassert.isEqual(expectedPath, results.files?.[0]?.path)\n\t}\n\n\t@test()\n\tprotected static async doesNotListFiles() {\n\t\tawait this.installTests()\n\t\tthis.createTestSubDir('behavioral', 'subdir')\n\n\t\tconst file = this.resolveTestDir('behavioral', 'test.ts')\n\t\tdiskUtil.writeFile(file, 'what the!?')\n\n\t\tawait this.installAndStartTestActionAndWaitForInput()\n\n\t\tuiAssert.assertSelectDidNotRenderChoice(\n\t\t\tthis.ui,\n\t\t\t'test',\n\t\t\t`behavioral/test/test.ts`\n\t\t)\n\n\t\tthis.ui.reset()\n\t}\n\n\t@test()\n\tprotected static async allTestsComeFakedToStart() {\n\t\tconst testFile = await this.createTestAndGetFile()\n\t\tconst contents = diskUtil.readFile(testFile)\n\t\tassert.doesInclude(contents, 'fake.login()')\n\t}\n\n\tprivate static createTestSubDir(...testDirs: string[]) {\n\t\tconst newDir = this.resolveTestDir(...testDirs)\n\t\tdiskUtil.createDir(newDir)\n\t}\n\n\tprivate static resolveTestDir(...testDirs: string[]) {\n\t\treturn this.resolvePath('src', '__tests__', ...testDirs)\n\t}\n\n\tprivate static async createTest(testName = 'AbstractSpruceFixtureTest') {\n\t\tconst { promise } = await this.installAndStartTestActionAndWaitForInput()\n\n\t\tthis.selectOptionBasedOnLabel(testName)\n\n\t\tconst response = await promise\n\t\treturn response\n\t}\n\n\tprivate static async installAndStartTestActionAndWaitForInput(\n\t\ttestType = 'behavioral'\n\t) {\n\t\tawait this.installTests()\n\t\tconst promise = this.Action('test', 'create').execute({\n\t\t\ttype: testType,\n\t\t\tnameReadable: 'Can book appointment',\n\t\t\tnameCamel: 'canBookAppointment',\n\t\t\tnamePascal: 'CanBookAppointment',\n\t\t})\n\n\t\tawait this.waitForInput()\n\t\treturn { promise }\n\t}\n\n\tprivate static async waitAndSelectSubClass(selectedSubClass?: string) {\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput(selectedSubClass ?? '')\n\t}\n\n\tprivate static async createTestAndGetFile(testName?: string) {\n\t\tconst response = await this.createTest(testName)\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresponse.files\n\t\t)\n\t\treturn match\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -109,10 +109,14 @@ var UpgradingANodeModuleTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _test
|
|
|
109
109
|
while (1) {
|
|
110
110
|
switch (_context3.prev = _context3.next) {
|
|
111
111
|
case 0:
|
|
112
|
+
_CommandService["default"].fakeCommand(/build/gi, {
|
|
113
|
+
code: 0
|
|
114
|
+
});
|
|
112
115
|
shouldNotBeFound = ['src/.spruce/skill.ts', 'src/.spruce/features'];
|
|
113
|
-
|
|
116
|
+
_spruceSkillUtils.diskUtil.deleteDir(this.resolveHashSprucePath('features'));
|
|
117
|
+
_context3.next = 5;
|
|
114
118
|
return this.Action('node', 'upgrade').execute({});
|
|
115
|
-
case
|
|
119
|
+
case 5:
|
|
116
120
|
results = _context3.sent;
|
|
117
121
|
_testUtils.assert.isFalsy(results.errors);
|
|
118
122
|
for (_i = 0, _shouldNotBeFound = shouldNotBeFound; _i < _shouldNotBeFound.length; _i++) {
|
|
@@ -120,7 +124,7 @@ var UpgradingANodeModuleTest = (_dec = (0, _testUtils.test)(), _dec2 = (0, _test
|
|
|
120
124
|
doesExist = _spruceSkillUtils.diskUtil.doesFileExist(this.resolvePath(search));
|
|
121
125
|
_testUtils.assert.isFalse(doesExist, "Should not have found ".concat(search));
|
|
122
126
|
}
|
|
123
|
-
case
|
|
127
|
+
case 8:
|
|
124
128
|
case "end":
|
|
125
129
|
return _context3.stop();
|
|
126
130
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpgradingANodeModule.test.js","names":["UpgradingANodeModuleTest","test","FeatureFixture","installCachedFeatures","featureInstaller","markAsPermanentlySkipped","CommandService","fakeCommand","code","emitter","on","errors","undefined","Action","execute","results","assert","isTruthy","shouldNotBeFound","isFalsy","search","doesExist","
|
|
1
|
+
{"version":3,"file":"UpgradingANodeModule.test.js","names":["UpgradingANodeModuleTest","test","FeatureFixture","installCachedFeatures","featureInstaller","markAsPermanentlySkipped","CommandService","fakeCommand","code","emitter","on","errors","undefined","Action","execute","results","assert","isTruthy","shouldNotBeFound","diskUtil","deleteDir","resolveHashSprucePath","isFalsy","search","doesExist","doesFileExist","resolvePath","isFalse","file","tsConfig","writeFile","promise","uiAssert","assertRendersConfirmWriteFile","ui","isEqual","readFile","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/upgrading/UpgradingANodeModule.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport CommandService from '../../../services/CommandService'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport uiAssert from '../../../tests/utilities/uiAssert.utility'\n\nexport default class UpgradingANodeModuleTest extends AbstractCliTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\n\t\tawait this.FeatureFixture().installCachedFeatures('everythingInNode')\n\n\t\tconst featureInstaller = this.featureInstaller\n\t\tfeatureInstaller.markAsPermanentlySkipped('skill')\n\t}\n\n\t@test()\n\tprotected static async buildErrorsGetPassedThroughToResults() {\n\t\tCommandService.fakeCommand(/yarn (add|install)/gis, { code: 0 })\n\t\tCommandService.fakeCommand(/yarn clean.build/gis, { code: 1 })\n\t\tCommandService.fakeCommand(/yarn build.dev/gis, { code: 0 })\n\n\t\tawait this.emitter.on('feature.did-execute', () => {\n\t\t\treturn {\n\t\t\t\terrors: undefined,\n\t\t\t}\n\t\t})\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t}\n\n\t@test()\n\tprotected static async upgradingWritesExpectedFiles() {\n\t\tCommandService.fakeCommand(/build/gis, { code: 0 })\n\n\t\tconst shouldNotBeFound = ['src/.spruce/skill.ts', 'src/.spruce/features']\n\t\tdiskUtil.deleteDir(this.resolveHashSprucePath('features'))\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isFalsy(results.errors)\n\n\t\tfor (const search of shouldNotBeFound) {\n\t\t\tconst doesExist = diskUtil.doesFileExist(this.resolvePath(search))\n\t\t\tassert.isFalse(doesExist, `Should not have found ${search}`)\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async shouldReWriteNodeDirsAndSkipIndx() {\n\t\tfor (const file of ['tsconfig.json', 'src/index.ts']) {\n\t\t\tconst tsConfig = this.resolvePath(file)\n\t\t\tdiskUtil.writeFile(tsConfig, 'beenChanged')\n\t\t}\n\n\t\tCommandService.fakeCommand(/yarn/gi, {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tconst promise = this.Action('node', 'upgrade').execute({})\n\n\t\tawait uiAssert.assertRendersConfirmWriteFile(this.ui)\n\n\t\tassert.isEqual(\n\t\t\tdiskUtil.readFile(this.resolvePath('src/index.ts')),\n\t\t\t'beenChanged'\n\t\t)\n\n\t\tawait promise\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -73,7 +73,7 @@ var UpgradingASkill3Test = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtil
|
|
|
73
73
|
while (1) {
|
|
74
74
|
switch (_context2.prev = _context2.next) {
|
|
75
75
|
case 0:
|
|
76
|
-
_CommandService["default"].
|
|
76
|
+
_CommandService["default"].clearFakedResponses();
|
|
77
77
|
_context2.next = 3;
|
|
78
78
|
return this.FeatureFixture().installCachedFeatures('views');
|
|
79
79
|
case 3:
|
|
@@ -103,7 +103,7 @@ var UpgradingASkill3Test = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtil
|
|
|
103
103
|
while (1) {
|
|
104
104
|
switch (_context3.prev = _context3.next) {
|
|
105
105
|
case 0:
|
|
106
|
-
_CommandService["default"].
|
|
106
|
+
_CommandService["default"].clearFakedResponses();
|
|
107
107
|
_context3.next = 3;
|
|
108
108
|
return this.FeatureFixture().installCachedFeatures('schemas');
|
|
109
109
|
case 3:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpgradingASkill3.test.js","names":["UpgradingASkill3Test","test","originalErrorSyncExecute","SyncAction","prototype","execute","CommandService","fakeCommand","RegExp","code","clearMockResponses","FeatureFixture","installCachedFeatures","Action","dependencies","Service","get","assert","isFalsy","results","doesThrow","testUtil","assertFileByNameInGeneratedFiles","files","assertViewPluginNotWritten","events","eventDiskUtil","resolveCombinedEventsContractFile","cwd","isTrue","diskUtil","doesFileExist","UpdateDependenciesAction","Error","isTruthy","errors","doesInclude","message","wasCleanBuildCalled","callback","wasBuildDevCalled","plugin","getViewsPluginPath","deleteFile","isFalse","isInstalled","wasHit","disableCleanBuildAndYarnAdd","isEqual","destroyErrorPlugin","expectedContents","promise","upgradeMode","waitForInput","ui","sendInput","actualContents","readFile","nameReadable","nameCamel","disableCleanAndBuild","resolveHashSprucePath","writeFile","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/upgrading/UpgradingASkill3.test.ts"],"sourcesContent":["import { eventDiskUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport SyncAction from '../../../features/error/actions/SyncAction'\nimport UpdateDependenciesAction from '../../../features/node/actions/UpdateDependenciesAction'\nimport CommandService from '../../../services/CommandService'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport testUtil from '../../../tests/utilities/test.utility'\nexport default class UpgradingASkill3Test extends AbstractCliTest {\n\tprivate static originalErrorSyncExecute: any\n\tprotected static async beforeEach() {\n\t\tif (!this.originalErrorSyncExecute) {\n\t\t\tthis.originalErrorSyncExecute = SyncAction.prototype.execute\n\t\t} else {\n\t\t\tSyncAction.prototype.execute = this.originalErrorSyncExecute\n\t\t}\n\n\t\tawait super.beforeEach()\n\t\tCommandService.fakeCommand(new RegExp(/yarn rebuild/gis), {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async doesNotAddResolvePathAliasesToDependenciesAfterUpgrade() {\n\t\tCommandService.clearMockResponses()\n\t\tawait this.FeatureFixture().installCachedFeatures('views')\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tconst dependencies = this.Service('pkg').get('dependencies')\n\n\t\tassert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases'])\n\t}\n\n\t@test()\n\tprotected static async featuresNotEnabledDontInstall() {\n\t\tCommandService.clearMockResponses()\n\t\tawait this.FeatureFixture().installCachedFeatures('schemas')\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tconst dependencies = this.Service('pkg').get('dependencies')\n\n\t\tassert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases'])\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'events.contract.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\n\t\tthis.assertViewPluginNotWritten()\n\t}\n\n\t@test()\n\tprotected static async upgradingSkillSyncsEvents() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\t\tconst events = eventDiskUtil.resolveCombinedEventsContractFile(this.cwd)\n\n\t\tassert.isTrue(diskUtil.doesFileExist(events))\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async upgradeCallsUpdateDependencies() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tUpdateDependenciesAction.prototype.execute = () => {\n\t\t\tthrow new Error('baaaaad')\n\t\t}\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t\tassert.doesInclude(results.errors[0].message, 'baaaaad')\n\t}\n\n\t@test()\n\tprotected static async callsCleanFixAndBuildDev() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tlet wasCleanBuildCalled = false\n\t\tUpdateDependenciesAction.prototype.execute = async () => {\n\t\t\treturn {}\n\t\t}\n\n\t\tCommandService.fakeCommand('yarn clean.build', {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasCleanBuildCalled = true\n\t\t\t},\n\t\t})\n\n\t\tlet wasBuildDevCalled = false\n\n\t\tCommandService.fakeCommand('yarn build.dev', {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasBuildDevCalled = true\n\t\t\t},\n\t\t})\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isFalsy(results.errors)\n\t\tassert.isTrue(wasCleanBuildCalled)\n\t\tassert.isTrue(wasBuildDevCalled)\n\t}\n\n\t@test()\n\tprotected static async writesViewPlugin() {\n\t\tawait this.FeatureFixture().installCachedFeatures('views')\n\n\t\tconst plugin = this.getViewsPluginPath()\n\t\tassert.isTrue(diskUtil.doesFileExist(plugin))\n\n\t\tdiskUtil.deleteFile(plugin)\n\n\t\tassert.isFalse(diskUtil.doesFileExist(plugin))\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isTrue(diskUtil.doesFileExist(plugin))\n\t}\n\n\t@test('sync with errors installed')\n\t@test('sync with errors not installed', false)\n\tprotected static async upgradeSyncsErrors(isInstalled = true) {\n\t\tawait this.FeatureFixture().installCachedFeatures(\n\t\t\tisInstalled ? 'errors' : 'schemas'\n\t\t)\n\n\t\tlet wasHit = false\n\n\t\tSyncAction.prototype.execute = async () => {\n\t\t\twasHit = true\n\t\t\treturn {}\n\t\t}\n\n\t\tthis.disableCleanBuildAndYarnAdd()\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isEqual(wasHit, isInstalled)\n\t}\n\n\t@test()\n\tprotected static async resetsErrorPluginInSkill() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tconst { plugin, expectedContents } = this.destroyErrorPlugin()\n\n\t\tawait this.disableCleanBuildAndYarnAdd()\n\n\t\tconst promise = this.Action('node', 'upgrade').execute({\n\t\t\tupgradeMode: 'askForChanged',\n\t\t})\n\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput('overwrite')\n\n\t\tawait promise\n\n\t\tconst actualContents = diskUtil.readFile(plugin)\n\n\t\tassert.isEqual(actualContents, expectedContents)\n\t}\n\n\t@test()\n\tprotected static async resetsErrorPluginWhenErrorInstalled() {\n\t\tawait this.FeatureFixture().installCachedFeatures('errors')\n\n\t\tawait this.Action('error', 'create').execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t})\n\n\t\tconst { plugin, expectedContents } = this.destroyErrorPlugin()\n\n\t\tthis.disableCleanAndBuild()\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({\n\t\t\tupgradeMode: 'askForChanged',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\t\tconst actualContents = diskUtil.readFile(plugin)\n\n\t\tassert.isEqual(actualContents, expectedContents)\n\t}\n\n\tprivate static destroyErrorPlugin() {\n\t\tconst plugin = this.resolveHashSprucePath('errors', 'options.types.ts')\n\t\tconst expectedContents = diskUtil.readFile(plugin)\n\n\t\tdiskUtil.writeFile(plugin, 'waka')\n\t\treturn { plugin, expectedContents }\n\t}\n\n\tprivate static getViewsPluginPath() {\n\t\treturn this.resolveHashSprucePath('features', 'view.plugin.ts')\n\t}\n\n\tprotected static assertViewPluginNotWritten() {\n\t\tassert.isFalse(diskUtil.doesFileExist(this.getViewsPluginPath()))\n\t}\n\n\tprivate static disableCleanBuildAndYarnAdd() {\n\t\tthis.disableCleanAndBuild()\n\n\t\tCommandService.fakeCommand(/yarn.*?add/gis, {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\tprivate static disableCleanAndBuild() {\n\t\tCommandService.fakeCommand('yarn clean.build', {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tCommandService.fakeCommand('yarn build.dev', {\n\t\t\tcode: 0,\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UpgradingASkill3.test.js","names":["UpgradingASkill3Test","test","originalErrorSyncExecute","SyncAction","prototype","execute","CommandService","fakeCommand","RegExp","code","clearFakedResponses","FeatureFixture","installCachedFeatures","Action","dependencies","Service","get","assert","isFalsy","results","doesThrow","testUtil","assertFileByNameInGeneratedFiles","files","assertViewPluginNotWritten","events","eventDiskUtil","resolveCombinedEventsContractFile","cwd","isTrue","diskUtil","doesFileExist","UpdateDependenciesAction","Error","isTruthy","errors","doesInclude","message","wasCleanBuildCalled","callback","wasBuildDevCalled","plugin","getViewsPluginPath","deleteFile","isFalse","isInstalled","wasHit","disableCleanBuildAndYarnAdd","isEqual","destroyErrorPlugin","expectedContents","promise","upgradeMode","waitForInput","ui","sendInput","actualContents","readFile","nameReadable","nameCamel","disableCleanAndBuild","resolveHashSprucePath","writeFile","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/upgrading/UpgradingASkill3.test.ts"],"sourcesContent":["import { eventDiskUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport SyncAction from '../../../features/error/actions/SyncAction'\nimport UpdateDependenciesAction from '../../../features/node/actions/UpdateDependenciesAction'\nimport CommandService from '../../../services/CommandService'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\nimport testUtil from '../../../tests/utilities/test.utility'\nexport default class UpgradingASkill3Test extends AbstractCliTest {\n\tprivate static originalErrorSyncExecute: any\n\n\tprotected static async beforeEach() {\n\t\tif (!this.originalErrorSyncExecute) {\n\t\t\tthis.originalErrorSyncExecute = SyncAction.prototype.execute\n\t\t} else {\n\t\t\tSyncAction.prototype.execute = this.originalErrorSyncExecute\n\t\t}\n\n\t\tawait super.beforeEach()\n\t\tCommandService.fakeCommand(new RegExp(/yarn rebuild/gis), {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async doesNotAddResolvePathAliasesToDependenciesAfterUpgrade() {\n\t\tCommandService.clearFakedResponses()\n\t\tawait this.FeatureFixture().installCachedFeatures('views')\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tconst dependencies = this.Service('pkg').get('dependencies')\n\n\t\tassert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases'])\n\t}\n\n\t@test()\n\tprotected static async featuresNotEnabledDontInstall() {\n\t\tCommandService.clearFakedResponses()\n\t\tawait this.FeatureFixture().installCachedFeatures('schemas')\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tconst dependencies = this.Service('pkg').get('dependencies')\n\n\t\tassert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases'])\n\n\t\tassert.doesThrow(() =>\n\t\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t\t'events.contract.ts',\n\t\t\t\tresults.files\n\t\t\t)\n\t\t)\n\n\t\tthis.assertViewPluginNotWritten()\n\t}\n\n\t@test()\n\tprotected static async upgradingSkillSyncsEvents() {\n\t\tawait this.FeatureFixture().installCachedFeatures('events')\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\t\tconst events = eventDiskUtil.resolveCombinedEventsContractFile(this.cwd)\n\n\t\tassert.isTrue(diskUtil.doesFileExist(events))\n\n\t\ttestUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'events.contract.ts',\n\t\t\tresults.files\n\t\t)\n\t}\n\n\t@test()\n\tprotected static async upgradeCallsUpdateDependencies() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tUpdateDependenciesAction.prototype.execute = () => {\n\t\t\tthrow new Error('baaaaad')\n\t\t}\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isTruthy(results.errors)\n\t\tassert.doesInclude(results.errors[0].message, 'baaaaad')\n\t}\n\n\t@test()\n\tprotected static async callsCleanFixAndBuildDev() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tlet wasCleanBuildCalled = false\n\t\tUpdateDependenciesAction.prototype.execute = async () => {\n\t\t\treturn {}\n\t\t}\n\n\t\tCommandService.fakeCommand('yarn clean.build', {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasCleanBuildCalled = true\n\t\t\t},\n\t\t})\n\n\t\tlet wasBuildDevCalled = false\n\n\t\tCommandService.fakeCommand('yarn build.dev', {\n\t\t\tcode: 0,\n\t\t\tcallback: () => {\n\t\t\t\twasBuildDevCalled = true\n\t\t\t},\n\t\t})\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isFalsy(results.errors)\n\t\tassert.isTrue(wasCleanBuildCalled)\n\t\tassert.isTrue(wasBuildDevCalled)\n\t}\n\n\t@test()\n\tprotected static async writesViewPlugin() {\n\t\tawait this.FeatureFixture().installCachedFeatures('views')\n\n\t\tconst plugin = this.getViewsPluginPath()\n\t\tassert.isTrue(diskUtil.doesFileExist(plugin))\n\n\t\tdiskUtil.deleteFile(plugin)\n\n\t\tassert.isFalse(diskUtil.doesFileExist(plugin))\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isTrue(diskUtil.doesFileExist(plugin))\n\t}\n\n\t@test('sync with errors installed')\n\t@test('sync with errors not installed', false)\n\tprotected static async upgradeSyncsErrors(isInstalled = true) {\n\t\tawait this.FeatureFixture().installCachedFeatures(\n\t\t\tisInstalled ? 'errors' : 'schemas'\n\t\t)\n\n\t\tlet wasHit = false\n\n\t\tSyncAction.prototype.execute = async () => {\n\t\t\twasHit = true\n\t\t\treturn {}\n\t\t}\n\n\t\tthis.disableCleanBuildAndYarnAdd()\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isEqual(wasHit, isInstalled)\n\t}\n\n\t@test()\n\tprotected static async resetsErrorPluginInSkill() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tconst { plugin, expectedContents } = this.destroyErrorPlugin()\n\n\t\tawait this.disableCleanBuildAndYarnAdd()\n\n\t\tconst promise = this.Action('node', 'upgrade').execute({\n\t\t\tupgradeMode: 'askForChanged',\n\t\t})\n\n\t\tawait this.waitForInput()\n\t\tawait this.ui.sendInput('overwrite')\n\n\t\tawait promise\n\n\t\tconst actualContents = diskUtil.readFile(plugin)\n\n\t\tassert.isEqual(actualContents, expectedContents)\n\t}\n\n\t@test()\n\tprotected static async resetsErrorPluginWhenErrorInstalled() {\n\t\tawait this.FeatureFixture().installCachedFeatures('errors')\n\n\t\tawait this.Action('error', 'create').execute({\n\t\t\tnameReadable: 'Test pass',\n\t\t\tnameCamel: 'testPass',\n\t\t})\n\n\t\tconst { plugin, expectedContents } = this.destroyErrorPlugin()\n\n\t\tthis.disableCleanAndBuild()\n\n\t\tconst results = await this.Action('node', 'upgrade').execute({\n\t\t\tupgradeMode: 'askForChanged',\n\t\t})\n\n\t\tassert.isFalsy(results.errors)\n\t\tconst actualContents = diskUtil.readFile(plugin)\n\n\t\tassert.isEqual(actualContents, expectedContents)\n\t}\n\n\tprivate static destroyErrorPlugin() {\n\t\tconst plugin = this.resolveHashSprucePath('errors', 'options.types.ts')\n\t\tconst expectedContents = diskUtil.readFile(plugin)\n\n\t\tdiskUtil.writeFile(plugin, 'waka')\n\t\treturn { plugin, expectedContents }\n\t}\n\n\tprivate static getViewsPluginPath() {\n\t\treturn this.resolveHashSprucePath('features', 'view.plugin.ts')\n\t}\n\n\tprotected static assertViewPluginNotWritten() {\n\t\tassert.isFalse(diskUtil.doesFileExist(this.getViewsPluginPath()))\n\t}\n\n\tprivate static disableCleanBuildAndYarnAdd() {\n\t\tthis.disableCleanAndBuild()\n\n\t\tCommandService.fakeCommand(/yarn.*?add/gis, {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\tprivate static disableCleanAndBuild() {\n\t\tCommandService.fakeCommand('yarn clean.build', {\n\t\t\tcode: 0,\n\t\t})\n\n\t\tCommandService.fakeCommand('yarn build.dev', {\n\t\t\tcode: 0,\n\t\t})\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ var UpgradingASkill4Test = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtil
|
|
|
43
43
|
_context.next = 2;
|
|
44
44
|
return (0, _get2["default"])((0, _getPrototypeOf2["default"])(UpgradingASkill4Test), "beforeEach", this).call(this);
|
|
45
45
|
case 2:
|
|
46
|
-
_CommandService["default"].fakeCommand(new RegExp(/
|
|
46
|
+
_CommandService["default"].fakeCommand(new RegExp(/rebuild/gi), {
|
|
47
47
|
code: 0
|
|
48
48
|
});
|
|
49
49
|
case 3:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpgradingASkill4.test.js","names":["UpgradingASkill4Test","test","CommandService","fakeCommand","RegExp","code","FeatureFixture","installCachedFeatures","features","Service","process","cwd","get","pkg","checks","feat","nodeModule","path","resolveHashSprucePath","plugin","diskUtil","doesFileExist","undefined","push","check","unset","deleteFile","Action","execute","assert","isTruthy","isTrue","cli","skillFeature","getFeature","scripts","isEqual","assertSandboxListenerNotWritten","set","value","promise","waitForInput","last","ui","getLastInvocation","command","sendInput","isNotEqual","listeners","resolvePath","doesDirExist","matches","fsUtil","readdirSync","isLength","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/upgrading/UpgradingASkill4.test.ts"],"sourcesContent":["import fsUtil from 'fs'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport CommandService from '../../../services/CommandService'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\n\nexport default class UpgradingASkill4Test extends AbstractCliTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tCommandService.fakeCommand(new RegExp(/
|
|
1
|
+
{"version":3,"file":"UpgradingASkill4.test.js","names":["UpgradingASkill4Test","test","CommandService","fakeCommand","RegExp","code","FeatureFixture","installCachedFeatures","features","Service","process","cwd","get","pkg","checks","feat","nodeModule","path","resolveHashSprucePath","plugin","diskUtil","doesFileExist","undefined","push","check","unset","deleteFile","Action","execute","assert","isTruthy","isTrue","cli","skillFeature","getFeature","scripts","isEqual","assertSandboxListenerNotWritten","set","value","promise","waitForInput","last","ui","getLastInvocation","command","sendInput","isNotEqual","listeners","resolvePath","doesDirExist","matches","fsUtil","readdirSync","isLength","AbstractCliTest"],"sources":["../../../../src/__tests__/behavioral/upgrading/UpgradingASkill4.test.ts"],"sourcesContent":["import fsUtil from 'fs'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport CommandService from '../../../services/CommandService'\nimport AbstractCliTest from '../../../tests/AbstractCliTest'\n\nexport default class UpgradingASkill4Test extends AbstractCliTest {\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tCommandService.fakeCommand(new RegExp(/rebuild/gis), {\n\t\t\tcode: 0,\n\t\t})\n\t}\n\n\t@test()\n\tprotected static async restoresMissingPackagesAndPlugins() {\n\t\tawait this.FeatureFixture().installCachedFeatures('views')\n\n\t\tconst features = this.Service('pkg', process.cwd()).get(\n\t\t\t'testSkillCache.everything'\n\t\t)\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst checks: { nodeModule?: string; plugin?: string }[] = []\n\n\t\tfor (const feat of features) {\n\t\t\tconst { code } = feat\n\t\t\tconst nodeModule = `@sprucelabs/spruce-${code}-plugin`\n\t\t\tconst path = this.resolveHashSprucePath('features', `${code}.plugin.ts`)\n\t\t\tconst plugin = diskUtil.doesFileExist(path) ? path : undefined\n\n\t\t\tchecks.push({\n\t\t\t\tnodeModule: pkg.get(['dependencies', nodeModule])\n\t\t\t\t\t? nodeModule\n\t\t\t\t\t: undefined,\n\t\t\t\tplugin,\n\t\t\t})\n\t\t}\n\n\t\tfor (const check of checks) {\n\t\t\tif (check.nodeModule) {\n\t\t\t\tpkg.unset(['dependencies', check.nodeModule])\n\t\t\t}\n\t\t\tif (check.plugin) {\n\t\t\t\tdiskUtil.deleteFile(check.plugin)\n\t\t\t}\n\t\t}\n\n\t\tCommandService.fakeCommand(/yarn clean/, { code: 0 })\n\t\tCommandService.fakeCommand(/yarn build.dev/, { code: 0 })\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tfor (const check of checks) {\n\t\t\tif (check.nodeModule) {\n\t\t\t\tassert.isTruthy(\n\t\t\t\t\tpkg.get(['dependencies', check.nodeModule]),\n\t\t\t\t\t`${check.nodeModule} was not added back as a dependencies.`\n\t\t\t\t)\n\t\t\t}\n\t\t\tif (check.plugin) {\n\t\t\t\tassert.isTrue(\n\t\t\t\t\tdiskUtil.doesFileExist(check.plugin),\n\t\t\t\t\t`${check.plugin} was not rewritten.`\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n\n\t@test()\n\tprotected static async doesNotAskIfNewScriptsAreAddedToSkillFeature() {\n\t\tconst cli = await this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tconst pkg = this.Service('pkg')\n\n\t\tconst skillFeature = cli.getFeature('skill')\n\t\t//@ts-ignore\n\t\tskillFeature.scripts['taco'] = 'bravo'\n\n\t\tawait this.Action('node', 'upgrade').execute({})\n\n\t\tassert.isEqual(pkg.get(['scripts', 'taco']), 'bravo')\n\n\t\tthis.assertSandboxListenerNotWritten()\n\t}\n\n\t@test()\n\tprotected static async canOverwriteMultipleChangedScript() {\n\t\tawait this.FeatureFixture().installCachedFeatures('skills')\n\n\t\tconst pkg = this.Service('pkg')\n\t\tpkg.set({ path: ['scripts', 'build.dev'], value: 'taco' })\n\t\tpkg.set({ path: ['scripts', 'watch.build.dev'], value: 'taco' })\n\n\t\tconst promise = this.Action('node', 'upgrade').execute({})\n\n\t\tawait this.waitForInput()\n\n\t\tlet last = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(last.command, 'prompt')\n\t\tawait this.ui.sendInput('overwrite')\n\n\t\tlast = this.ui.getLastInvocation()\n\n\t\tassert.isEqual(last.command, 'prompt')\n\t\tawait this.ui.sendInput('overwrite')\n\n\t\tawait promise\n\n\t\tassert.isNotEqual(pkg.get(['scripts', 'build.dev']), 'taco')\n\t\tassert.isNotEqual(pkg.get(['scripts', 'watch.build.dev']), 'taco')\n\t}\n\n\tprotected static assertSandboxListenerNotWritten() {\n\t\tconst listeners = this.resolvePath('src', 'listeners')\n\t\tif (!diskUtil.doesDirExist(listeners)) {\n\t\t\treturn\n\t\t}\n\t\tconst matches = fsUtil.readdirSync(listeners)\n\t\tassert.isLength(\n\t\t\tmatches,\n\t\t\t0,\n\t\t\t'A sandbox listeners was written and it should not have been.'\n\t\t)\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -8,5 +8,5 @@ export default class FeatureCommandExecuterContTest extends AbstractSchemaTest {
|
|
|
8
8
|
protected static shouldAddListenerWithoutBreakingOnSkill(): Promise<void>;
|
|
9
9
|
private static finishBuildingUpToNamingNewError;
|
|
10
10
|
private static startBuildingNewErrorUntilOptionalDependencies;
|
|
11
|
-
private static
|
|
11
|
+
private static fakeInstallCommands;
|
|
12
12
|
}
|
|
@@ -74,7 +74,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
74
74
|
while (1) {
|
|
75
75
|
switch (_context2.prev = _context2.next) {
|
|
76
76
|
case 0:
|
|
77
|
-
this.
|
|
77
|
+
this.fakeInstallCommands();
|
|
78
78
|
executer = this.Action('skill', 'create', {
|
|
79
79
|
shouldAutoHandleDependencies: true
|
|
80
80
|
});
|
|
@@ -199,7 +199,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
199
199
|
while (1) {
|
|
200
200
|
switch (_context4.prev = _context4.next) {
|
|
201
201
|
case 0:
|
|
202
|
-
this.
|
|
202
|
+
this.fakeInstallCommands();
|
|
203
203
|
executer = this.Action('skill', 'create', {
|
|
204
204
|
shouldAutoHandleDependencies: true
|
|
205
205
|
});
|
|
@@ -235,7 +235,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
235
235
|
while (1) {
|
|
236
236
|
switch (_context5.prev = _context5.next) {
|
|
237
237
|
case 0:
|
|
238
|
-
this.
|
|
238
|
+
this.fakeInstallCommands();
|
|
239
239
|
executer = this.Action('schema', 'create', {
|
|
240
240
|
shouldAutoHandleDependencies: true
|
|
241
241
|
});
|
|
@@ -268,7 +268,7 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
268
268
|
while (1) {
|
|
269
269
|
switch (_context6.prev = _context6.next) {
|
|
270
270
|
case 0:
|
|
271
|
-
this.
|
|
271
|
+
this.fakeInstallCommands();
|
|
272
272
|
_context6.next = 3;
|
|
273
273
|
return this.FeatureFixture().installCachedFeatures('schemas');
|
|
274
274
|
case 3:
|
|
@@ -280,18 +280,30 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
280
280
|
return this.waitForInput();
|
|
281
281
|
case 7:
|
|
282
282
|
_context6.next = 9;
|
|
283
|
-
return this.ui.sendInput('
|
|
283
|
+
return this.ui.sendInput('Y');
|
|
284
284
|
case 9:
|
|
285
285
|
_context6.next = 11;
|
|
286
|
-
return this.
|
|
286
|
+
return this.waitForInput();
|
|
287
287
|
case 11:
|
|
288
288
|
_context6.next = 13;
|
|
289
|
-
return
|
|
289
|
+
return this.ui.sendInput('\n');
|
|
290
290
|
case 13:
|
|
291
|
+
_context6.next = 15;
|
|
292
|
+
return this.waitForInput();
|
|
293
|
+
case 15:
|
|
294
|
+
_context6.next = 17;
|
|
295
|
+
return this.ui.sendInput('skill');
|
|
296
|
+
case 17:
|
|
297
|
+
_context6.next = 19;
|
|
298
|
+
return this.ui.sendInput('will-boot');
|
|
299
|
+
case 19:
|
|
300
|
+
_context6.next = 21;
|
|
301
|
+
return promise;
|
|
302
|
+
case 21:
|
|
291
303
|
results = _context6.sent;
|
|
292
304
|
version = _spruceSkillUtils.versionUtil.generateVersion().dirValue;
|
|
293
305
|
_test["default"].assertFileByNameInGeneratedFiles("will-boot.".concat(version, ".listener.ts"), results.files);
|
|
294
|
-
case
|
|
306
|
+
case 24:
|
|
295
307
|
case "end":
|
|
296
308
|
return _context6.stop();
|
|
297
309
|
}
|
|
@@ -419,9 +431,9 @@ var FeatureCommandExecuterContTest = (_dec = (0, _testUtils.test)(), _dec2 = (0,
|
|
|
419
431
|
return startBuildingNewErrorUntilOptionalDependencies;
|
|
420
432
|
}()
|
|
421
433
|
}, {
|
|
422
|
-
key: "
|
|
423
|
-
value: function
|
|
424
|
-
_CommandService["default"].fakeCommand(new RegExp(/npm
|
|
434
|
+
key: "fakeInstallCommands",
|
|
435
|
+
value: function fakeInstallCommands() {
|
|
436
|
+
_CommandService["default"].fakeCommand(new RegExp(/yarn|npm/gi), {
|
|
425
437
|
code: 0
|
|
426
438
|
});
|
|
427
439
|
}
|