@sprucelabs/spruce-cli 21.0.12 → 21.0.14
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 +16 -0
- package/build/__tests__/behavioral/tests/TestsInModulesDontUseLoginDecorator.test.d.ts +8 -0
- package/build/__tests__/behavioral/tests/TestsInModulesDontUseLoginDecorator.test.js +72 -0
- package/build/__tests__/behavioral/tests/TestsInModulesDontUseLoginDecorator.test.js.map +1 -0
- package/build/__tests__/implementation/FeatureCommandAttacher.test.d.ts +1 -0
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js +18 -1
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
- package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
- package/build/features/ActionExecuter.js +1 -1
- package/build/features/ActionExecuter.js.map +1 -1
- package/build/features/ActionQuestionAsker.d.ts +21 -16
- package/build/features/ActionQuestionAsker.js +6 -2
- package/build/features/ActionQuestionAsker.js.map +1 -1
- package/build/features/FeatureCommandAttacher.d.ts +10 -1
- package/build/features/FeatureCommandAttacher.js +3 -1
- package/build/features/FeatureCommandAttacher.js.map +1 -1
- package/build/features/skill/SkillFeature.js +1 -0
- package/build/features/skill/SkillFeature.js.map +1 -1
- package/build/features/test/TestFeature.js +0 -1
- package/build/features/test/TestFeature.js.map +1 -1
- package/build/features/test/actions/CreateAction.d.ts +2 -2
- package/build/features/test/actions/CreateAction.js +4 -4
- package/build/features/test/actions/CreateAction.js.map +1 -1
- package/build/features/test/writers/TestWriter.d.ts +2 -2
- package/build/features/test/writers/TestWriter.js +3 -3
- package/build/features/test/writers/TestWriter.js.map +1 -1
- package/build/writers/WriterFactory.d.ts +2 -2
- package/build/writers/WriterFactory.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/behavioral/tests/TestsInModulesDontUseLoginDecorator.test.ts +76 -0
- package/src/__tests__/implementation/FeatureCommandAttacher.test.ts +24 -3
- package/src/__tests__/implementation/OrganizationStore.test.ts +1 -0
- package/src/features/ActionExecuter.ts +2 -2
- package/src/features/ActionQuestionAsker.ts +49 -19
- package/src/features/FeatureCommandAttacher.ts +15 -9
- package/src/features/skill/SkillFeature.ts +1 -0
- package/src/features/test/TestFeature.ts +0 -1
- package/src/features/test/actions/CreateAction.ts +11 -10
- package/src/features/test/writers/TestWriter.ts +2 -2
- package/src/writers/WriterFactory.ts +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [21.0.14](https://github.com/sprucelabsai-community/spruce-cli-workspace/compare/v21.0.13...v21.0.14) (2024-05-14)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [21.0.13](https://github.com/sprucelabsai-community/spruce-cli-workspace/compare/v21.0.12...v21.0.13) (2024-05-14)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
## [21.0.12](https://github.com/sprucelabsai-community/spruce-cli-workspace/compare/v21.0.11...v21.0.12) (2024-05-13)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @sprucelabs/spruce-cli
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import AbstractCliTest from '../../../tests/AbstractCliTest';
|
|
2
|
+
export default class TestsInModulesDontUseLoginDecoratorTest extends AbstractCliTest {
|
|
3
|
+
protected static beforeEach(): Promise<void>;
|
|
4
|
+
protected static creatingATestInModuleDoesNotComeWithDecorator(): Promise<void>;
|
|
5
|
+
protected static creatingATestInSkillComesWithLoginDecorator(): Promise<void>;
|
|
6
|
+
private static createTestValidateAndGetContents;
|
|
7
|
+
private static installSkill;
|
|
8
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const spruce_skill_utils_1 = require("@sprucelabs/spruce-skill-utils");
|
|
13
|
+
const test_utils_1 = require("@sprucelabs/test-utils");
|
|
14
|
+
const ActionQuestionAsker_1 = __importDefault(require("../../../features/ActionQuestionAsker"));
|
|
15
|
+
const AbstractCliTest_1 = __importDefault(require("../../../tests/AbstractCliTest"));
|
|
16
|
+
const ABSTRACT_SPRUCE_TEST_IDX = '-1';
|
|
17
|
+
class TestsInModulesDontUseLoginDecoratorTest extends AbstractCliTest_1.default {
|
|
18
|
+
static async beforeEach() {
|
|
19
|
+
await super.beforeEach();
|
|
20
|
+
ActionQuestionAsker_1.default.Class = StubQuestionAsker;
|
|
21
|
+
}
|
|
22
|
+
static async creatingATestInModuleDoesNotComeWithDecorator() {
|
|
23
|
+
await this.installSkill('testsInNodeModule');
|
|
24
|
+
const contents = await this.createTestValidateAndGetContents();
|
|
25
|
+
test_utils_1.assert.doesNotInclude(contents, 'spruce-test-fixtures');
|
|
26
|
+
}
|
|
27
|
+
static async creatingATestInSkillComesWithLoginDecorator() {
|
|
28
|
+
await this.installSkill('tests');
|
|
29
|
+
const contents = await this.createTestValidateAndGetContents();
|
|
30
|
+
test_utils_1.assert.doesInclude(contents, 'spruce-test-fixtures');
|
|
31
|
+
test_utils_1.assert.doesInclude(contents, /^@fake\.login\(\)/m);
|
|
32
|
+
}
|
|
33
|
+
static async createTestValidateAndGetContents() {
|
|
34
|
+
const promise = this.Action('test', 'create').execute({
|
|
35
|
+
type: 'behavioral',
|
|
36
|
+
nameReadable: 'test',
|
|
37
|
+
nameCamel: 'test',
|
|
38
|
+
});
|
|
39
|
+
await this.ui.waitForInput();
|
|
40
|
+
await this.ui.sendInput(ABSTRACT_SPRUCE_TEST_IDX);
|
|
41
|
+
const results = await promise;
|
|
42
|
+
await this.assertValidActionResponseFiles(results);
|
|
43
|
+
const testFile = results.files[0].path;
|
|
44
|
+
const contents = spruce_skill_utils_1.diskUtil.readFile(testFile);
|
|
45
|
+
return contents;
|
|
46
|
+
}
|
|
47
|
+
static async installSkill(key) {
|
|
48
|
+
await this.FeatureFixture().installCachedFeatures(key);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.default = TestsInModulesDontUseLoginDecoratorTest;
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, test_utils_1.test)()
|
|
54
|
+
], TestsInModulesDontUseLoginDecoratorTest, "creatingATestInModuleDoesNotComeWithDecorator", null);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, test_utils_1.test)()
|
|
57
|
+
], TestsInModulesDontUseLoginDecoratorTest, "creatingATestInSkillComesWithLoginDecorator", null);
|
|
58
|
+
class StubQuestionAsker {
|
|
59
|
+
async installOrMarkAsSkippedMissingDependencies() {
|
|
60
|
+
return {};
|
|
61
|
+
}
|
|
62
|
+
async askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(_isInstalled, options) {
|
|
63
|
+
return options ?? {};
|
|
64
|
+
}
|
|
65
|
+
async askAboutMissingActionOptions() {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
async installOurFeature() {
|
|
69
|
+
return {};
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=TestsInModulesDontUseLoginDecorator.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestsInModulesDontUseLoginDecorator.test.js","sourceRoot":"","sources":["../../../../src/__tests__/behavioral/tests/TestsInModulesDontUseLoginDecorator.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uEAAyD;AACzD,uDAAqD;AACrD,gGAG8C;AAE9C,qFAA4D;AAE5D,MAAM,wBAAwB,GAAG,IAAI,CAAA;AAErC,MAAqB,uCAAwC,SAAQ,yBAAe;IACtE,MAAM,CAAC,KAAK,CAAC,UAAU;QAC7B,MAAM,KAAK,CAAC,UAAU,EAAE,CAAA;QACxB,6BAAuB,CAAC,KAAK,GAAG,iBAAiB,CAAA;IACrD,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,6CAA6C;QAChE,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAA;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gCAAgC,EAAE,CAAA;QAC9D,mBAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAA;IAC3D,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,2CAA2C;QAC9D,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gCAAgC,EAAE,CAAA;QAC9D,mBAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAA;QACpD,mBAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;IACtD,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,gCAAgC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC;YAClD,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,MAAM;YACpB,SAAS,EAAE,MAAM;SACpB,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAA;QAC5B,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAA;QAEjD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAA;QAE7B,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAA;QAElD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACvC,MAAM,QAAQ,GAAG,6BAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAW;QACzC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAC1D,CAAC;CACJ;AA3CD,0DA2CC;AApC0B;IADtB,IAAA,iBAAI,GAAE;kGAKN;AAGsB;IADtB,IAAA,iBAAI,GAAE;gGAMN;AA0BL,MAAM,iBAAiB;IACZ,KAAK,CAAC,yCAAyC;QAClD,OAAO,EAAE,CAAA;IACb,CAAC;IAEM,KAAK,CAAC,oDAAoD,CAC7D,YAAqB,EACrB,OAA6C;QAE7C,OAAO,OAAO,IAAI,EAAE,CAAA;IACxB,CAAC;IAEM,KAAK,CAAC,4BAA4B;QACrC,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC1B,OAAO,EAAE,CAAA;IACb,CAAC;CACJ"}
|
|
@@ -12,6 +12,7 @@ export default class FeatureCommandAttacherTest extends AbstractCliTest {
|
|
|
12
12
|
protected static handlesAliases(): Promise<void>;
|
|
13
13
|
protected static testActionWithSameNameAsFeature(): Promise<void>;
|
|
14
14
|
protected static optionsCanBeOverridden(): Promise<void>;
|
|
15
|
+
protected static doesNotCrashWhenRenderingResultsWithoutPackageJson(): Promise<void>;
|
|
15
16
|
private static attachSchemaFeature;
|
|
16
17
|
private static MockCommanderProgram;
|
|
17
18
|
}
|
|
@@ -21,7 +21,7 @@ class FeatureCommandAttacherTest extends AbstractCliTest_1.default {
|
|
|
21
21
|
await super.beforeEach();
|
|
22
22
|
this.program = this.MockCommanderProgram();
|
|
23
23
|
const actionExecuter = this.ActionExecuter();
|
|
24
|
-
this.attacher = new
|
|
24
|
+
this.attacher = new SpyFeatureCommandAttacher({
|
|
25
25
|
pkgService: this.Service('pkg'),
|
|
26
26
|
program: this.program,
|
|
27
27
|
ui: this.ui,
|
|
@@ -112,6 +112,15 @@ class FeatureCommandAttacherTest extends AbstractCliTest_1.default {
|
|
|
112
112
|
const personPath = this.resolveHashSprucePath('schemas', 'spruce', 'v2020_07_22', 'person.schema.ts');
|
|
113
113
|
test_utils_1.assert.isFalse(spruce_skill_utils_1.diskUtil.doesFileExist(personPath));
|
|
114
114
|
}
|
|
115
|
+
static async doesNotCrashWhenRenderingResultsWithoutPackageJson() {
|
|
116
|
+
this.attacher.clearAndRenderResults({
|
|
117
|
+
action: 'test',
|
|
118
|
+
actionCode: 'test',
|
|
119
|
+
featureCode: 'test',
|
|
120
|
+
results: {},
|
|
121
|
+
totalTime: 0,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
115
124
|
static async attachSchemaFeature() {
|
|
116
125
|
const cli = await this.Cli();
|
|
117
126
|
const schemaFeature = cli.getFeature('schema');
|
|
@@ -149,4 +158,12 @@ __decorate([
|
|
|
149
158
|
__decorate([
|
|
150
159
|
(0, test_utils_1.test)()
|
|
151
160
|
], FeatureCommandAttacherTest, "optionsCanBeOverridden", null);
|
|
161
|
+
__decorate([
|
|
162
|
+
(0, test_utils_1.test)()
|
|
163
|
+
], FeatureCommandAttacherTest, "doesNotCrashWhenRenderingResultsWithoutPackageJson", null);
|
|
164
|
+
class SpyFeatureCommandAttacher extends FeatureCommandAttacher_1.default {
|
|
165
|
+
clearAndRenderResults(options) {
|
|
166
|
+
return super.clearAndRenderResults(options);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
152
169
|
//# sourceMappingURL=FeatureCommandAttacher.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureCommandAttacher.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/FeatureCommandAttacher.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uEAAyD;AACzD,uDAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"FeatureCommandAttacher.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/FeatureCommandAttacher.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationStore.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/OrganizationStore.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uDAAqD;AACrD,kFAAyD;AAEzD,MAAqB,qBAAsB,SAAQ,yBAAe;IAEvC,AAAb,MAAM,CAAC,KAAK,CAAC,cAAc;QACjC,mBAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;IAC/C,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,4BAA4B;QAC/C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC,WAAW,CAAC;YACxD,IAAI,EAAE,YAAY;SACrB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,oBAAoB,CAAC;YAC5D,IAAI,EAAE,aAAa;SACtB,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAChC,cAAc,CACjB,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QAEzC,mBAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC/B,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC,WAAW,CAAC;YACxD,IAAI,EAAE,YAAY;SACrB,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,oBAAoB,EAAE,CAAA;QAEtE,mBAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAE/B,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAE3D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,oBAAoB,EAAE,CAAA;QAEvE,mBAAM,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACvC,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC,WAAW,CAAC;YACxD,IAAI,EAAE,YAAY;SACrB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,oBAAoB,CAAC;YAC5D,IAAI,EAAE,aAAa;SACtB,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,0BAA0B,CACvD,KAAK,CAAC,EAAE,EACR,GAAG,CAAC,EAAE,CACT,CAAA;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAChC,cAAc,CACjB,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QACzC,mBAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAC9B,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"OrganizationStore.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/OrganizationStore.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,7 +53,7 @@ class ActionExecuter {
|
|
|
53
53
|
}
|
|
54
54
|
action_utility_1.default.assertNoErrorsInResponse(willExecuteResults);
|
|
55
55
|
const feature = installer.getFeature(featureCode);
|
|
56
|
-
const asker =
|
|
56
|
+
const asker = ActionQuestionAsker_1.default.Asker({
|
|
57
57
|
featureInstaller: installer,
|
|
58
58
|
feature,
|
|
59
59
|
actionCode,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionExecuter.js","sourceRoot":"","sources":["../../src/features/ActionExecuter.ts"],"names":[],"mappings":";;;;;AAAA,uEAAkE;AAClE,yDAAgC;AAChC,wEAA+C;AAG/C,iFAAoD;AAEpD,
|
|
1
|
+
{"version":3,"file":"ActionExecuter.js","sourceRoot":"","sources":["../../src/features/ActionExecuter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,21 @@
|
|
|
1
|
-
import { Schema, SchemaPartialValues } from '@sprucelabs/schema';
|
|
1
|
+
import { Schema, SchemaValues, SchemaPartialValues } from '@sprucelabs/schema';
|
|
2
2
|
import { GraphicsInterface } from '../types/cli.types';
|
|
3
3
|
import AbstractFeature from './AbstractFeature';
|
|
4
4
|
import FeatureInstaller from './FeatureInstaller';
|
|
5
5
|
import { FeatureCode, FeatureInstallResponse, FeatureAction, FeatureMap } from './features.types';
|
|
6
|
-
export default class
|
|
6
|
+
export default class ActionQuestionAskerImpl<F extends FeatureCode = FeatureCode> implements ActionQuestionAsker<F> {
|
|
7
7
|
private ui;
|
|
8
|
+
static Class?: new (options: ActionQuestionAskerOptions) => ActionQuestionAsker<any>;
|
|
8
9
|
private featureInstaller;
|
|
9
10
|
private actionCode;
|
|
10
11
|
private feature;
|
|
11
12
|
private shouldAutoHandleDependencies;
|
|
12
|
-
constructor(options:
|
|
13
|
-
|
|
14
|
-
featureInstaller: FeatureInstaller;
|
|
15
|
-
actionCode: string;
|
|
16
|
-
feature: AbstractFeature;
|
|
17
|
-
shouldAutoHandleDependencies: boolean;
|
|
18
|
-
});
|
|
13
|
+
protected constructor(options: ActionQuestionAskerOptions);
|
|
14
|
+
static Asker(options: ActionQuestionAskerOptions): ActionQuestionAsker<any>;
|
|
19
15
|
installOrMarkAsSkippedMissingDependencies(): Promise<FeatureInstallResponse>;
|
|
20
16
|
private getDependenciesNotInstalled;
|
|
21
|
-
askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(isInstalled: boolean, options
|
|
22
|
-
|
|
23
|
-
name?: any;
|
|
24
|
-
description?: any;
|
|
25
|
-
destination?: any;
|
|
26
|
-
}>;
|
|
27
|
-
askAboutMissingActionOptions(action: FeatureAction<Schema>, options: (Record<string, any> & FeatureCommandExecuteOptions<F>) | undefined): Promise<Pick<import("@sprucelabs/schema").SchemaStaticValues<Schema, false, never, import("@sprucelabs/schema").StaticSchemaAllValues<Schema, false>>, never> | undefined>;
|
|
17
|
+
askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(isInstalled: boolean, options?: Record<string, any> & FeatureCommandExecuteOptions<F>): Promise<Record<string, any> & FeatureCommandExecuteOptions<F>>;
|
|
18
|
+
askAboutMissingActionOptions<S extends Schema>(action: FeatureAction<S>, options?: Record<string, any> & FeatureCommandExecuteOptions<F>): Promise<SchemaValues<S> | undefined>;
|
|
28
19
|
installOurFeature(installOptions: Record<string, any>): Promise<FeatureInstallResponse>;
|
|
29
20
|
private renderHeading;
|
|
30
21
|
private installOrMarkAsSkippedMissingDependency;
|
|
@@ -33,4 +24,18 @@ export default class ActionOptionAsker<F extends FeatureCode = FeatureCode> {
|
|
|
33
24
|
private generateConfirmInstallMessage;
|
|
34
25
|
}
|
|
35
26
|
type FeatureCommandExecuteOptions<F extends FeatureCode, S extends Schema | undefined = FeatureMap[F]['optionsSchema']> = S extends Schema ? SchemaPartialValues<S> : undefined;
|
|
27
|
+
interface ActionQuestionAskerOptions {
|
|
28
|
+
ui: GraphicsInterface;
|
|
29
|
+
featureInstaller: FeatureInstaller;
|
|
30
|
+
actionCode: string;
|
|
31
|
+
feature: AbstractFeature;
|
|
32
|
+
shouldAutoHandleDependencies: boolean;
|
|
33
|
+
}
|
|
34
|
+
export type QuestionAskerOptionsOptions<F extends FeatureCode> = Record<string, any> & FeatureCommandExecuteOptions<F>;
|
|
35
|
+
export interface ActionQuestionAsker<F extends FeatureCode = FeatureCode> {
|
|
36
|
+
installOrMarkAsSkippedMissingDependencies(): Promise<FeatureInstallResponse>;
|
|
37
|
+
askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(isInstalled: boolean, options?: QuestionAskerOptionsOptions<F>): Promise<Record<string, any> & FeatureCommandExecuteOptions<F>>;
|
|
38
|
+
askAboutMissingActionOptions<S extends Schema>(action: FeatureAction<S>, options?: QuestionAskerOptionsOptions<F>): Promise<SchemaValues<S> | undefined>;
|
|
39
|
+
installOurFeature(installOptions: Record<string, any>): Promise<FeatureInstallResponse>;
|
|
40
|
+
}
|
|
36
41
|
export {};
|
|
@@ -9,8 +9,9 @@ const constants_1 = require("../constants");
|
|
|
9
9
|
const SpruceError_1 = __importDefault(require("../errors/SpruceError"));
|
|
10
10
|
const form_utility_1 = __importDefault(require("../utilities/form.utility"));
|
|
11
11
|
const feature_utilities_1 = __importDefault(require("./feature.utilities"));
|
|
12
|
-
class
|
|
12
|
+
class ActionQuestionAskerImpl {
|
|
13
13
|
ui;
|
|
14
|
+
static Class;
|
|
14
15
|
featureInstaller;
|
|
15
16
|
actionCode;
|
|
16
17
|
feature;
|
|
@@ -22,6 +23,9 @@ class ActionOptionAsker {
|
|
|
22
23
|
this.feature = options.feature;
|
|
23
24
|
this.shouldAutoHandleDependencies = options.shouldAutoHandleDependencies;
|
|
24
25
|
}
|
|
26
|
+
static Asker(options) {
|
|
27
|
+
return new (this.Class ?? ActionQuestionAskerImpl)(options);
|
|
28
|
+
}
|
|
25
29
|
async installOrMarkAsSkippedMissingDependencies() {
|
|
26
30
|
const notInstalled = await this.getDependenciesNotInstalled();
|
|
27
31
|
let response = {};
|
|
@@ -251,7 +255,7 @@ class ActionOptionAsker {
|
|
|
251
255
|
return `Before you can run \`${this.getCommandName()}\`, ${message} Don't worry, I'll walk you through it!`;
|
|
252
256
|
}
|
|
253
257
|
}
|
|
254
|
-
exports.default =
|
|
258
|
+
exports.default = ActionQuestionAskerImpl;
|
|
255
259
|
function s(array) {
|
|
256
260
|
return array.length === 1 ? '' : '';
|
|
257
261
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionQuestionAsker.js","sourceRoot":"","sources":["../../src/features/ActionQuestionAsker.ts"],"names":[],"mappings":";;;;;AACA,yDAAgC;AAChC,gFAAuD;AACvD,4CAAuC;AACvC,wEAA+C;AAE/C,6EAAgD;AAEhD,4EAA8C;AAS9C,MAAqB,
|
|
1
|
+
{"version":3,"file":"ActionQuestionAsker.js","sourceRoot":"","sources":["../../src/features/ActionQuestionAsker.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import PkgService from '../services/PkgService';
|
|
|
3
3
|
import { GraphicsInterface } from '../types/cli.types';
|
|
4
4
|
import AbstractFeature from './AbstractFeature';
|
|
5
5
|
import ActionExecuter from './ActionExecuter';
|
|
6
|
+
import { FeatureAction, FeatureActionResponse } from './features.types';
|
|
6
7
|
export default class FeatureCommandAttacher {
|
|
7
8
|
private program;
|
|
8
9
|
private ui;
|
|
@@ -16,9 +17,17 @@ export default class FeatureCommandAttacher {
|
|
|
16
17
|
});
|
|
17
18
|
attachFeature(feature: AbstractFeature): Promise<void>;
|
|
18
19
|
private attachCode;
|
|
19
|
-
|
|
20
|
+
protected clearAndRenderResults(options: ClearResultsAndRenderResultsOptions): void;
|
|
20
21
|
private clearAndRenderMasthead;
|
|
21
22
|
private attachOptions;
|
|
22
23
|
}
|
|
23
24
|
export type OptionOverrides = Record<string, Record<string, any>>;
|
|
24
25
|
export type BlockedCommands = Record<string, string>;
|
|
26
|
+
export interface ClearResultsAndRenderResultsOptions {
|
|
27
|
+
namespace?: string;
|
|
28
|
+
featureCode: string;
|
|
29
|
+
actionCode: string;
|
|
30
|
+
totalTime: number;
|
|
31
|
+
action: FeatureAction;
|
|
32
|
+
results: FeatureActionResponse;
|
|
33
|
+
}
|
|
@@ -69,7 +69,9 @@ class FeatureCommandAttacher {
|
|
|
69
69
|
this.ui.stopLoading();
|
|
70
70
|
this.ui.clear();
|
|
71
71
|
this.ui.renderActionSummary({
|
|
72
|
-
namespace: this.pkg.
|
|
72
|
+
namespace: this.pkg.doesExist()
|
|
73
|
+
? this.pkg.getSkillNamespace()
|
|
74
|
+
: undefined,
|
|
73
75
|
featureCode,
|
|
74
76
|
actionCode,
|
|
75
77
|
totalTime,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureCommandAttacher.js","sourceRoot":"","sources":["../../src/features/FeatureCommandAttacher.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FeatureCommandAttacher.js","sourceRoot":"","sources":["../../src/features/FeatureCommandAttacher.ts"],"names":[],"mappings":";;;;;AAAA,+CAAgE;AAEhE,wEAA+C;AAG/C,uFAA0D;AAC1D,yEAA4C;AAG5C,4EAA8C;AAG9C,MAAqB,sBAAsB;IAC/B,OAAO,CAA4B;IACnC,EAAE,CAAmB;IACrB,cAAc,CAAgB;IAC9B,GAAG,CAAY;IAEvB,YAAmB,OAKlB;QACG,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;QAEjE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,GAAG,GAAG,UAAU,CAAA;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACxC,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAAwB;QAC/C,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,uBAAuB,EAAE,CAAA;QAE3D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACxC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,IAAY,EAAE,OAAwB;QACrD,IAAI,UAAU,GAAG,2BAAY,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE7D,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAEvE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,UAAU,GAAG,OAAO,CAAC,KAAK,EAAY,CAAA;QAC1C,CAAC;QAED,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAE9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtC,CAAC;QAED,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;YAC9C,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;YAEnC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;YAEtC,MAAM,OAAO,GAAG,2BAAa,CAAC,oBAAoB,CAC9C,GAAG,IAAI,EACP,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,CAChD,CAAA;YAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;gBACjC,GAAG,OAAO;aACb,CAAC,CAAA;YAEF,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;YACpC,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;YAErC,IAAI,CAAC,qBAAqB,CAAC;gBACvB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,UAAU,EAAE,IAAI;gBAChB,SAAS;gBACT,OAAO;gBACP,MAAM;aACT,CAAC,CAAA;YAEF,OAAO,OAAc,CAAA;QACzB,CAAC,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,EAAE,WAAW,CAAA;QAErD,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAA;QAEnC,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACvC,CAAC;IACL,CAAC;IAES,qBAAqB,CAC3B,OAA4C;QAE5C,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;QAEvE,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAA;QACrB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QAEf,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC;YACxB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE;gBAC3B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;gBAC9B,CAAC,CAAC,SAAS;YACf,WAAW;YACX,UAAU;YACV,SAAS;YACT,MAAM;YACN,GAAG,OAAO;YACV,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,GAAG,UAAU,YAAY;SAC1D,CAAC,CAAA;IACN,CAAC;IAEO,sBAAsB,CAAC,MAA6B;QACxD,oBAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAChD,CAAC;IAEO,aAAa,CAAC,OAAmC,EAAE,MAAc;QACrE,MAAM,MAAM,GAAG,4BAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAEjD,IAAI,UAAU,GAAG,OAAO,CAAA;QAExB,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,EAAE,CAAA;QACtC,MAAM,OAAO,GAAG,2BAAY,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAE1D,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;YAC/B,IAAI,CAAC;gBACD,UAAU,GAAG,UAAU,CAAC,MAAM,CAC1B,OAAO,CAAC,IAAI,CAAC,EACb,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,CAAC,YAAY;oBACzB,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE;oBACpC,CAAC,CAAC,SAAS,CAClB,CAAA;YACL,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAChB,MAAM,IAAI,qBAAW,CAAC;oBAClB,YAAY;oBACZ,IAAI,EAAE,0BAA0B;oBAChC,SAAS,EAAE,IAAI;oBACf,EAAE,EAAE,MAAM,CAAC,QAAQ;oBACnB,aAAa,EAAE,GAAG;oBAClB,eAAe,EAAE,2BAA2B,OAAO,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,QAAQ,IAAI,IAAI,iBAAiB;iBAC7G,CAAC,CAAA;YACN,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;CACJ;AA3ID,yCA2IC"}
|
|
@@ -30,6 +30,7 @@ class SkillFeature extends AbstractFeature_1.default {
|
|
|
30
30
|
name: '@sprucelabs/mercury-types',
|
|
31
31
|
},
|
|
32
32
|
{ name: 'tsconfig-paths', isDev: true },
|
|
33
|
+
{ name: '@sprucelabs/spruce-test-fixtures@latest', isDev: true },
|
|
33
34
|
{ name: 'ts-node', isDev: true },
|
|
34
35
|
...universalDevDependencies_1.default,
|
|
35
36
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillFeature.js","sourceRoot":"","sources":["../../../src/features/skill/SkillFeature.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SkillFeature.js","sourceRoot":"","sources":["../../../src/features/skill/SkillFeature.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,6 @@ class TestFeature extends AbstractFeature_1.default {
|
|
|
21
21
|
{ name: '@sprucelabs/test@latest', isDev: true },
|
|
22
22
|
{ name: '@sprucelabs/test-utils@latest', isDev: true },
|
|
23
23
|
{ name: '@sprucelabs/jest-json-reporter@latest', isDev: true },
|
|
24
|
-
{ name: '@sprucelabs/spruce-test-fixtures@latest', isDev: true },
|
|
25
24
|
{ name: 'jest-circus', isDev: true },
|
|
26
25
|
{ name: 'jest', isDev: true },
|
|
27
26
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestFeature.js","sourceRoot":"","sources":["../../../src/features/test/TestFeature.ts"],"names":[],"mappings":";;;;;AAAA,uEAAkE;AAClE,uEAAyD;AACzD,2EAAkD;AAGlD,wFAA2D;AAC3D,yEAAuE;AACvE,iFAAwD;AAkBxD,MAAqB,WAAY,SAAQ,yBAAe;IAC7C,YAAY,GAAG,SAAS,CAAA;IACxB,WAAW,GAAG,iCAAiC,CAAA;IAC/C,IAAI,GAAgB,MAAM,CAAA;IAC1B,YAAY,GAAwB;QACvC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;QACpC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;KACrC,CAAA;IACM,mBAAmB,GAAiB;QACvC,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE;QAChD,EAAE,IAAI,EAAE,+BAA+B,EAAE,KAAK,EAAE,IAAI,EAAE;QACtD,EAAE,IAAI,EAAE,uCAAuC,EAAE,KAAK,EAAE,IAAI,EAAE;QAC9D,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"TestFeature.js","sourceRoot":"","sources":["../../../src/features/test/TestFeature.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { SpruceSchemas } from './../../../.spruce/schemas/schemas.types';
|
|
2
2
|
import AbstractAction from '../../AbstractAction';
|
|
3
3
|
import { FeatureActionResponse } from '../../features.types';
|
|
4
|
-
type OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema;
|
|
5
|
-
type Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions;
|
|
6
4
|
export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
7
5
|
optionsSchema: SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema;
|
|
8
6
|
invocationMessage: string;
|
|
@@ -12,4 +10,6 @@ export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
|
12
10
|
private optionallyInstallFeatureBasedOnSelection;
|
|
13
11
|
private buildParentClassFromCandidate;
|
|
14
12
|
}
|
|
13
|
+
type OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema;
|
|
14
|
+
type Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions;
|
|
15
15
|
export {};
|
|
@@ -15,10 +15,8 @@ class CreateAction extends AbstractAction_1.default {
|
|
|
15
15
|
const normalizedOptions = this.validateAndNormalizeOptions(options);
|
|
16
16
|
const { testDestinationDir, namePascal, nameCamel, type } = normalizedOptions;
|
|
17
17
|
let resolvedDestination = spruce_skill_utils_2.diskUtil.resolvePath(this.cwd, testDestinationDir, type);
|
|
18
|
-
this.ui.startLoading('Checking potential parent test classes');
|
|
19
|
-
const testFeature = this.parent;
|
|
20
|
-
this.ui.stopLoading();
|
|
21
18
|
let parentTestClass;
|
|
19
|
+
const testFeature = this.parent;
|
|
22
20
|
const candidates = await testFeature.buildParentClassCandidates();
|
|
23
21
|
if (spruce_skill_utils_2.diskUtil.doesDirExist(resolvedDestination)) {
|
|
24
22
|
resolvedDestination =
|
|
@@ -30,11 +28,13 @@ class CreateAction extends AbstractAction_1.default {
|
|
|
30
28
|
}
|
|
31
29
|
this.ui.startLoading('Generating test file...');
|
|
32
30
|
const writer = this.Writer('test');
|
|
33
|
-
const
|
|
31
|
+
const isTestFixturesInstalled = !!this.Service('pkg').get('devDependencies.@sprucelabs/spruce-test-fixtures');
|
|
32
|
+
const results = await writer.writeTest(resolvedDestination, {
|
|
34
33
|
...normalizedOptions,
|
|
35
34
|
type,
|
|
36
35
|
nameCamel,
|
|
37
36
|
parentTestClass,
|
|
37
|
+
isTestFixturesInstalled,
|
|
38
38
|
namePascal: namePascal ?? spruce_skill_utils_1.namesUtil.toPascal(nameCamel),
|
|
39
39
|
});
|
|
40
40
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateAction.js","sourceRoot":"","sources":["../../../../src/features/test/actions/CreateAction.ts"],"names":[],"mappings":";;;;;AAAA,gDAA2B;AAC3B,uEAA0D;AAC1D,uEAAyD;AAEzD,8HAAmG;AACnG,0EAAiD;
|
|
1
|
+
{"version":3,"file":"CreateAction.js","sourceRoot":"","sources":["../../../../src/features/test/actions/CreateAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TestOptions } from '@sprucelabs/spruce-templates';
|
|
2
2
|
import AbstractWriter from '../../../writers/AbstractWriter';
|
|
3
|
-
export default class
|
|
4
|
-
|
|
3
|
+
export default class TestWriter extends AbstractWriter {
|
|
4
|
+
writeTest(destinationDir: string, options: TestOptions & {
|
|
5
5
|
type: string;
|
|
6
6
|
}): Promise<import("../../../writers/AbstractWriter").WriteResults>;
|
|
7
7
|
}
|
|
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const path_1 = __importDefault(require("path"));
|
|
7
7
|
const AbstractWriter_1 = __importDefault(require("../../../writers/AbstractWriter"));
|
|
8
|
-
class
|
|
9
|
-
async
|
|
8
|
+
class TestWriter extends AbstractWriter_1.default {
|
|
9
|
+
async writeTest(destinationDir, options) {
|
|
10
10
|
const { namePascal } = options;
|
|
11
11
|
const filename = `${namePascal}.test.ts`;
|
|
12
12
|
const resolvedDestination = path_1.default.join(destinationDir, filename);
|
|
@@ -15,5 +15,5 @@ class TestGenerator extends AbstractWriter_1.default {
|
|
|
15
15
|
return results;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
exports.default =
|
|
18
|
+
exports.default = TestWriter;
|
|
19
19
|
//# sourceMappingURL=TestWriter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestWriter.js","sourceRoot":"","sources":["../../../../src/features/test/writers/TestWriter.ts"],"names":[],"mappings":";;;;;AAAA,gDAA2B;AAE3B,qFAA4D;AAE5D,MAAqB,
|
|
1
|
+
{"version":3,"file":"TestWriter.js","sourceRoot":"","sources":["../../../../src/features/test/writers/TestWriter.ts"],"names":[],"mappings":";;;;;AAAA,gDAA2B;AAE3B,qFAA4D;AAE5D,MAAqB,UAAW,SAAQ,wBAAc;IAC3C,KAAK,CAAC,SAAS,CAClB,cAAsB,EACtB,OAAuC;QAEvC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;QAC9B,MAAM,QAAQ,GAAG,GAAG,UAAU,UAAU,CAAA;QAExC,MAAM,mBAAmB,GAAG,cAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;QACnE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAEhD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACrD,mBAAmB,EACnB,WAAW,EACX,QAAQ,OAAO,CAAC,IAAI,QAAQ,CAC/B,CAAA;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;CACJ;AAnBD,6BAmBC"}
|
|
@@ -12,7 +12,7 @@ import SandboxWriter from '../features/sandbox/writers/SandboxWriter';
|
|
|
12
12
|
import SchemaWriter from '../features/schema/writers/SchemaWriter';
|
|
13
13
|
import SkillGenerator from '../features/skill/writers/SkillWriter';
|
|
14
14
|
import StoreWriter from '../features/store/writers/StoreWriter';
|
|
15
|
-
import
|
|
15
|
+
import TestWriter from '../features/test/writers/TestWriter';
|
|
16
16
|
import ViewWriter from '../features/view/writers/ViewWriter';
|
|
17
17
|
import VsCodeWriter from '../features/vscode/writers/VsCodeWriter';
|
|
18
18
|
import LintService from '../services/LintService';
|
|
@@ -42,7 +42,7 @@ export interface WriterMap {
|
|
|
42
42
|
event: EventWriter;
|
|
43
43
|
schema: SchemaWriter;
|
|
44
44
|
skill: SkillGenerator;
|
|
45
|
-
test:
|
|
45
|
+
test: TestWriter;
|
|
46
46
|
node: NodeWriter;
|
|
47
47
|
vscode: VsCodeWriter;
|
|
48
48
|
conversation: ConversationWriter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WriterFactory.js","sourceRoot":"","sources":["../../src/writers/WriterFactory.ts"],"names":[],"mappings":";;;;;AAEA,6GAAoF;AACpF,2FAAkE;AAClE,wFAA+D;AAC/D,wFAA+D;AAC/D,kFAAyD;AACzD,qFAA4D;AAC5D,uGAA8E;AAC9E,2FAAkE;AAClE,8FAAqE;AACrE,2FAAkE;AAClE,wFAAkE;AAClE,wFAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"WriterFactory.js","sourceRoot":"","sources":["../../src/writers/WriterFactory.ts"],"names":[],"mappings":";;;;;AAEA,6GAAoF;AACpF,2FAAkE;AAClE,wFAA+D;AAC/D,wFAA+D;AAC/D,kFAAyD;AACzD,qFAA4D;AAC5D,uGAA8E;AAC9E,2FAAkE;AAClE,8FAAqE;AACrE,2FAAkE;AAClE,wFAAkE;AAClE,wFAA+D;AAC/D,qFAA4D;AAC5D,qFAA4D;AAC5D,2FAAkE;AAMlE,MAAM,QAAQ,GAAG;IACb,KAAK,EAAE,qBAAW;IAClB,KAAK,EAAE,qBAAW;IAClB,MAAM,EAAE,sBAAY;IACpB,KAAK,EAAE,qBAAc;IACrB,IAAI,EAAE,oBAAU;IAChB,IAAI,EAAE,oBAAU;IAChB,MAAM,EAAE,sBAAY;IACpB,YAAY,EAAE,4BAAkB;IAChC,MAAM,EAAE,sBAAY;IACpB,OAAO,EAAE,uBAAa;IACtB,KAAK,EAAE,qBAAW;IAClB,IAAI,EAAE,oBAAU;IAChB,GAAG,EAAE,mBAAS;IACd,MAAM,EAAE,sBAAY;IACpB,UAAU,EAAE,0BAAgB;CAC/B,CAAA;AAED,MAAqB,aAAa;IACtB,SAAS,CAAW;IACpB,EAAE,CAAmB;IACrB,MAAM,CAAc;IACpB,QAAQ,CAAyB;IAEjC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAElC,YAAmB,OAKlB;QACG,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAEnD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAK;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAgB,EAAE,MAAW;QACtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;IAChC,CAAC;IAEM,MAAM,CACT,IAAO,EACP,OAEC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE1C,OAAO,IAAI,KAAK,CAAC;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,EAAE;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;SACrB,CAAiB,CAAA;IACtB,CAAC;;AA7CL,gCA8CC"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
]
|
|
19
19
|
},
|
|
20
20
|
"license": "MIT",
|
|
21
|
-
"version": "21.0.
|
|
21
|
+
"version": "21.0.14",
|
|
22
22
|
"bin": {
|
|
23
23
|
"spruce": "./build/index.js"
|
|
24
24
|
},
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"@sprucelabs/spruce-core-schemas": "^40.0.36",
|
|
86
86
|
"@sprucelabs/spruce-event-utils": "^40.0.43",
|
|
87
87
|
"@sprucelabs/spruce-skill-utils": "^31.0.45",
|
|
88
|
-
"@sprucelabs/spruce-templates": "^21.0.
|
|
88
|
+
"@sprucelabs/spruce-templates": "^21.0.14",
|
|
89
89
|
"@typescript-eslint/eslint-plugin": "^7.7.1",
|
|
90
90
|
"@typescript-eslint/parser": "^7.7.1",
|
|
91
91
|
"cfonts": "^3.2.0",
|
|
@@ -591,5 +591,5 @@
|
|
|
591
591
|
"open"
|
|
592
592
|
]
|
|
593
593
|
},
|
|
594
|
-
"gitHead": "
|
|
594
|
+
"gitHead": "544a261bfa731eb8cf0354c9eeadf94c7b2476dc"
|
|
595
595
|
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { diskUtil } from '@sprucelabs/spruce-skill-utils'
|
|
2
|
+
import { assert, test } from '@sprucelabs/test-utils'
|
|
3
|
+
import ActionQuestionAskerImpl, {
|
|
4
|
+
ActionQuestionAsker,
|
|
5
|
+
QuestionAskerOptionsOptions,
|
|
6
|
+
} from '../../../features/ActionQuestionAsker'
|
|
7
|
+
import { FeatureInstallResponse } from '../../../features/features.types'
|
|
8
|
+
import AbstractCliTest from '../../../tests/AbstractCliTest'
|
|
9
|
+
|
|
10
|
+
const ABSTRACT_SPRUCE_TEST_IDX = '-1'
|
|
11
|
+
|
|
12
|
+
export default class TestsInModulesDontUseLoginDecoratorTest extends AbstractCliTest {
|
|
13
|
+
protected static async beforeEach() {
|
|
14
|
+
await super.beforeEach()
|
|
15
|
+
ActionQuestionAskerImpl.Class = StubQuestionAsker
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
@test()
|
|
19
|
+
protected static async creatingATestInModuleDoesNotComeWithDecorator() {
|
|
20
|
+
await this.installSkill('testsInNodeModule')
|
|
21
|
+
const contents = await this.createTestValidateAndGetContents()
|
|
22
|
+
assert.doesNotInclude(contents, 'spruce-test-fixtures')
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@test()
|
|
26
|
+
protected static async creatingATestInSkillComesWithLoginDecorator() {
|
|
27
|
+
await this.installSkill('tests')
|
|
28
|
+
const contents = await this.createTestValidateAndGetContents()
|
|
29
|
+
assert.doesInclude(contents, 'spruce-test-fixtures')
|
|
30
|
+
assert.doesInclude(contents, /^@fake\.login\(\)/m)
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
private static async createTestValidateAndGetContents() {
|
|
34
|
+
const promise = this.Action('test', 'create').execute({
|
|
35
|
+
type: 'behavioral',
|
|
36
|
+
nameReadable: 'test',
|
|
37
|
+
nameCamel: 'test',
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
await this.ui.waitForInput()
|
|
41
|
+
await this.ui.sendInput(ABSTRACT_SPRUCE_TEST_IDX)
|
|
42
|
+
|
|
43
|
+
const results = await promise
|
|
44
|
+
|
|
45
|
+
await this.assertValidActionResponseFiles(results)
|
|
46
|
+
|
|
47
|
+
const testFile = results.files![0].path
|
|
48
|
+
const contents = diskUtil.readFile(testFile)
|
|
49
|
+
return contents
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
private static async installSkill(key: string) {
|
|
53
|
+
await this.FeatureFixture().installCachedFeatures(key)
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
class StubQuestionAsker implements ActionQuestionAsker<'test'> {
|
|
58
|
+
public async installOrMarkAsSkippedMissingDependencies(): Promise<FeatureInstallResponse> {
|
|
59
|
+
return {}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
public async askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(
|
|
63
|
+
_isInstalled: boolean,
|
|
64
|
+
options?: QuestionAskerOptionsOptions<'test'>
|
|
65
|
+
) {
|
|
66
|
+
return options ?? {}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public async askAboutMissingActionOptions() {
|
|
70
|
+
return undefined
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
public async installOurFeature(): Promise<FeatureInstallResponse> {
|
|
74
|
+
return {}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { diskUtil } from '@sprucelabs/spruce-skill-utils'
|
|
2
2
|
import { test, assert } from '@sprucelabs/test-utils'
|
|
3
|
-
import FeatureCommandAttacher
|
|
3
|
+
import FeatureCommandAttacher, {
|
|
4
|
+
ClearResultsAndRenderResultsOptions,
|
|
5
|
+
} from '../../features/FeatureCommandAttacher'
|
|
4
6
|
import AbstractCliTest from '../../tests/AbstractCliTest'
|
|
5
7
|
import MockProgramFactory, { MockProgram } from '../../tests/MockProgramFactory'
|
|
6
8
|
|
|
7
9
|
export default class FeatureCommandAttacherTest extends AbstractCliTest {
|
|
8
|
-
private static attacher:
|
|
10
|
+
private static attacher: SpyFeatureCommandAttacher
|
|
9
11
|
private static program: MockProgram
|
|
10
12
|
|
|
11
13
|
protected static async beforeEach() {
|
|
@@ -15,7 +17,7 @@ export default class FeatureCommandAttacherTest extends AbstractCliTest {
|
|
|
15
17
|
|
|
16
18
|
const actionExecuter = this.ActionExecuter()
|
|
17
19
|
|
|
18
|
-
this.attacher = new
|
|
20
|
+
this.attacher = new SpyFeatureCommandAttacher({
|
|
19
21
|
pkgService: this.Service('pkg'),
|
|
20
22
|
program: this.program,
|
|
21
23
|
ui: this.ui,
|
|
@@ -148,6 +150,17 @@ export default class FeatureCommandAttacherTest extends AbstractCliTest {
|
|
|
148
150
|
assert.isFalse(diskUtil.doesFileExist(personPath))
|
|
149
151
|
}
|
|
150
152
|
|
|
153
|
+
@test()
|
|
154
|
+
protected static async doesNotCrashWhenRenderingResultsWithoutPackageJson() {
|
|
155
|
+
this.attacher.clearAndRenderResults({
|
|
156
|
+
action: 'test' as any,
|
|
157
|
+
actionCode: 'test',
|
|
158
|
+
featureCode: 'test',
|
|
159
|
+
results: {},
|
|
160
|
+
totalTime: 0,
|
|
161
|
+
})
|
|
162
|
+
}
|
|
163
|
+
|
|
151
164
|
private static async attachSchemaFeature() {
|
|
152
165
|
const cli = await this.Cli()
|
|
153
166
|
const schemaFeature = cli.getFeature('schema')
|
|
@@ -159,3 +172,11 @@ export default class FeatureCommandAttacherTest extends AbstractCliTest {
|
|
|
159
172
|
return MockProgramFactory.Program()
|
|
160
173
|
}
|
|
161
174
|
}
|
|
175
|
+
|
|
176
|
+
class SpyFeatureCommandAttacher extends FeatureCommandAttacher {
|
|
177
|
+
public clearAndRenderResults(
|
|
178
|
+
options: ClearResultsAndRenderResultsOptions
|
|
179
|
+
): void {
|
|
180
|
+
return super.clearAndRenderResults(options)
|
|
181
|
+
}
|
|
182
|
+
}
|
|
@@ -71,6 +71,7 @@ export default class OrganizationStoreTest extends AbstractCliTest {
|
|
|
71
71
|
@test()
|
|
72
72
|
protected static async canGetMyOrgs() {
|
|
73
73
|
await this.FeatureFixture().installCachedFeatures('organizations')
|
|
74
|
+
|
|
74
75
|
const orgFixture = this.getOrganizationFixture()
|
|
75
76
|
const org1 = await orgFixture.seedDemoOrg({
|
|
76
77
|
name: 'A cool org',
|
|
@@ -5,7 +5,7 @@ import { GlobalEmitter } from '../GlobalEmitter'
|
|
|
5
5
|
import { GraphicsInterface } from '../types/cli.types'
|
|
6
6
|
import actionUtil from '../utilities/action.utility'
|
|
7
7
|
import ActionFactory from './ActionFactory'
|
|
8
|
-
import
|
|
8
|
+
import ActionQuestionAskerImpl from './ActionQuestionAsker'
|
|
9
9
|
import FeatureInstaller from './FeatureInstaller'
|
|
10
10
|
import {
|
|
11
11
|
FeatureCode,
|
|
@@ -90,7 +90,7 @@ export default class ActionExecuter {
|
|
|
90
90
|
|
|
91
91
|
const feature = installer.getFeature(featureCode)
|
|
92
92
|
|
|
93
|
-
const asker =
|
|
93
|
+
const asker = ActionQuestionAskerImpl.Asker({
|
|
94
94
|
featureInstaller: installer,
|
|
95
95
|
feature,
|
|
96
96
|
actionCode,
|
|
@@ -15,20 +15,20 @@ import {
|
|
|
15
15
|
FeatureMap,
|
|
16
16
|
} from './features.types'
|
|
17
17
|
|
|
18
|
-
export default class
|
|
18
|
+
export default class ActionQuestionAskerImpl<
|
|
19
|
+
F extends FeatureCode = FeatureCode,
|
|
20
|
+
> implements ActionQuestionAsker<F>
|
|
21
|
+
{
|
|
19
22
|
private ui: GraphicsInterface
|
|
23
|
+
public static Class?: new (
|
|
24
|
+
options: ActionQuestionAskerOptions
|
|
25
|
+
) => ActionQuestionAsker<any>
|
|
20
26
|
private featureInstaller: FeatureInstaller
|
|
21
27
|
private actionCode: string
|
|
22
28
|
private feature: AbstractFeature
|
|
23
29
|
private shouldAutoHandleDependencies = true
|
|
24
30
|
|
|
25
|
-
|
|
26
|
-
ui: GraphicsInterface
|
|
27
|
-
featureInstaller: FeatureInstaller
|
|
28
|
-
actionCode: string
|
|
29
|
-
feature: AbstractFeature
|
|
30
|
-
shouldAutoHandleDependencies: boolean
|
|
31
|
-
}) {
|
|
31
|
+
protected constructor(options: ActionQuestionAskerOptions) {
|
|
32
32
|
this.ui = options.ui
|
|
33
33
|
this.featureInstaller = options.featureInstaller
|
|
34
34
|
this.actionCode = options.actionCode
|
|
@@ -36,6 +36,10 @@ export default class ActionOptionAsker<F extends FeatureCode = FeatureCode> {
|
|
|
36
36
|
this.shouldAutoHandleDependencies = options.shouldAutoHandleDependencies
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
public static Asker(options: ActionQuestionAskerOptions) {
|
|
40
|
+
return new (this.Class ?? ActionQuestionAskerImpl)(options)
|
|
41
|
+
}
|
|
42
|
+
|
|
39
43
|
public async installOrMarkAsSkippedMissingDependencies(): Promise<FeatureInstallResponse> {
|
|
40
44
|
const notInstalled = await this.getDependenciesNotInstalled()
|
|
41
45
|
|
|
@@ -122,10 +126,8 @@ export default class ActionOptionAsker<F extends FeatureCode = FeatureCode> {
|
|
|
122
126
|
|
|
123
127
|
public async askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(
|
|
124
128
|
isInstalled: boolean,
|
|
125
|
-
options
|
|
126
|
-
|
|
127
|
-
| undefined
|
|
128
|
-
) {
|
|
129
|
+
options?: Record<string, any> & FeatureCommandExecuteOptions<F>
|
|
130
|
+
): Promise<Record<string, any> & FeatureCommandExecuteOptions<F>> {
|
|
129
131
|
let installOptions = { ...options }
|
|
130
132
|
|
|
131
133
|
if (!isInstalled) {
|
|
@@ -138,15 +140,14 @@ export default class ActionOptionAsker<F extends FeatureCode = FeatureCode> {
|
|
|
138
140
|
installOptions = { ...installOptions, ...answers }
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
|
-
return installOptions
|
|
143
|
+
return installOptions as Record<string, any> &
|
|
144
|
+
FeatureCommandExecuteOptions<F>
|
|
142
145
|
}
|
|
143
146
|
|
|
144
|
-
public async askAboutMissingActionOptions(
|
|
145
|
-
action: FeatureAction<
|
|
146
|
-
options
|
|
147
|
-
|
|
148
|
-
| undefined
|
|
149
|
-
) {
|
|
147
|
+
public async askAboutMissingActionOptions<S extends Schema>(
|
|
148
|
+
action: FeatureAction<S>,
|
|
149
|
+
options?: Record<string, any> & FeatureCommandExecuteOptions<F>
|
|
150
|
+
): Promise<SchemaValues<S> | undefined> {
|
|
150
151
|
let answers
|
|
151
152
|
|
|
152
153
|
const schema = action.optionsSchema
|
|
@@ -395,3 +396,32 @@ function s(array: any[]) {
|
|
|
395
396
|
function areIs(array: any[]) {
|
|
396
397
|
return array.length === 1 ? 'is' : 'are'
|
|
397
398
|
}
|
|
399
|
+
|
|
400
|
+
interface ActionQuestionAskerOptions {
|
|
401
|
+
ui: GraphicsInterface
|
|
402
|
+
featureInstaller: FeatureInstaller
|
|
403
|
+
actionCode: string
|
|
404
|
+
feature: AbstractFeature
|
|
405
|
+
shouldAutoHandleDependencies: boolean
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
export type QuestionAskerOptionsOptions<F extends FeatureCode> = Record<
|
|
409
|
+
string,
|
|
410
|
+
any
|
|
411
|
+
> &
|
|
412
|
+
FeatureCommandExecuteOptions<F>
|
|
413
|
+
|
|
414
|
+
export interface ActionQuestionAsker<F extends FeatureCode = FeatureCode> {
|
|
415
|
+
installOrMarkAsSkippedMissingDependencies(): Promise<FeatureInstallResponse>
|
|
416
|
+
askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(
|
|
417
|
+
isInstalled: boolean,
|
|
418
|
+
options?: QuestionAskerOptionsOptions<F>
|
|
419
|
+
): Promise<Record<string, any> & FeatureCommandExecuteOptions<F>>
|
|
420
|
+
askAboutMissingActionOptions<S extends Schema>(
|
|
421
|
+
action: FeatureAction<S>,
|
|
422
|
+
options?: QuestionAskerOptionsOptions<F>
|
|
423
|
+
): Promise<SchemaValues<S> | undefined>
|
|
424
|
+
installOurFeature(
|
|
425
|
+
installOptions: Record<string, any>
|
|
426
|
+
): Promise<FeatureInstallResponse>
|
|
427
|
+
}
|
|
@@ -95,21 +95,18 @@ export default class FeatureCommandAttacher {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
actionCode: string
|
|
102
|
-
totalTime: number
|
|
103
|
-
action: FeatureAction
|
|
104
|
-
results: FeatureActionResponse
|
|
105
|
-
}) {
|
|
98
|
+
protected clearAndRenderResults(
|
|
99
|
+
options: ClearResultsAndRenderResultsOptions
|
|
100
|
+
) {
|
|
106
101
|
const { featureCode, actionCode, results, totalTime, action } = options
|
|
107
102
|
|
|
108
103
|
this.ui.stopLoading()
|
|
109
104
|
this.ui.clear()
|
|
110
105
|
|
|
111
106
|
this.ui.renderActionSummary({
|
|
112
|
-
namespace: this.pkg.
|
|
107
|
+
namespace: this.pkg.doesExist()
|
|
108
|
+
? this.pkg.getSkillNamespace()
|
|
109
|
+
: undefined,
|
|
113
110
|
featureCode,
|
|
114
111
|
actionCode,
|
|
115
112
|
totalTime,
|
|
@@ -157,3 +154,12 @@ export default class FeatureCommandAttacher {
|
|
|
157
154
|
export type OptionOverrides = Record<string, Record<string, any>>
|
|
158
155
|
|
|
159
156
|
export type BlockedCommands = Record<string, string>
|
|
157
|
+
|
|
158
|
+
export interface ClearResultsAndRenderResultsOptions {
|
|
159
|
+
namespace?: string
|
|
160
|
+
featureCode: string
|
|
161
|
+
actionCode: string
|
|
162
|
+
totalTime: number
|
|
163
|
+
action: FeatureAction
|
|
164
|
+
results: FeatureActionResponse
|
|
165
|
+
}
|
|
@@ -32,6 +32,7 @@ export default class SkillFeature<
|
|
|
32
32
|
name: '@sprucelabs/mercury-types',
|
|
33
33
|
},
|
|
34
34
|
{ name: 'tsconfig-paths', isDev: true },
|
|
35
|
+
{ name: '@sprucelabs/spruce-test-fixtures@latest', isDev: true },
|
|
35
36
|
{ name: 'ts-node', isDev: true },
|
|
36
37
|
...universalDevDependencies,
|
|
37
38
|
]
|
|
@@ -35,7 +35,6 @@ export default class TestFeature extends AbstractFeature {
|
|
|
35
35
|
{ name: '@sprucelabs/test@latest', isDev: true },
|
|
36
36
|
{ name: '@sprucelabs/test-utils@latest', isDev: true },
|
|
37
37
|
{ name: '@sprucelabs/jest-json-reporter@latest', isDev: true },
|
|
38
|
-
{ name: '@sprucelabs/spruce-test-fixtures@latest', isDev: true },
|
|
39
38
|
{ name: 'jest-circus', isDev: true },
|
|
40
39
|
{ name: 'jest', isDev: true },
|
|
41
40
|
]
|
|
@@ -7,9 +7,6 @@ import AbstractAction from '../../AbstractAction'
|
|
|
7
7
|
import { FeatureActionResponse } from '../../features.types'
|
|
8
8
|
import TestFeature, { ParentClassCandidate } from '../TestFeature'
|
|
9
9
|
|
|
10
|
-
type OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema
|
|
11
|
-
type Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions
|
|
12
|
-
|
|
13
10
|
export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
14
11
|
public optionsSchema = createTestActionSchema
|
|
15
12
|
public invocationMessage = 'Creating a test... 🛡'
|
|
@@ -25,16 +22,11 @@ export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
|
25
22
|
type
|
|
26
23
|
)
|
|
27
24
|
|
|
28
|
-
this.ui.startLoading('Checking potential parent test classes')
|
|
29
|
-
|
|
30
|
-
const testFeature = this.parent as TestFeature
|
|
31
|
-
|
|
32
|
-
this.ui.stopLoading()
|
|
33
|
-
|
|
34
25
|
let parentTestClass:
|
|
35
26
|
| undefined
|
|
36
27
|
| { name: string; importPath: string; isDefaultExport: boolean }
|
|
37
28
|
|
|
29
|
+
const testFeature = this.parent as TestFeature
|
|
38
30
|
const candidates = await testFeature.buildParentClassCandidates()
|
|
39
31
|
|
|
40
32
|
if (diskUtil.doesDirExist(resolvedDestination)) {
|
|
@@ -55,11 +47,16 @@ export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
|
55
47
|
|
|
56
48
|
const writer = this.Writer('test')
|
|
57
49
|
|
|
58
|
-
const
|
|
50
|
+
const isTestFixturesInstalled = !!this.Service('pkg').get(
|
|
51
|
+
'devDependencies.@sprucelabs/spruce-test-fixtures'
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
const results = await writer.writeTest(resolvedDestination, {
|
|
59
55
|
...normalizedOptions,
|
|
60
56
|
type,
|
|
61
57
|
nameCamel,
|
|
62
58
|
parentTestClass,
|
|
59
|
+
isTestFixturesInstalled,
|
|
63
60
|
namePascal: namePascal ?? namesUtil.toPascal(nameCamel),
|
|
64
61
|
})
|
|
65
62
|
|
|
@@ -68,6 +65,7 @@ export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
|
68
65
|
hints: ["run `spruce test` in your skill when you're ready!"],
|
|
69
66
|
}
|
|
70
67
|
}
|
|
68
|
+
|
|
71
69
|
private async promptForSubDir(resolvedDestination: string) {
|
|
72
70
|
const match = await this.ui.prompt({
|
|
73
71
|
type: 'directory',
|
|
@@ -164,3 +162,6 @@ export default class CreateAction extends AbstractAction<OptionsSchema> {
|
|
|
164
162
|
}
|
|
165
163
|
}
|
|
166
164
|
}
|
|
165
|
+
|
|
166
|
+
type OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptionsSchema
|
|
167
|
+
type Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateTestOptions
|
|
@@ -2,8 +2,8 @@ import pathUtil from 'path'
|
|
|
2
2
|
import { TestOptions } from '@sprucelabs/spruce-templates'
|
|
3
3
|
import AbstractWriter from '../../../writers/AbstractWriter'
|
|
4
4
|
|
|
5
|
-
export default class
|
|
6
|
-
public async
|
|
5
|
+
export default class TestWriter extends AbstractWriter {
|
|
6
|
+
public async writeTest(
|
|
7
7
|
destinationDir: string,
|
|
8
8
|
options: TestOptions & { type: string }
|
|
9
9
|
) {
|
|
@@ -12,7 +12,7 @@ import SandboxWriter from '../features/sandbox/writers/SandboxWriter'
|
|
|
12
12
|
import SchemaWriter from '../features/schema/writers/SchemaWriter'
|
|
13
13
|
import SkillGenerator from '../features/skill/writers/SkillWriter'
|
|
14
14
|
import StoreWriter from '../features/store/writers/StoreWriter'
|
|
15
|
-
import
|
|
15
|
+
import TestWriter from '../features/test/writers/TestWriter'
|
|
16
16
|
import ViewWriter from '../features/view/writers/ViewWriter'
|
|
17
17
|
import VsCodeWriter from '../features/vscode/writers/VsCodeWriter'
|
|
18
18
|
import LintService from '../services/LintService'
|
|
@@ -25,7 +25,7 @@ const classMap = {
|
|
|
25
25
|
event: EventWriter,
|
|
26
26
|
schema: SchemaWriter,
|
|
27
27
|
skill: SkillGenerator,
|
|
28
|
-
test:
|
|
28
|
+
test: TestWriter,
|
|
29
29
|
node: NodeWriter,
|
|
30
30
|
vscode: VsCodeWriter,
|
|
31
31
|
conversation: ConversationWriter,
|
|
@@ -91,7 +91,7 @@ export interface WriterMap {
|
|
|
91
91
|
event: EventWriter
|
|
92
92
|
schema: SchemaWriter
|
|
93
93
|
skill: SkillGenerator
|
|
94
|
-
test:
|
|
94
|
+
test: TestWriter
|
|
95
95
|
node: NodeWriter
|
|
96
96
|
vscode: VsCodeWriter
|
|
97
97
|
conversation: ConversationWriter
|