@sprucelabs/spruce-cli 15.2.15 → 15.2.18

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/build/.spruce/events/events.contract.d.ts +102 -4
  3. package/build/.spruce/events/events.contract.js +3 -1
  4. package/build/.spruce/events/events.contract.js.map +1 -1
  5. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.d.ts +15 -0
  6. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js +18 -3
  7. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  8. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.d.ts +21 -4
  9. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js +24 -7
  10. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  11. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.d.ts +18 -1
  12. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js +21 -4
  13. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  14. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.d.ts +39 -0
  15. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js +53 -0
  16. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -0
  17. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.d.ts +11 -0
  18. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js +13 -2
  19. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  20. package/build/__tests__/behavioral/skill/UpgradingASkill.test.d.ts +0 -7
  21. package/build/__tests__/behavioral/skill/UpgradingASkill.test.js +38 -403
  22. package/build/__tests__/behavioral/skill/UpgradingASkill.test.js.map +1 -1
  23. package/build/__tests__/behavioral/skill/UpgradingASkill2.test.d.ts +7 -15
  24. package/build/__tests__/behavioral/skill/UpgradingASkill2.test.js +218 -341
  25. package/build/__tests__/behavioral/skill/UpgradingASkill2.test.js.map +1 -1
  26. package/build/__tests__/behavioral/skill/UpgradingASkill3.test.d.ts +16 -5
  27. package/build/__tests__/behavioral/skill/UpgradingASkill3.test.js +416 -141
  28. package/build/__tests__/behavioral/skill/UpgradingASkill3.test.js.map +1 -1
  29. package/build/__tests__/behavioral/skill/UpgradingASkill4.test.d.ts +5 -8
  30. package/build/__tests__/behavioral/skill/UpgradingASkill4.test.js +147 -205
  31. package/build/__tests__/behavioral/skill/UpgradingASkill4.test.js.map +1 -1
  32. package/build/__tests__/behavioral/skill/UpgradingASkill5.test.d.ts +11 -0
  33. package/build/__tests__/behavioral/skill/UpgradingASkill5.test.js +357 -0
  34. package/build/__tests__/behavioral/skill/UpgradingASkill5.test.js.map +1 -0
  35. package/build/__tests__/behavioral/tests/CreatingATest.test.d.ts +3 -0
  36. package/build/__tests__/behavioral/tests/CreatingATest.test.js +142 -45
  37. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  38. package/build/__tests__/implementation/EventTemplateItemBuilder.test.d.ts +1 -0
  39. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +105 -11
  40. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  41. package/build/templateItemBuilders/EventTemplateItemBuilder.js +2 -2
  42. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  43. package/package.json +37 -37
  44. package/src/.spruce/events/events.contract.ts +6 -0
  45. package/src/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.ts +15 -0
  46. package/src/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.ts +21 -4
  47. package/src/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.ts +18 -1
  48. package/src/.spruce/events/heartwood/listViews.v2021_02_11.contract.ts +47 -0
  49. package/src/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.ts +11 -0
  50. package/src/__tests__/behavioral/skill/UpgradingASkill.test.ts +0 -184
  51. package/src/__tests__/behavioral/skill/UpgradingASkill2.test.ts +120 -157
  52. package/src/__tests__/behavioral/skill/UpgradingASkill3.test.ts +184 -78
  53. package/src/__tests__/behavioral/skill/UpgradingASkill4.test.ts +90 -91
  54. package/src/__tests__/behavioral/skill/UpgradingASkill5.test.ts +128 -0
  55. package/src/__tests__/behavioral/tests/CreatingATest.test.ts +29 -12
  56. package/src/__tests__/implementation/EventTemplateItemBuilder.test.ts +124 -9
  57. package/src/templateItemBuilders/EventTemplateItemBuilder.ts +8 -2
