@neurodevs/ndx-cli 0.1.14 → 0.1.15
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/build/__tests__/modules/CliCommandRunner.test.d.ts +6 -4
- package/build/__tests__/modules/CliCommandRunner.test.js +19 -17
- package/build/__tests__/modules/CliCommandRunner.test.js.map +1 -1
- package/build/modules/CliCommandRunner.d.ts +8 -4
- package/build/modules/CliCommandRunner.js +26 -16
- package/build/modules/CliCommandRunner.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/modules/CliCommandRunner.test.ts +22 -18
- package/src/modules/CliCommandRunner.ts +29 -16
|
@@ -9,8 +9,6 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
9
9
|
private static readonly keywords;
|
|
10
10
|
private static readonly createUiCommand;
|
|
11
11
|
private static readonly componentName;
|
|
12
|
-
private static readonly testSaveDir;
|
|
13
|
-
private static readonly moduleSaveDir;
|
|
14
12
|
private static readonly githubToken;
|
|
15
13
|
protected static beforeEach(): Promise<void>;
|
|
16
14
|
protected static throwsIfCommandIsNotSupported(): Promise<void>;
|
|
@@ -36,13 +34,17 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
36
34
|
protected static createUiCreatesFakeSaveDirIfNotExists(): Promise<void>;
|
|
37
35
|
protected static createUiCreatesUiAutomodule(): Promise<void>;
|
|
38
36
|
protected static createUiRunsUiAutomodule(): Promise<void>;
|
|
39
|
-
private static get fakeSaveDirComponent();
|
|
40
37
|
private static runCreateUi;
|
|
41
38
|
private static runCreateImpl;
|
|
42
39
|
private static runCreatePackage;
|
|
43
40
|
private static expandHomeDir;
|
|
44
41
|
private static splitOnCommaOrWhitespace;
|
|
45
|
-
private static
|
|
42
|
+
private static readonly implTestSaveDir;
|
|
43
|
+
private static readonly implModuleSaveDir;
|
|
44
|
+
private static get implFakeSaveDir();
|
|
45
|
+
private static readonly uiTestSaveDir;
|
|
46
|
+
private static readonly uiModuleSaveDir;
|
|
47
|
+
private static get uiFakeSaveDir();
|
|
46
48
|
private static setFakeImplAutomodule;
|
|
47
49
|
private static setFakeUiAutomodule;
|
|
48
50
|
private static setFakeAutopackage;
|
|
@@ -93,11 +93,11 @@ class CliCommandRunnerTest extends test_utils_1.default {
|
|
|
93
93
|
}
|
|
94
94
|
static async createImplCreatesTestSaveDirIfNotExists() {
|
|
95
95
|
await this.runCreateImpl();
|
|
96
|
-
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[0], { path: this.
|
|
96
|
+
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[0], { path: this.implTestSaveDir, options: { recursive: true } }, 'Did not create test save dir!');
|
|
97
97
|
}
|
|
98
98
|
static async createImplCreatesModuleSaveDirIfNotExists() {
|
|
99
99
|
await this.runCreateImpl();
|
|
100
|
-
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[1], { path: this.
|
|
100
|
+
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[1], { path: this.implModuleSaveDir, options: { recursive: true } }, 'Did not create module save dir!');
|
|
101
101
|
}
|
|
102
102
|
static async createImplCreatesFakeSaveDirIfNotExists() {
|
|
103
103
|
await this.runCreateImpl();
|
|
@@ -109,9 +109,9 @@ class CliCommandRunnerTest extends test_utils_1.default {
|
|
|
109
109
|
static async createImplCreatesImplAutomodule() {
|
|
110
110
|
await this.runCreateImpl();
|
|
111
111
|
test_utils_1.assert.isEqualDeep(meta_node_1.FakeAutomodule.callsToConstructor[0], {
|
|
112
|
-
testSaveDir: this.
|
|
113
|
-
moduleSaveDir: this.
|
|
114
|
-
fakeSaveDir: this.
|
|
112
|
+
testSaveDir: this.implTestSaveDir,
|
|
113
|
+
moduleSaveDir: this.implModuleSaveDir,
|
|
114
|
+
fakeSaveDir: this.implFakeSaveDir,
|
|
115
115
|
interfaceName: this.interfaceName,
|
|
116
116
|
implName: this.implName,
|
|
117
117
|
}, 'Did not create ImplAutomodule with expected options!');
|
|
@@ -195,25 +195,25 @@ class CliCommandRunnerTest extends test_utils_1.default {
|
|
|
195
195
|
}
|
|
196
196
|
static async createUiCreatesTestSaveDirIfNotExists() {
|
|
197
197
|
await this.runCreateUi();
|
|
198
|
-
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[0], { path: this.
|
|
198
|
+
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[0], { path: this.uiTestSaveDir, options: { recursive: true } }, 'Did not create test save dir!');
|
|
199
199
|
}
|
|
200
200
|
static async createUiCreatesModuleSaveDirIfNotExists() {
|
|
201
201
|
await this.runCreateUi();
|
|
202
|
-
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[1], { path: this.
|
|
202
|
+
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[1], { path: this.uiModuleSaveDir, options: { recursive: true } }, 'Did not create module save dir!');
|
|
203
203
|
}
|
|
204
204
|
static async createUiCreatesFakeSaveDirIfNotExists() {
|
|
205
205
|
await this.runCreateUi();
|
|
206
206
|
test_utils_1.assert.isEqualDeep(fakeMkdir_1.callsToMkdir[2], {
|
|
207
|
-
path: this.
|
|
207
|
+
path: this.uiFakeSaveDir,
|
|
208
208
|
options: { recursive: true },
|
|
209
209
|
}, 'Did not create fake save dir!');
|
|
210
210
|
}
|
|
211
211
|
static async createUiCreatesUiAutomodule() {
|
|
212
212
|
await this.runCreateUi();
|
|
213
213
|
test_utils_1.assert.isEqualDeep(meta_node_1.FakeAutomodule.callsToConstructor[0], {
|
|
214
|
-
testSaveDir: this.
|
|
215
|
-
moduleSaveDir: this.
|
|
216
|
-
fakeSaveDir: this.
|
|
214
|
+
testSaveDir: this.uiTestSaveDir,
|
|
215
|
+
moduleSaveDir: this.uiModuleSaveDir,
|
|
216
|
+
fakeSaveDir: this.uiFakeSaveDir,
|
|
217
217
|
componentName: this.componentName,
|
|
218
218
|
}, 'Did not create UiAutomodule with expected options!');
|
|
219
219
|
}
|
|
@@ -221,9 +221,6 @@ class CliCommandRunnerTest extends test_utils_1.default {
|
|
|
221
221
|
await this.runCreateUi();
|
|
222
222
|
test_utils_1.assert.isEqual(meta_node_1.FakeAutomodule.numCallsToRun, 1, 'Did not call run on UiAutomodule!');
|
|
223
223
|
}
|
|
224
|
-
static get fakeSaveDirComponent() {
|
|
225
|
-
return `src/testDoubles/${this.componentName}`;
|
|
226
|
-
}
|
|
227
224
|
static async runCreateUi(responses) {
|
|
228
225
|
(0, fakePrompts_1.setFakeResponses)({
|
|
229
226
|
componentName: this.componentName,
|
|
@@ -265,9 +262,12 @@ class CliCommandRunnerTest extends test_utils_1.default {
|
|
|
265
262
|
.map((v) => v.trim())
|
|
266
263
|
.filter(Boolean);
|
|
267
264
|
}
|
|
268
|
-
static get
|
|
265
|
+
static get implFakeSaveDir() {
|
|
269
266
|
return `src/testDoubles/${this.interfaceName}`;
|
|
270
267
|
}
|
|
268
|
+
static get uiFakeSaveDir() {
|
|
269
|
+
return `src/testDoubles/${this.componentName}`;
|
|
270
|
+
}
|
|
271
271
|
static setFakeImplAutomodule() {
|
|
272
272
|
meta_node_1.ImplAutomodule.Class = meta_node_1.FakeAutomodule;
|
|
273
273
|
meta_node_1.FakeAutomodule.resetTestDouble();
|
|
@@ -301,9 +301,11 @@ CliCommandRunnerTest.description = (0, test_utils_1.generateId)();
|
|
|
301
301
|
CliCommandRunnerTest.keywords = [(0, test_utils_1.generateId)(), (0, test_utils_1.generateId)()];
|
|
302
302
|
CliCommandRunnerTest.createUiCommand = 'create.ui';
|
|
303
303
|
CliCommandRunnerTest.componentName = (0, test_utils_1.generateId)();
|
|
304
|
-
CliCommandRunnerTest.testSaveDir = 'src/__tests__/modules';
|
|
305
|
-
CliCommandRunnerTest.moduleSaveDir = 'src/modules';
|
|
306
304
|
CliCommandRunnerTest.githubToken = (0, test_utils_1.generateId)();
|
|
305
|
+
CliCommandRunnerTest.implTestSaveDir = 'src/__tests__/modules';
|
|
306
|
+
CliCommandRunnerTest.implModuleSaveDir = 'src/modules';
|
|
307
|
+
CliCommandRunnerTest.uiTestSaveDir = 'src/__tests__/ui';
|
|
308
|
+
CliCommandRunnerTest.uiModuleSaveDir = 'src/ui';
|
|
307
309
|
CliCommandRunnerTest.interfaceNameMessage = 'What should the interface be called? Example: YourInterface';
|
|
308
310
|
CliCommandRunnerTest.implNameMessage = 'What should the implementation class be called? Example: YourInterfaceImpl';
|
|
309
311
|
CliCommandRunnerTest.packageNameMessage = 'What should the package be called? Example: useful-package';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CliCommandRunner.test.js","sourceRoot":"","sources":["../../../src/__tests__/modules/CliCommandRunner.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAAmB;AACnB,gDAAuB;AACvB,qEAI+B;AAC/B,oDAM6B;AAE7B,sFAA6D;AAC7D,yEAGoC;AACpC,uEAK8C;AAE9C,MAAqB,oBAAqB,SAAQ,oBAAkB;
|
|
1
|
+
{"version":3,"file":"CliCommandRunner.test.js","sourceRoot":"","sources":["../../../src/__tests__/modules/CliCommandRunner.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAAmB;AACnB,gDAAuB;AACvB,qEAI+B;AAC/B,oDAM6B;AAE7B,sFAA6D;AAC7D,yEAGoC;AACpC,uEAK8C;AAE9C,MAAqB,oBAAqB,SAAQ,oBAAkB;IAetD,MAAM,CAAC,KAAK,CAAC,UAAU;QAC7B,MAAM,KAAK,CAAC,UAAU,EAAE,CAAA;QAExB,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAC5B,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC1B,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,IAAI,CAAC,YAAY,EAAE,CAAA;QAEnB,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAA;IAC/C,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,6BAA6B;QAChD,MAAM,UAAU,GAAG,IAAA,uBAAU,GAAE,CAAA;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;QAEpD,MAAM,GAAG,GAAG,MAAM,mBAAM,CAAC,cAAc,CACnC,KAAK,IAAI,EAAE,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,CACnC,CAAA;QAED,mBAAM,CAAC,OAAO,CACV,GAAG,CAAC,OAAO,EACX,gBAAgB,UAAU,qBAAqB,EAC/C,qCAAqC,CACxC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,yBAAyB;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE3C,mBAAM,CAAC,QAAQ,CACX,QAAQ,EACR,iCAAiC,IAAI,CAAC,iBAAiB,GAAG,CAC7D,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,6BAA6B;QAChD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,WAAW,CACd,gCAAkB,CAAC,CAAC,CAAC,EACrB;YACI;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,IAAI,CAAC,oBAAoB;aACrC;YACD;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,IAAI,CAAC,eAAe;aAChC;SACJ,EACD,yCAAyC,CAC5C,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,+CAA+C;QAClE,MAAM,IAAI,CAAC,aAAa,CAAC;YACrB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,EAAE;SACf,CAAC,CAAA;QAEF,mBAAM,CAAC,OAAO,CACV,0BAAc,CAAC,aAAa,EAC5B,CAAC,EACD,+CAA+C,CAClD,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,uCAAuC;QAC1D,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAC5D,+BAA+B,CAClC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,yCAAyC;QAC5D,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAC9D,iCAAiC,CACpC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,uCAAuC;QAC1D,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf;YACI,IAAI,EAAE,mBAAmB,IAAI,CAAC,aAAa,EAAE;YAC7C,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;SAC/B,EACD,+BAA+B,CAClC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,+BAA+B;QAClD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,WAAW,CACd,0BAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,EACpC;YACI,WAAW,EAAE,IAAI,CAAC,eAAe;YACjC,aAAa,EAAE,IAAI,CAAC,iBAAiB;YACrC,WAAW,EAAE,IAAI,CAAC,eAAe;YACjC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,EACD,sDAAsD,CACzD,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,4BAA4B;QAC/C,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAE1B,mBAAM,CAAC,OAAO,CACV,0BAAc,CAAC,aAAa,EAC5B,CAAC,EACD,qCAAqC,CACxC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,4BAA4B;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAE9C,mBAAM,CAAC,QAAQ,CACX,QAAQ,EACR,iCAAiC,IAAI,CAAC,oBAAoB,GAAG,CAChE,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,gCAAgC;QACnD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAE7B,mBAAM,CAAC,WAAW,CACd,IAAI,CAAC,SAAS,CAAC,gCAAkB,CAAC,CAAC,CAAC,CAAC,EACrC,IAAI,CAAC,SAAS,CAAC;YACX;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI,CAAC,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI,CAAC,yBAAyB;aAC1C;YACD;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EACH,iEAAiE;gBACrE,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CACtB,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;aACxD;SACJ,CAAC,EACF,yCAAyC,CAC5C,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,kDAAkD;QACrE,MAAM,IAAI,CAAC,gBAAgB,CAAC;YACxB,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,EAAE;SAClB,CAAC,CAAA;QAEF,mBAAM,CAAC,OAAO,CACV,2BAAe,CAAC,aAAa,EAC7B,CAAC,EACD,4CAA4C,CAC/C,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,kCAAkC;QACrD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAE7B,mBAAM,CAAC,WAAW,CACd,2BAAe,CAAC,kBAAkB,CAAC,CAAC,CAAC,EACrC;YACI,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE;YACrC,YAAY,EAAE,WAAW;YACzB,YAAY,EAAE,WAAW;YACzB,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YACvC,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,uCAAuC;SAClD,EACD,sDAAsD,CACzD,CAAA;IACL,CAAC;IAEO,MAAM,CAAC,oBAAoB;QAC/B,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5D,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,+BAA+B;QAClD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAE7B,mBAAM,CAAC,OAAO,CACV,2BAAe,CAAC,aAAa,EAC7B,CAAC,EACD,kCAAkC,CACrC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,uBAAuB;QAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAEzC,mBAAM,CAAC,QAAQ,CACX,QAAQ,EACR,iCAAiC,IAAI,CAAC,eAAe,GAAG,CAC3D,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,2BAA2B;QAC9C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,WAAW,CACd,gCAAkB,CAAC,CAAC,CAAC,EACrB;YACI;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,IAAI,CAAC,oBAAoB;aACrC;SACJ,EACD,yCAAyC,CAC5C,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,6CAA6C;QAChE,MAAM,IAAI,CAAC,WAAW,CAAC;YACnB,aAAa,EAAE,EAAE;SACpB,CAAC,CAAA;QAEF,mBAAM,CAAC,OAAO,CACV,0BAAc,CAAC,aAAa,EAC5B,CAAC,EACD,6CAA6C,CAChD,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,qCAAqC;QACxD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAC1D,+BAA+B,CAClC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,uCAAuC;QAC1D,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAC5D,iCAAiC,CACpC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,qCAAqC;QACxD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,WAAW,CACd,wBAAY,CAAC,CAAC,CAAC,EACf;YACI,IAAI,EAAE,IAAI,CAAC,aAAa;YACxB,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;SAC/B,EACD,+BAA+B,CAClC,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,2BAA2B;QAC9C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,WAAW,CACd,0BAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,EACpC;YACI,WAAW,EAAE,IAAI,CAAC,aAAa;YAC/B,aAAa,EAAE,IAAI,CAAC,eAAe;YACnC,WAAW,EAAE,IAAI,CAAC,aAAa;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,EACD,oDAAoD,CACvD,CAAA;IACL,CAAC;IAGsB,AAAb,MAAM,CAAC,KAAK,CAAC,wBAAwB;QAC3C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,mBAAM,CAAC,OAAO,CACV,0BAAc,CAAC,aAAa,EAC5B,CAAC,EACD,mCAAmC,CACtC,CAAA;IACL,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,SAAkC;QAC/D,IAAA,8BAAgB,EAAC;YACb,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,GAAG,SAAS;SACf,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA;QAC9D,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAA;QAEpB,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,SAAkC;QACjE,IAAA,8BAAgB,EAAC;YACb,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,SAAS;SACf,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAA;QAChE,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAA;QAEpB,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAkC;QACpE,IAAA,8BAAgB,EAAC;YACb,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,SAAS;SACf,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAA;QACnE,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAA;QAEpB,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,SAAiB;QAC1C,OAAO,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;YAC5B,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,wBAAwB,CAAC,KAAa;QACjD,OAAO,KAAK;aACP,KAAK,CAAC,QAAQ,CAAC;aACf,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC5B,MAAM,CAAC,OAAO,CAAC,CAAA;IACxB,CAAC;IAKO,MAAM,KAAK,eAAe;QAC9B,OAAO,mBAAmB,IAAI,CAAC,aAAa,EAAE,CAAA;IAClD,CAAC;IAKO,MAAM,KAAK,aAAa;QAC5B,OAAO,mBAAmB,IAAI,CAAC,aAAa,EAAE,CAAA;IAClD,CAAC;IAEO,MAAM,CAAC,qBAAqB;QAChC,0BAAc,CAAC,KAAK,GAAG,0BAAc,CAAA;QACrC,0BAAc,CAAC,eAAe,EAAE,CAAA;IACpC,CAAC;IAEO,MAAM,CAAC,mBAAmB;QAC9B,wBAAY,CAAC,KAAK,GAAG,0BAAc,CAAA;QACnC,0BAAc,CAAC,eAAe,EAAE,CAAA;IACpC,CAAC;IAEO,MAAM,CAAC,kBAAkB;QAC7B,0BAAc,CAAC,KAAK,GAAG,2BAAe,CAAA;QACtC,2BAAe,CAAC,eAAe,EAAE,CAAA;IACrC,CAAC;IAEO,MAAM,CAAC,YAAY;QACvB,0BAAgB,CAAC,KAAK,GAAG,mBAAoC,CAAA;QAC7D,IAAA,6BAAiB,GAAE,CAAA;IACvB,CAAC;IAEO,MAAM,CAAC,cAAc;QACzB,0BAAgB,CAAC,OAAO,GAAG,yBAAwC,CAAA;QACnE,IAAA,qCAAuB,GAAE,CAAA;IAC7B,CAAC;IAiBO,MAAM,CAAC,gBAAgB,CAAC,IAAc;QAC1C,OAAO,0BAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;;AArcuB,sCAAiB,GAAG,aAAa,CAAA;AACjC,kCAAa,GAAG,IAAA,uBAAU,GAAE,CAAA;AAC5B,6BAAQ,GAAG,IAAA,uBAAU,GAAE,CAAA;AAEvB,yCAAoB,GAAG,gBAAgB,CAAA;AACvC,gCAAW,GAAG,IAAA,uBAAU,GAAE,CAAA;AAC1B,gCAAW,GAAG,IAAA,uBAAU,GAAE,CAAA;AAC1B,6BAAQ,GAAG,CAAC,IAAA,uBAAU,GAAE,EAAE,IAAA,uBAAU,GAAE,CAAC,CAAA;AAEvC,oCAAe,GAAG,WAAW,CAAA;AAC7B,kCAAa,GAAG,IAAA,uBAAU,GAAE,CAAA;AAE5B,gCAAW,GAAG,IAAA,uBAAU,GAAE,CAAA;AAiY1B,oCAAe,GAAG,uBAAuB,CAAA;AACzC,sCAAiB,GAAG,aAAa,CAAA;AAMjC,kCAAa,GAAG,kBAAkB,CAAA;AAClC,oCAAe,GAAG,QAAQ,CAAA;AA+B1B,yCAAoB,GACxC,6DAA6D,CAAA;AAEzC,oCAAe,GACnC,4EAA4E,CAAA;AAExD,uCAAkB,GACtC,4DAA4D,CAAA;AAExC,8CAAyB,GAC7C,oEAAoE,CAAA;AAEhD,yCAAoB,GACxC,6DAA6D,CAAA;kBAlchD,oBAAoB;AA4Bd;IADtB,IAAA,iBAAI,GAAE;+DAcN;AAGsB;IADtB,IAAA,iBAAI,GAAE;2DAQN;AAGsB;IADtB,IAAA,iBAAI,GAAE;+DAoBN;AAGsB;IADtB,IAAA,iBAAI,GAAE;iFAYN;AAGsB;IADtB,IAAA,iBAAI,GAAE;yEASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;2EASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;yEAYN;AAGsB;IADtB,IAAA,iBAAI,GAAE;iEAeN;AAGsB;IADtB,IAAA,iBAAI,GAAE;8DASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;8DAQN;AAGsB;IADtB,IAAA,iBAAI,GAAE;kEA6BN;AAGsB;IADtB,IAAA,iBAAI,GAAE;oFAYN;AAGsB;IADtB,IAAA,iBAAI,GAAE;oEAkBN;AAOsB;IADtB,IAAA,iBAAI,GAAE;iEASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;yDAQN;AAGsB;IADtB,IAAA,iBAAI,GAAE;6DAeN;AAGsB;IADtB,IAAA,iBAAI,GAAE;+EAWN;AAGsB;IADtB,IAAA,iBAAI,GAAE;uEASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;yEASN;AAGsB;IADtB,IAAA,iBAAI,GAAE;uEAYN;AAGsB;IADtB,IAAA,iBAAI,GAAE;6DAcN;AAGsB;IADtB,IAAA,iBAAI,GAAE;0DASN"}
|
|
@@ -27,7 +27,10 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
27
27
|
private readonly interfaceNameMessage;
|
|
28
28
|
private readonly implNameMessage;
|
|
29
29
|
private get userInputExistsForCreateImpl();
|
|
30
|
-
private
|
|
30
|
+
private makeRequiredImplDirectories;
|
|
31
|
+
private readonly implTestSaveDir;
|
|
32
|
+
private readonly implModuleSaveDir;
|
|
33
|
+
private get implFakeSaveDir();
|
|
31
34
|
private createPackage;
|
|
32
35
|
private promptForAutopackage;
|
|
33
36
|
private readonly packageNameMessage;
|
|
@@ -38,10 +41,11 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
38
41
|
private createUiModule;
|
|
39
42
|
private promptForUimodule;
|
|
40
43
|
private readonly componentNameMessage;
|
|
44
|
+
private makeRequiredUiDirectories;
|
|
41
45
|
private expandHomeDir;
|
|
42
|
-
private readonly
|
|
43
|
-
private readonly
|
|
44
|
-
private get
|
|
46
|
+
private readonly uiTestSaveDir;
|
|
47
|
+
private readonly uiModuleSaveDir;
|
|
48
|
+
private get uiFakeSaveDir();
|
|
45
49
|
private get prompts();
|
|
46
50
|
private get mkdir();
|
|
47
51
|
private ImplAutomodule;
|
|
@@ -20,12 +20,14 @@ class CliCommandRunner {
|
|
|
20
20
|
];
|
|
21
21
|
this.interfaceNameMessage = 'What should the interface be called? Example: YourInterface';
|
|
22
22
|
this.implNameMessage = 'What should the implementation class be called? Example: YourInterfaceImpl';
|
|
23
|
+
this.implTestSaveDir = 'src/__tests__/modules';
|
|
24
|
+
this.implModuleSaveDir = 'src/modules';
|
|
23
25
|
this.packageNameMessage = 'What should the package be called? Example: useful-package';
|
|
24
26
|
this.descriptionMessage = 'What should the package description be? Example: A useful package.';
|
|
25
27
|
this.keywordsMessage = 'Enter keywords (comma or space separated, lowercase, optional):';
|
|
26
28
|
this.componentNameMessage = 'What should the component be called? Example: YourComponent';
|
|
27
|
-
this.
|
|
28
|
-
this.
|
|
29
|
+
this.uiTestSaveDir = 'src/__tests__/ui';
|
|
30
|
+
this.uiModuleSaveDir = 'src/ui';
|
|
29
31
|
this.args = args;
|
|
30
32
|
}
|
|
31
33
|
static Create(args) {
|
|
@@ -66,7 +68,7 @@ class CliCommandRunner {
|
|
|
66
68
|
if (!this.userInputExistsForCreateImpl) {
|
|
67
69
|
return;
|
|
68
70
|
}
|
|
69
|
-
await this.
|
|
71
|
+
await this.makeRequiredImplDirectories();
|
|
70
72
|
const automodule = this.ImplAutomodule();
|
|
71
73
|
await automodule.run();
|
|
72
74
|
}
|
|
@@ -87,10 +89,13 @@ class CliCommandRunner {
|
|
|
87
89
|
get userInputExistsForCreateImpl() {
|
|
88
90
|
return this.interfaceName && this.implName;
|
|
89
91
|
}
|
|
90
|
-
async
|
|
91
|
-
await this.mkdir(this.
|
|
92
|
-
await this.mkdir(this.
|
|
93
|
-
await this.mkdir(this.
|
|
92
|
+
async makeRequiredImplDirectories() {
|
|
93
|
+
await this.mkdir(this.implTestSaveDir, { recursive: true });
|
|
94
|
+
await this.mkdir(this.implModuleSaveDir, { recursive: true });
|
|
95
|
+
await this.mkdir(this.implFakeSaveDir, { recursive: true });
|
|
96
|
+
}
|
|
97
|
+
get implFakeSaveDir() {
|
|
98
|
+
return `src/testDoubles/${this.interfaceName}`;
|
|
94
99
|
}
|
|
95
100
|
async createPackage() {
|
|
96
101
|
const { packageName, description, keywords } = await this.promptForAutopackage();
|
|
@@ -139,7 +144,7 @@ class CliCommandRunner {
|
|
|
139
144
|
if (!this.componentName) {
|
|
140
145
|
return;
|
|
141
146
|
}
|
|
142
|
-
await this.
|
|
147
|
+
await this.makeRequiredUiDirectories();
|
|
143
148
|
const instance = this.UiAutomodule();
|
|
144
149
|
await instance.run();
|
|
145
150
|
}
|
|
@@ -152,13 +157,18 @@ class CliCommandRunner {
|
|
|
152
157
|
},
|
|
153
158
|
]);
|
|
154
159
|
}
|
|
160
|
+
async makeRequiredUiDirectories() {
|
|
161
|
+
await this.mkdir(this.uiTestSaveDir, { recursive: true });
|
|
162
|
+
await this.mkdir(this.uiModuleSaveDir, { recursive: true });
|
|
163
|
+
await this.mkdir(this.uiFakeSaveDir, { recursive: true });
|
|
164
|
+
}
|
|
155
165
|
expandHomeDir(inputPath) {
|
|
156
166
|
return inputPath.startsWith('~')
|
|
157
167
|
? path_1.default.join(os_1.default.homedir(), inputPath.slice(1))
|
|
158
168
|
: inputPath;
|
|
159
169
|
}
|
|
160
|
-
get
|
|
161
|
-
return `src/testDoubles/${this.
|
|
170
|
+
get uiFakeSaveDir() {
|
|
171
|
+
return `src/testDoubles/${this.componentName}`;
|
|
162
172
|
}
|
|
163
173
|
get prompts() {
|
|
164
174
|
return CliCommandRunner.prompts;
|
|
@@ -168,18 +178,18 @@ class CliCommandRunner {
|
|
|
168
178
|
}
|
|
169
179
|
ImplAutomodule() {
|
|
170
180
|
return meta_node_1.ImplAutomodule.Create({
|
|
171
|
-
testSaveDir: this.
|
|
172
|
-
moduleSaveDir: this.
|
|
173
|
-
fakeSaveDir: this.
|
|
181
|
+
testSaveDir: this.implTestSaveDir,
|
|
182
|
+
moduleSaveDir: this.implModuleSaveDir,
|
|
183
|
+
fakeSaveDir: this.implFakeSaveDir,
|
|
174
184
|
interfaceName: this.interfaceName,
|
|
175
185
|
implName: this.implName,
|
|
176
186
|
});
|
|
177
187
|
}
|
|
178
188
|
UiAutomodule() {
|
|
179
189
|
return meta_node_1.UiAutomodule.Create({
|
|
180
|
-
testSaveDir: this.
|
|
181
|
-
moduleSaveDir: this.
|
|
182
|
-
fakeSaveDir: this.
|
|
190
|
+
testSaveDir: this.uiTestSaveDir,
|
|
191
|
+
moduleSaveDir: this.uiModuleSaveDir,
|
|
192
|
+
fakeSaveDir: this.uiFakeSaveDir,
|
|
183
193
|
componentName: this.componentName,
|
|
184
194
|
});
|
|
185
195
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CliCommandRunner.js","sourceRoot":"","sources":["../../src/modules/CliCommandRunner.ts"],"names":[],"mappings":";;;;;AAAA,0CAAmC;AACnC,4CAAmB;AACnB,gDAAuB;AACvB,oDAI6B;AAC7B,sDAA6B;AAE7B,MAAqB,gBAAgB;IAyBjC,YAAsB,IAAc;QAlBnB,sBAAiB,GAAG,aAAa,CAAA;QAIjC,yBAAoB,GAAG,gBAAgB,CAAA;QAKvC,oBAAe,GAAG,WAAW,CAAA;QAG7B,sBAAiB,GAAG;YACjC,IAAI,CAAC,iBAAiB;YACtB,IAAI,CAAC,oBAAoB;YACzB,IAAI,CAAC,eAAe;SACvB,CAAA;QA0EgB,yBAAoB,GACjC,6DAA6D,CAAA;QAEhD,oBAAe,GAC5B,4EAA4E,CAAA;
|
|
1
|
+
{"version":3,"file":"CliCommandRunner.js","sourceRoot":"","sources":["../../src/modules/CliCommandRunner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -39,8 +39,6 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
39
39
|
private static readonly createUiCommand = 'create.ui'
|
|
40
40
|
private static readonly componentName = generateId()
|
|
41
41
|
|
|
42
|
-
private static readonly testSaveDir = 'src/__tests__/modules'
|
|
43
|
-
private static readonly moduleSaveDir = 'src/modules'
|
|
44
42
|
private static readonly githubToken = generateId()
|
|
45
43
|
|
|
46
44
|
protected static async beforeEach() {
|
|
@@ -123,7 +121,7 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
123
121
|
|
|
124
122
|
assert.isEqualDeep(
|
|
125
123
|
callsToMkdir[0],
|
|
126
|
-
{ path: this.
|
|
124
|
+
{ path: this.implTestSaveDir, options: { recursive: true } },
|
|
127
125
|
'Did not create test save dir!'
|
|
128
126
|
)
|
|
129
127
|
}
|
|
@@ -134,7 +132,7 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
134
132
|
|
|
135
133
|
assert.isEqualDeep(
|
|
136
134
|
callsToMkdir[1],
|
|
137
|
-
{ path: this.
|
|
135
|
+
{ path: this.implModuleSaveDir, options: { recursive: true } },
|
|
138
136
|
'Did not create module save dir!'
|
|
139
137
|
)
|
|
140
138
|
}
|
|
@@ -160,9 +158,9 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
160
158
|
assert.isEqualDeep(
|
|
161
159
|
FakeAutomodule.callsToConstructor[0],
|
|
162
160
|
{
|
|
163
|
-
testSaveDir: this.
|
|
164
|
-
moduleSaveDir: this.
|
|
165
|
-
fakeSaveDir: this.
|
|
161
|
+
testSaveDir: this.implTestSaveDir,
|
|
162
|
+
moduleSaveDir: this.implModuleSaveDir,
|
|
163
|
+
fakeSaveDir: this.implFakeSaveDir,
|
|
166
164
|
interfaceName: this.interfaceName,
|
|
167
165
|
implName: this.implName,
|
|
168
166
|
},
|
|
@@ -317,7 +315,7 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
317
315
|
|
|
318
316
|
assert.isEqualDeep(
|
|
319
317
|
callsToMkdir[0],
|
|
320
|
-
{ path: this.
|
|
318
|
+
{ path: this.uiTestSaveDir, options: { recursive: true } },
|
|
321
319
|
'Did not create test save dir!'
|
|
322
320
|
)
|
|
323
321
|
}
|
|
@@ -328,7 +326,7 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
328
326
|
|
|
329
327
|
assert.isEqualDeep(
|
|
330
328
|
callsToMkdir[1],
|
|
331
|
-
{ path: this.
|
|
329
|
+
{ path: this.uiModuleSaveDir, options: { recursive: true } },
|
|
332
330
|
'Did not create module save dir!'
|
|
333
331
|
)
|
|
334
332
|
}
|
|
@@ -340,7 +338,7 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
340
338
|
assert.isEqualDeep(
|
|
341
339
|
callsToMkdir[2],
|
|
342
340
|
{
|
|
343
|
-
path: this.
|
|
341
|
+
path: this.uiFakeSaveDir,
|
|
344
342
|
options: { recursive: true },
|
|
345
343
|
},
|
|
346
344
|
'Did not create fake save dir!'
|
|
@@ -354,9 +352,9 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
354
352
|
assert.isEqualDeep(
|
|
355
353
|
FakeAutomodule.callsToConstructor[0],
|
|
356
354
|
{
|
|
357
|
-
testSaveDir: this.
|
|
358
|
-
moduleSaveDir: this.
|
|
359
|
-
fakeSaveDir: this.
|
|
355
|
+
testSaveDir: this.uiTestSaveDir,
|
|
356
|
+
moduleSaveDir: this.uiModuleSaveDir,
|
|
357
|
+
fakeSaveDir: this.uiFakeSaveDir,
|
|
360
358
|
componentName: this.componentName,
|
|
361
359
|
},
|
|
362
360
|
'Did not create UiAutomodule with expected options!'
|
|
@@ -374,10 +372,6 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
374
372
|
)
|
|
375
373
|
}
|
|
376
374
|
|
|
377
|
-
private static get fakeSaveDirComponent() {
|
|
378
|
-
return `src/testDoubles/${this.componentName}`
|
|
379
|
-
}
|
|
380
|
-
|
|
381
375
|
private static async runCreateUi(responses?: Record<string, string>) {
|
|
382
376
|
setFakeResponses({
|
|
383
377
|
componentName: this.componentName,
|
|
@@ -430,10 +424,20 @@ export default class CliCommandRunnerTest extends AbstractSpruceTest {
|
|
|
430
424
|
.filter(Boolean)
|
|
431
425
|
}
|
|
432
426
|
|
|
433
|
-
private static
|
|
427
|
+
private static readonly implTestSaveDir = 'src/__tests__/modules'
|
|
428
|
+
private static readonly implModuleSaveDir = 'src/modules'
|
|
429
|
+
|
|
430
|
+
private static get implFakeSaveDir() {
|
|
434
431
|
return `src/testDoubles/${this.interfaceName}`
|
|
435
432
|
}
|
|
436
433
|
|
|
434
|
+
private static readonly uiTestSaveDir = 'src/__tests__/ui'
|
|
435
|
+
private static readonly uiModuleSaveDir = 'src/ui'
|
|
436
|
+
|
|
437
|
+
private static get uiFakeSaveDir() {
|
|
438
|
+
return `src/testDoubles/${this.componentName}`
|
|
439
|
+
}
|
|
440
|
+
|
|
437
441
|
private static setFakeImplAutomodule() {
|
|
438
442
|
ImplAutomodule.Class = FakeAutomodule
|
|
439
443
|
FakeAutomodule.resetTestDouble()
|
|
@@ -84,7 +84,7 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
84
84
|
return
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
await this.
|
|
87
|
+
await this.makeRequiredImplDirectories()
|
|
88
88
|
|
|
89
89
|
const automodule = this.ImplAutomodule()
|
|
90
90
|
await automodule.run()
|
|
@@ -115,10 +115,17 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
115
115
|
return this.interfaceName && this.implName
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
private async
|
|
119
|
-
await this.mkdir(this.
|
|
120
|
-
await this.mkdir(this.
|
|
121
|
-
await this.mkdir(this.
|
|
118
|
+
private async makeRequiredImplDirectories() {
|
|
119
|
+
await this.mkdir(this.implTestSaveDir, { recursive: true })
|
|
120
|
+
await this.mkdir(this.implModuleSaveDir, { recursive: true })
|
|
121
|
+
await this.mkdir(this.implFakeSaveDir, { recursive: true })
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
private readonly implTestSaveDir = 'src/__tests__/modules'
|
|
125
|
+
private readonly implModuleSaveDir = 'src/modules'
|
|
126
|
+
|
|
127
|
+
private get implFakeSaveDir() {
|
|
128
|
+
return `src/testDoubles/${this.interfaceName}`
|
|
122
129
|
}
|
|
123
130
|
|
|
124
131
|
private async createPackage() {
|
|
@@ -189,7 +196,7 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
189
196
|
return
|
|
190
197
|
}
|
|
191
198
|
|
|
192
|
-
await this.
|
|
199
|
+
await this.makeRequiredUiDirectories()
|
|
193
200
|
|
|
194
201
|
const instance = this.UiAutomodule()
|
|
195
202
|
await instance.run()
|
|
@@ -208,17 +215,23 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
208
215
|
private readonly componentNameMessage =
|
|
209
216
|
'What should the component be called? Example: YourComponent'
|
|
210
217
|
|
|
218
|
+
private async makeRequiredUiDirectories() {
|
|
219
|
+
await this.mkdir(this.uiTestSaveDir, { recursive: true })
|
|
220
|
+
await this.mkdir(this.uiModuleSaveDir, { recursive: true })
|
|
221
|
+
await this.mkdir(this.uiFakeSaveDir, { recursive: true })
|
|
222
|
+
}
|
|
223
|
+
|
|
211
224
|
private expandHomeDir(inputPath: string): string {
|
|
212
225
|
return inputPath.startsWith('~')
|
|
213
226
|
? path.join(os.homedir(), inputPath.slice(1))
|
|
214
227
|
: inputPath
|
|
215
228
|
}
|
|
216
229
|
|
|
217
|
-
private readonly
|
|
218
|
-
private readonly
|
|
230
|
+
private readonly uiTestSaveDir = 'src/__tests__/ui'
|
|
231
|
+
private readonly uiModuleSaveDir = 'src/ui'
|
|
219
232
|
|
|
220
|
-
private get
|
|
221
|
-
return `src/testDoubles/${this.
|
|
233
|
+
private get uiFakeSaveDir() {
|
|
234
|
+
return `src/testDoubles/${this.componentName}`
|
|
222
235
|
}
|
|
223
236
|
|
|
224
237
|
private get prompts() {
|
|
@@ -231,9 +244,9 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
231
244
|
|
|
232
245
|
private ImplAutomodule() {
|
|
233
246
|
return ImplAutomodule.Create({
|
|
234
|
-
testSaveDir: this.
|
|
235
|
-
moduleSaveDir: this.
|
|
236
|
-
fakeSaveDir: this.
|
|
247
|
+
testSaveDir: this.implTestSaveDir,
|
|
248
|
+
moduleSaveDir: this.implModuleSaveDir,
|
|
249
|
+
fakeSaveDir: this.implFakeSaveDir,
|
|
237
250
|
interfaceName: this.interfaceName,
|
|
238
251
|
implName: this.implName,
|
|
239
252
|
})
|
|
@@ -241,9 +254,9 @@ export default class CliCommandRunner implements CommandRunner {
|
|
|
241
254
|
|
|
242
255
|
private UiAutomodule() {
|
|
243
256
|
return UiAutomodule.Create({
|
|
244
|
-
testSaveDir: this.
|
|
245
|
-
moduleSaveDir: this.
|
|
246
|
-
fakeSaveDir: this.
|
|
257
|
+
testSaveDir: this.uiTestSaveDir,
|
|
258
|
+
moduleSaveDir: this.uiModuleSaveDir,
|
|
259
|
+
fakeSaveDir: this.uiFakeSaveDir,
|
|
247
260
|
componentName: this.componentName,
|
|
248
261
|
})
|
|
249
262
|
}
|