@@ -35,13 +35,13 @@ var _test2 = _interopRequireDefault(require("../../../tests/utilities/test.utili
35
35
 
36
36
  var _uiAssert = _interopRequireDefault(require("../../../tests/utilities/uiAssert.utility"));
37
37
 
38
- var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class;
38
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class;
39
39
 
40
40
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
41
 
42
42
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
43
 
44
- var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)('can create behavioral test with AbstractSpruceFixtureTest', 'AbstractSpruceFixtureTest'), _dec4 = (0, _test.test)('can create behavioral test with AbstractStoreTest', 'AbstractStoreTest (requires install)'), _dec5 = (0, _test.test)('finds folders inside behavioral', 'behavioral'), _dec6 = (0, _test.test)('finds folders inside implementation', 'implementation'), _dec7 = (0, _test.test)(), _dec8 = (0, _test.test)('can select subdir 1', 'test'), _dec9 = (0, _test.test)('can select subdir 2', 'test-2'), _dec10 = (0, _test.test)(), (_class = /*#__PURE__*/function (_AbstractTestTest) {
44
+ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)('can create behavioral test with AbstractSpruceFixtureTest', 'AbstractSpruceFixtureTest'), _dec4 = (0, _test.test)('can create behavioral test with AbstractStoreTest', 'AbstractStoreTest (requires install)'), _dec5 = (0, _test.test)('finds folders inside behavioral', 'behavioral'), _dec6 = (0, _test.test)('finds folders inside implementation', 'implementation'), _dec7 = (0, _test.test)(), _dec8 = (0, _test.test)('can select sub dir 1', 'test'), _dec9 = (0, _test.test)('can select sub dir 2', 'test-2'), _dec10 = (0, _test.test)(), _dec11 = (0, _test.test)(), (_class = /*#__PURE__*/function (_AbstractTestTest) {
45
45
  (0, _inherits2["default"])(CreatingBehavioralTestsTest, _AbstractTestTest);
46
46
 
47
47
  var _super = _createSuper(CreatingBehavioralTestsTest);
@@ -120,8 +120,7 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
120
120
  var _canCreateBehavioralTest = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(testName) {
121
121
  var _this = this;
122
122
 
123
- var _yield$this$installAn, promise, response, match;
124
-
123
+ var match;
125
124
  return _regenerator["default"].wrap(function _callee3$(_context3) {
126
125
  while (1) {
127
126
  switch (_context3.prev = _context3.next) {
@@ -129,31 +128,23 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
129
128
  _LintService["default"].enableLinting();
130
129
 
131
130
  _context3.next = 3;
132
- return this.installAndStartTestActionAndWaitForInput();
131
+ return this.createTestAndGetFile(testName);
133
132
 
134
133
  case 3:
135
- _yield$this$installAn = _context3.sent;
136
- promise = _yield$this$installAn.promise;
137
- this.selectOptionBasedOnLabel(testName);
138
- _context3.next = 8;
139
- return promise;
140
-
141
- case 8:
142
- response = _context3.sent;
143
- match = _test2["default"].assertFileByNameInGeneratedFiles('CanBookAppointment.test.ts', response.files);
134
+ match = _context3.sent;
144
135
 
145
136
  _test.assert.doesInclude(match, 'behavioral');
146
137
 
147
- _context3.next = 13;
138
+ _context3.next = 7;
148
139
  return this.Service('build').build();
149
140
 
150
- case 13:
151
- _context3.next = 15;
141
+ case 7:
142
+ _context3.next = 9;
152
143
  return _test.assert.doesThrowAsync(function () {
153
144
  return _this.Service('command').execute('yarn test');
154
145
  }, /false[\s\S]*?does not equal[\s\S]*?true/gi);
155
146
 
156
- case 15:
147
+ case 9:
157
148
  case "end":
158
149
  return _context3.stop();
159
150
  }
@@ -171,7 +162,7 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
171
162
  key: "promptsToSelectFolderIfInsideTestDir",
172
163
  value: function () {
173
164
  var _promptsToSelectFolderIfInsideTestDir = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(testType) {
174
- var _yield$this$installAn2, promise;
165
+ var _yield$this$installAn, promise;
175
166
 
176
167
  return _regenerator["default"].wrap(function _callee4$(_context4) {
177
168
  while (1) {
@@ -186,8 +177,8 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
186
177
  return this.installAndStartTestActionAndWaitForInput(testType);
187
178
 
188
179
  case 5:
189
- _yield$this$installAn2 = _context4.sent;
190
- promise = _yield$this$installAn2.promise;
180
+ _yield$this$installAn = _context4.sent;
181
+ promise = _yield$this$installAn.promise;
191
182
 
192
183
  _uiAssert["default"].assertSelectRenderChoice(this.ui, '.', testType);
193
184
 
@@ -222,7 +213,7 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
222
213
  key: "listsManyDirsIfExistInsideTestDir",
223
214
  value: function () {
224
215
  var _listsManyDirsIfExistInsideTestDir = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
225
- var dirs, _i, _dirs, dir, _yield$this$installAn3, promise, _i2, _dirs2, _dir;
216
+ var dirs, _i, _dirs, dir, _yield$this$installAn2, promise, _i2, _dirs2, _dir;
226
217
 
227
218
  return _regenerator["default"].wrap(function _callee5$(_context5) {
228
219
  while (1) {
@@ -243,8 +234,8 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
243
234
  return this.installAndStartTestActionAndWaitForInput();
244
235
 
245
236
  case 6:
246
- _yield$this$installAn3 = _context5.sent;
247
- promise = _yield$this$installAn3.promise;
237
+ _yield$this$installAn2 = _context5.sent;
238
+ promise = _yield$this$installAn2.promise;
248
239
 
249
240
  for (_i2 = 0, _dirs2 = dirs; _i2 < _dirs2.length; _i2++) {
250
241
  _dir = _dirs2[_i2];
@@ -283,7 +274,7 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
283
274
  var _selectingAnOptionRendersToSubDir = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(dirName) {
284
275
  var _results$files, _results$files$;
285
276
 
286
- var _yield$this$installAn4, promise, results, expectedPath;
277
+ var _yield$this$installAn3, promise, results, expectedPath;
287
278
 
288
279
  return _regenerator["default"].wrap(function _callee6$(_context6) {
289
280
  while (1) {
@@ -298,8 +289,8 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
298
289
  return this.installAndStartTestActionAndWaitForInput('behavioral');
299
290
 
300
291
  case 5:
301
- _yield$this$installAn4 = _context6.sent;
302
- promise = _yield$this$installAn4.promise;
292
+ _yield$this$installAn3 = _context6.sent;
293
+ promise = _yield$this$installAn3.promise;
303
294
  _context6.next = 9;
304
295
  return this.ui.sendInput("".concat(dirName));
305
296
 
@@ -371,6 +362,38 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
371
362
 
372
363
  return doesNotListFiles;
373
364
  }()
365
+ }, {
366
+ key: "allTestsComeFakedToStart",
367
+ value: function () {
368
+ var _allTestsComeFakedToStart = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
369
+ var testFile, contents;
370
+ return _regenerator["default"].wrap(function _callee8$(_context8) {
371
+ while (1) {
372
+ switch (_context8.prev = _context8.next) {
373
+ case 0:
374
+ _context8.next = 2;
375
+ return this.createTestAndGetFile();
376
+
377
+ case 2:
378
+ testFile = _context8.sent;
379
+ contents = _spruceSkillUtils.diskUtil.readFile(testFile);
380
+
381
+ _test.assert.doesInclude(contents, 'fake.login()');
382
+
383
+ case 5:
384
+ case "end":
385
+ return _context8.stop();
386
+ }
387
+ }
388
+ }, _callee8, this);
389
+ }));
390
+
391
+ function allTestsComeFakedToStart() {
392
+ return _allTestsComeFakedToStart.apply(this, arguments);
393
+ }
394
+
395
+ return allTestsComeFakedToStart;
396
+ }()
374
397
  }, {
375
398
  key: "createTestSubDir",
376
399
  value: function createTestSubDir() {
@@ -387,19 +410,62 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
387
410
 
388
411
  return this.resolvePath.apply(this, ['src', '__tests__'].concat(testDirs));
389
412
  }
413
+ }, {
414
+ key: "createTest",
415
+ value: function () {
416
+ var _createTest = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
417
+ var testName,
418
+ _yield$this$installAn4,
419
+ promise,
420
+ response,
421
+ _args9 = arguments;
422
+
423
+ return _regenerator["default"].wrap(function _callee9$(_context9) {
424
+ while (1) {
425
+ switch (_context9.prev = _context9.next) {
426
+ case 0:
427
+ testName = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : 'AbstractSpruceFixtureTest';
428
+ _context9.next = 3;
429
+ return this.installAndStartTestActionAndWaitForInput();
430
+
431
+ case 3:
432
+ _yield$this$installAn4 = _context9.sent;
433
+ promise = _yield$this$installAn4.promise;
434
+ this.selectOptionBasedOnLabel(testName);
435
+ _context9.next = 8;
436
+ return promise;
437
+
438
+ case 8:
439
+ response = _context9.sent;
440
+ return _context9.abrupt("return", response);
441
+
442
+ case 10:
443
+ case "end":
444
+ return _context9.stop();
445
+ }
446
+ }
447
+ }, _callee9, this);
448
+ }));
449
+
450
+ function createTest() {
451
+ return _createTest.apply(this, arguments);
452
+ }
453
+
454
+ return createTest;
455
+ }()
390
456
  }, {
391
457
  key: "installAndStartTestActionAndWaitForInput",
392
458
  value: function () {
393
- var _installAndStartTestActionAndWaitForInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
459
+ var _installAndStartTestActionAndWaitForInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10() {
394
460
  var testType,
395
461
  promise,
396
- _args8 = arguments;
397
- return _regenerator["default"].wrap(function _callee8$(_context8) {
462
+ _args10 = arguments;
463
+ return _regenerator["default"].wrap(function _callee10$(_context10) {
398
464
  while (1) {
399
- switch (_context8.prev = _context8.next) {
465
+ switch (_context10.prev = _context10.next) {
400
466
  case 0:
401
- testType = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : 'behavioral';
402
- _context8.next = 3;
467
+ testType = _args10.length > 0 && _args10[0] !== undefined ? _args10[0] : 'behavioral';
468
+ _context10.next = 3;
403
469
  return this.installTests();
404
470
 
405
471
  case 3:
@@ -409,20 +475,20 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
409
475
  nameCamel: 'canBookAppointment',
410
476
  namePascal: 'CanBookAppointment'
411
477
  });
412
- _context8.next = 6;
478
+ _context10.next = 6;
413
479
  return this.waitForInput();
414
480
 
415
481
  case 6:
416
- return _context8.abrupt("return", {
482
+ return _context10.abrupt("return", {
417
483
  promise: promise
418
484
  });
419
485
 
420
486
  case 7:
421
487
  case "end":
422
- return _context8.stop();
488
+ return _context10.stop();
423
489
  }
424
490
  }
425
- }, _callee8, this);
491
+ }, _callee10, this);
426
492
  }));
427
493
 
428
494
  function installAndStartTestActionAndWaitForInput() {
@@ -434,24 +500,24 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
434
500
  }, {
435
501
  key: "waitAndSelectSubClass",
436
502
  value: function () {
437
- var _waitAndSelectSubClass = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9(selectedSubClass) {
438
- return _regenerator["default"].wrap(function _callee9$(_context9) {
503
+ var _waitAndSelectSubClass = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11(selectedSubClass) {
504
+ return _regenerator["default"].wrap(function _callee11$(_context11) {
439
505
  while (1) {
440
- switch (_context9.prev = _context9.next) {
506
+ switch (_context11.prev = _context11.next) {
441
507
  case 0:
442
- _context9.next = 2;
508
+ _context11.next = 2;
443
509
  return this.waitForInput();
444
510
 
445
511
  case 2:
446
- _context9.next = 4;
512
+ _context11.next = 4;
447
513
  return this.ui.sendInput(selectedSubClass !== null && selectedSubClass !== void 0 ? selectedSubClass : '');
448
514
 
449
515
  case 4:
450
516
  case "end":
451
- return _context9.stop();
517
+ return _context11.stop();
452
518
  }
453
519
  }
454
- }, _callee9, this);
520
+ }, _callee11, this);
455
521
  }));
456
522
 
457
523
  function waitAndSelectSubClass(_x4) {
@@ -460,8 +526,39 @@ var CreatingBehavioralTestsTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.t
460
526
 
461
527
  return waitAndSelectSubClass;
462
528
  }()
529
+ }, {
530
+ key: "createTestAndGetFile",
531
+ value: function () {
532
+ var _createTestAndGetFile = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12(testName) {
533
+ var response, match;
534
+ return _regenerator["default"].wrap(function _callee12$(_context12) {
535
+ while (1) {
536
+ switch (_context12.prev = _context12.next) {
537
+ case 0:
538
+ _context12.next = 2;
539
+ return this.createTest(testName);
540
+
541
+ case 2:
542
+ response = _context12.sent;
543
+ match = _test2["default"].assertFileByNameInGeneratedFiles('CanBookAppointment.test.ts', response.files);
544
+ return _context12.abrupt("return", match);
545
+
546
+ case 5:
547
+ case "end":
548
+ return _context12.stop();
549
+ }
550
+ }
551
+ }, _callee12, this);
552
+ }));
553
+
554
+ function createTestAndGetFile(_x5) {
555
+ return _createTestAndGetFile.apply(this, arguments);
556
+ }
557
+
558
+ return createTestAndGetFile;
559
+ }()
463
560
  }]);
464
561
  return CreatingBehavioralTestsTest;
465
- }(_AbstractTestTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "hasCreateAction", [_dec], Object.getOwnPropertyDescriptor(_class, "hasCreateAction"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "requiresInstallIfFeatureNotInstalled", [_dec2], Object.getOwnPropertyDescriptor(_class, "requiresInstallIfFeatureNotInstalled"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canCreateBehavioralTest", [_dec3, _dec4], Object.getOwnPropertyDescriptor(_class, "canCreateBehavioralTest"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "promptsToSelectFolderIfInsideTestDir", [_dec5, _dec6], Object.getOwnPropertyDescriptor(_class, "promptsToSelectFolderIfInsideTestDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "listsManyDirsIfExistInsideTestDir", [_dec7], Object.getOwnPropertyDescriptor(_class, "listsManyDirsIfExistInsideTestDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "selectingAnOptionRendersToSubDir", [_dec8, _dec9], Object.getOwnPropertyDescriptor(_class, "selectingAnOptionRendersToSubDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "doesNotListFiles", [_dec10], Object.getOwnPropertyDescriptor(_class, "doesNotListFiles"), _class)), _class));
562
+ }(_AbstractTestTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "hasCreateAction", [_dec], Object.getOwnPropertyDescriptor(_class, "hasCreateAction"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "requiresInstallIfFeatureNotInstalled", [_dec2], Object.getOwnPropertyDescriptor(_class, "requiresInstallIfFeatureNotInstalled"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canCreateBehavioralTest", [_dec3, _dec4], Object.getOwnPropertyDescriptor(_class, "canCreateBehavioralTest"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "promptsToSelectFolderIfInsideTestDir", [_dec5, _dec6], Object.getOwnPropertyDescriptor(_class, "promptsToSelectFolderIfInsideTestDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "listsManyDirsIfExistInsideTestDir", [_dec7], Object.getOwnPropertyDescriptor(_class, "listsManyDirsIfExistInsideTestDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "selectingAnOptionRendersToSubDir", [_dec8, _dec9], Object.getOwnPropertyDescriptor(_class, "selectingAnOptionRendersToSubDir"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "doesNotListFiles", [_dec10], Object.getOwnPropertyDescriptor(_class, "doesNotListFiles"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "allTestsComeFakedToStart", [_dec11], Object.getOwnPropertyDescriptor(_class, "allTestsComeFakedToStart"), _class)), _class));
466
563
  exports["default"] = CreatingBehavioralTestsTest;
467
564
  //# sourceMappingURL=CreatingATest.test.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/__tests__/behavioral/tests/CreatingATest.test.ts"],"names":["CreatingBehavioralTestsTest","assert","isFunction","Action","execute","installTests","testFeature","getFeatureInstaller","getFeature","buildParentClassCandidates","candidates","doesInclude","label","name","testName","LintService","enableLinting","installAndStartTestActionAndWaitForInput","promise","selectOptionBasedOnLabel","response","match","testUtil","assertFileByNameInGeneratedFiles","files","Service","build","doesThrowAsync","testType","createTestSubDir","uiAssert","assertSelectRenderChoice","ui","sendInput","waitAndSelectSubClass","dirs","dir","dirName","results","expectedPath","resolvePath","isEqual","path","file","resolveTestDir","diskUtil","writeFile","assertSelectDidNotRenderChoice","reset","newDir","createDir","testDirs","type","nameReadable","nameCamel","namePascal","waitForInput","selectedSubClass","AbstractTestTest"],"mappings":"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","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\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.getFeatureInstaller().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 { promise } = await this.installAndStartTestActionAndWaitForInput()\n\n\t\tthis.selectOptionBasedOnLabel(testName)\n\n\t\tconst response = await promise\n\n\t\tconst match = testUtil.assertFileByNameInGeneratedFiles(\n\t\t\t'CanBookAppointment.test.ts',\n\t\t\tresponse.files\n\t\t)\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 subdir 1', 'test')\n\t@test('can select subdir 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\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 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"],"file":"CreatingATest.test.js"}
1
+ {"version":3,"sources":["../../../../src/__tests__/behavioral/tests/CreatingATest.test.ts"],"names":["CreatingBehavioralTestsTest","assert","isFunction","Action","execute","installTests","testFeature","getFeatureInstaller","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"],"mappings":"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","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test'\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.getFeatureInstaller().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"],"file":"CreatingATest.test.js"}
@@ -11,4 +11,5 @@ export default class EventTemplateItemBuilderTest extends AbstractCliTest {
11
11
  protected static generateItems(contracts: EventContract[], expectedEventContractTemplateItems: EventContractTemplateItem[], expectedSchemaTemplateItems?: SchemaTemplateItem[]): void;
12
12
  protected static canPullEventContractSchemaFromCoreEventContract(): void;
13
13
  protected static sortsEventsAlphabetically(): void;
14
+ protected static eventContractTemplateItemsHaveProperNamespacesImports(): void;
14
15
  }
@@ -39,7 +39,7 @@ var _EventTemplateItemBuilder = _interopRequireDefault(require("../../templateIt
39
39
 
40
40
  var _AbstractCliTest2 = _interopRequireDefault(require("../../tests/AbstractCliTest"));
41
41
 
42
- var _eventSignatures2, _eventSignatures3, _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _class, _class2;
42
+ var _eventSignatures2, _eventSignatures3, _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2;
43
43
 
44
44
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
45
45
 
@@ -126,13 +126,13 @@ var relatedToRelatedToProximitySchema = (0, _schema.buildSchema)({
126
126
  }
127
127
  });
128
128
  var relatedToRelatedToProximitySchemaTemplateItem = {
129
- namespace: 'Proximity',
129
+ namespace: 'proximity',
130
130
  id: relatedToRelatedToProximitySchema.id,
131
131
  nameCamel: 'relatedToRelatedToProximitySchema',
132
132
  namePascal: 'RelatedToRelatedToProximitySchema',
133
133
  nameReadable: 'relatedToRelatedToProximitySchema',
134
134
  schema: _objectSpread(_objectSpread({}, relatedToRelatedToProximitySchema), {}, {
135
- namespace: 'Proximity'
135
+ namespace: 'proximity'
136
136
  }),
137
137
  isNested: true,
138
138
  destinationDir: '#spruce/events'
@@ -153,14 +153,14 @@ var relatedToProximitySchema = (0, _schema.buildSchema)({
153
153
  }
154
154
  });
155
155
  var relatedToProximitySchemaTemplateItem = {
156
- namespace: 'Proximity',
156
+ namespace: 'proximity',
157
157
  id: relatedToProximitySchema.id,
158
158
  nameCamel: 'relatedToProximitySchema',
159
159
  namePascal: 'RelatedToProximitySchema',
160
160
  nameReadable: 'relatedToProximitySchema',
161
161
  schema: {
162
162
  id: 'relatedToProximitySchema',
163
- namespace: 'Proximity',
163
+ namespace: 'proximity',
164
164
  version: expectedVersion,
165
165
  fields: {
166
166
  boolField: {
@@ -171,7 +171,7 @@ var relatedToProximitySchemaTemplateItem = {
171
171
  options: {
172
172
  schemaIds: [{
173
173
  id: 'relatedToRelatedToProximitySchema',
174
- namespace: 'Proximity',
174
+ namespace: 'proximity',
175
175
  version: expectedVersion
176
176
  }]
177
177
  }
@@ -184,6 +184,7 @@ var relatedToProximitySchemaTemplateItem = {
184
184
  var proximityEmitPayloadSchema = (0, _schema.buildSchema)({
185
185
  version: expectedVersion,
186
186
  id: 'proximityEmitPayload',
187
+ namespace: 'proximity',
187
188
  fields: {
188
189
  textField: {
189
190
  type: 'text'
@@ -197,14 +198,14 @@ var proximityEmitPayloadSchema = (0, _schema.buildSchema)({
197
198
  }
198
199
  });
199
200
  var proximityEmitPayloadTemplateItem = {
200
- namespace: 'Proximity',
201
+ namespace: 'proximity',
201
202
  id: proximityEmitPayloadSchema.id,
202
203
  nameCamel: 'proximityEmitPayload',
203
204
  namePascal: 'ProximityEmitPayload',
204
205
  nameReadable: 'proximityEmitPayload',
205
206
  schema: {
206
207
  id: 'proximityEmitPayload',
207
- namespace: 'Proximity',
208
+ namespace: 'proximity',
208
209
  version: expectedVersion,
209
210
  fields: {
210
211
  textField: {
@@ -215,7 +216,7 @@ var proximityEmitPayloadTemplateItem = {
215
216
  options: {
216
217
  schemaIds: [{
217
218
  id: 'relatedToProximitySchema',
218
- namespace: 'Proximity',
219
+ namespace: 'proximity',
219
220
  version: expectedVersion
220
221
  }]
221
222
  }
@@ -249,7 +250,7 @@ var expectedContractWithEmitPayloadTemplateItem = {
249
250
  emitPayloadSchema: _objectSpread({}, proximityEmitPayloadTemplateItem)
250
251
  })
251
252
  };
252
- var EventTemplateItemBuilderTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)('builds emit payload schema into a template item', [contractWithEmitPayload], [expectedContractWithEmitPayloadTemplateItem], [relatedToRelatedToProximitySchemaTemplateItem, relatedToProximitySchemaTemplateItem, proximityEmitPayloadTemplateItem]), _dec5 = (0, _test.test)('turns 1 contract with 2 event signature into 2 template items', [contractWith2Signatures], [didBookTemplateItem, willBookTemplateItem]), _dec6 = (0, _test.test)('turns 2 contract with 2 event signature into 4 template items', [contractWith2Signatures, contractWith2Signatures], [didBookTemplateItem, didBookTemplateItem, willBookTemplateItem, willBookTemplateItem]), _dec7 = (0, _test.test)('turns 1 contract with 2 namespaced event signatures to 2 template items', [contractWith2NamespacedSignatures], [didBookWithNamespaceTemplateItem, willBookWithNamespaceTemplateItem]), _dec8 = (0, _test.test)(), _dec9 = (0, _test.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractCliTest) {
253
+ var EventTemplateItemBuilderTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)('builds emit payload schema into a template item', [contractWithEmitPayload], [expectedContractWithEmitPayloadTemplateItem], [relatedToRelatedToProximitySchemaTemplateItem, relatedToProximitySchemaTemplateItem, proximityEmitPayloadTemplateItem]), _dec5 = (0, _test.test)('turns 1 contract with 2 event signature into 2 template items', [contractWith2Signatures], [didBookTemplateItem, willBookTemplateItem]), _dec6 = (0, _test.test)('turns 2 contract with 2 event signature into 4 template items', [contractWith2Signatures, contractWith2Signatures], [didBookTemplateItem, didBookTemplateItem, willBookTemplateItem, willBookTemplateItem]), _dec7 = (0, _test.test)('turns 1 contract with 2 namespaced event signatures to 2 template items', [contractWith2NamespacedSignatures], [didBookWithNamespaceTemplateItem, willBookWithNamespaceTemplateItem]), _dec8 = (0, _test.test)(), _dec9 = (0, _test.test)(), _dec10 = (0, _test.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractCliTest) {
253
254
  (0, _inherits2["default"])(EventTemplateItemBuilderTest, _AbstractCliTest);
254
255
 
255
256
  var _super = _createSuper(EventTemplateItemBuilderTest);
@@ -401,8 +402,101 @@ var EventTemplateItemBuilderTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.
401
402
 
402
403
  _test.assert.isEqual(eventContractTemplateItems[1].nameCamel, 'zebraCheeta');
403
404
  }
405
+ }, {
406
+ key: "eventContractTemplateItemsHaveProperNamespacesImports",
407
+ value: function eventContractTemplateItemsHaveProperNamespacesImports() {
408
+ var groupsExpectedImports = [{
409
+ "package": '#spruce/schemas/groups/v2021_12_01/listEmitTargetAndPayload.schema',
410
+ importAs: 'listEmitTargetAndPayloadSchema'
411
+ }, {
412
+ "package": '#spruce/schemas/groups/v2021_12_01/listResponsePayload.schema',
413
+ importAs: 'listResponsePayloadSchema'
414
+ }, {
415
+ importAs: '{ buildEventContract }',
416
+ "package": '@sprucelabs/mercury-types'
417
+ }, {
418
+ importAs: '{ buildPermissionContract }',
419
+ "package": '@sprucelabs/mercury-types'
420
+ }];
421
+ var appointmentsExpectedImports = [{
422
+ "package": '#spruce/schemas/appointments/v2021_06_23/listEmitTargetAndPayload.schema',
423
+ importAs: 'listEmitTargetAndPayloadSchema'
424
+ }, {
425
+ "package": '#spruce/schemas/appointments/v2021_06_23/listResponsePayload.schema',
426
+ importAs: 'listResponsePayloadSchema'
427
+ }, {
428
+ importAs: '{ buildEventContract }',
429
+ "package": '@sprucelabs/mercury-types'
430
+ }, {
431
+ importAs: '{ buildPermissionContract }',
432
+ "package": '@sprucelabs/mercury-types'
433
+ }];
434
+
435
+ var _this$itemBuilder$bui5 = this.itemBuilder.buildTemplateItems({
436
+ contracts: [{
437
+ eventSignatures: {
438
+ 'groups.list::v2021_12_01': {
439
+ emitPayloadSchema: {
440
+ id: 'listEmitTargetAndPayload',
441
+ version: 'v2021_12_01',
442
+ namespace: 'Groups',
443
+ name: '',
444
+ fields: {}
445
+ },
446
+ responsePayloadSchema: {
447
+ id: 'listResponsePayload',
448
+ version: 'v2021_12_01',
449
+ namespace: 'Groups',
450
+ name: '',
451
+ fields: {}
452
+ },
453
+ emitPermissionContract: {
454
+ id: 'listEmitPermissions',
455
+ name: 'list',
456
+ requireAllPermissions: false,
457
+ permissions: []
458
+ }
459
+ },
460
+ 'appointments.list::v2021_06_23': {
461
+ emitPayloadSchema: {
462
+ id: 'listEmitTargetAndPayload',
463
+ version: 'v2021_06_23',
464
+ namespace: 'Appointments',
465
+ name: '',
466
+ fields: {}
467
+ },
468
+ responsePayloadSchema: {
469
+ id: 'listResponsePayload',
470
+ version: 'v2021_06_23',
471
+ namespace: 'Appointments',
472
+ name: '',
473
+ fields: {}
474
+ },
475
+ emitPermissionContract: {
476
+ id: 'listEmitPermissions',
477
+ name: 'list appointments',
478
+ requireAllPermissions: false,
479
+ permissions: []
480
+ },
481
+ listenPermissionContract: {
482
+ id: 'listListenPermissions',
483
+ name: 'list appointments',
484
+ requireAllPermissions: false,
485
+ permissions: []
486
+ }
487
+ }
488
+ }
489
+ }],
490
+ localNamespace: 'testing'
491
+ }),
492
+ eventContractTemplateItems = _this$itemBuilder$bui5.eventContractTemplateItems;
493
+
494
+ _test.assert.isEqualDeep(eventContractTemplateItems[0].imports, groupsExpectedImports);
495
+
496
+ _test.assert.isEqualDeep(eventContractTemplateItems[1].imports, appointmentsExpectedImports);
497
+ }
404
498
  }]);
405
499
  return EventTemplateItemBuilderTest;
406
- }(_AbstractCliTest2["default"]), (0, _defineProperty2["default"])(_class2, "itemBuilder", void 0), _class2), ((0, _applyDecoratedDescriptor2["default"])(_class, "canCreateNewItemBuilder", [_dec], Object.getOwnPropertyDescriptor(_class, "canCreateNewItemBuilder"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "hasGenerateFunction", [_dec2], Object.getOwnPropertyDescriptor(_class, "hasGenerateFunction"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "turnsSingleContractIntoTemplateItem", [_dec3], Object.getOwnPropertyDescriptor(_class, "turnsSingleContractIntoTemplateItem"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "generateItems", [_dec4, _dec5, _dec6, _dec7], Object.getOwnPropertyDescriptor(_class, "generateItems"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canPullEventContractSchemaFromCoreEventContract", [_dec8], Object.getOwnPropertyDescriptor(_class, "canPullEventContractSchemaFromCoreEventContract"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "sortsEventsAlphabetically", [_dec9], Object.getOwnPropertyDescriptor(_class, "sortsEventsAlphabetically"), _class)), _class));
500
+ }(_AbstractCliTest2["default"]), (0, _defineProperty2["default"])(_class2, "itemBuilder", void 0), _class2), ((0, _applyDecoratedDescriptor2["default"])(_class, "canCreateNewItemBuilder", [_dec], Object.getOwnPropertyDescriptor(_class, "canCreateNewItemBuilder"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "hasGenerateFunction", [_dec2], Object.getOwnPropertyDescriptor(_class, "hasGenerateFunction"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "turnsSingleContractIntoTemplateItem", [_dec3], Object.getOwnPropertyDescriptor(_class, "turnsSingleContractIntoTemplateItem"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "generateItems", [_dec4, _dec5, _dec6, _dec7], Object.getOwnPropertyDescriptor(_class, "generateItems"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canPullEventContractSchemaFromCoreEventContract", [_dec8], Object.getOwnPropertyDescriptor(_class, "canPullEventContractSchemaFromCoreEventContract"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "sortsEventsAlphabetically", [_dec9], Object.getOwnPropertyDescriptor(_class, "sortsEventsAlphabetically"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "eventContractTemplateItemsHaveProperNamespacesImports", [_dec10], Object.getOwnPropertyDescriptor(_class, "eventContractTemplateItemsHaveProperNamespacesImports"), _class)), _class));
407
501
  exports["default"] = EventTemplateItemBuilderTest;
408
502
  //# sourceMappingURL=EventTemplateItemBuilder.test.js.map