@sprucelabs/spruce-cli 15.2.17 → 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 (50) hide show
  1. package/CHANGELOG.md +8 -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/package.json +34 -34
  39. package/src/.spruce/events/events.contract.ts +6 -0
  40. package/src/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.ts +15 -0
  41. package/src/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.ts +21 -4
  42. package/src/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.ts +18 -1
  43. package/src/.spruce/events/heartwood/listViews.v2021_02_11.contract.ts +47 -0
  44. package/src/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.ts +11 -0
  45. package/src/__tests__/behavioral/skill/UpgradingASkill.test.ts +0 -184
  46. package/src/__tests__/behavioral/skill/UpgradingASkill2.test.ts +120 -157
  47. package/src/__tests__/behavioral/skill/UpgradingASkill3.test.ts +184 -78
  48. package/src/__tests__/behavioral/skill/UpgradingASkill4.test.ts +90 -91
  49. package/src/__tests__/behavioral/skill/UpgradingASkill5.test.ts +128 -0
  50. package/src/__tests__/behavioral/tests/CreatingATest.test.ts +29 -12
@@ -23,41 +23,43 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
23
23
 
24
24
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
25
 
26
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
+
26
28
  var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
27
29
 
28
- var _fs = _interopRequireDefault(require("fs"));
30
+ var _spruceEventUtils = require("@sprucelabs/spruce-event-utils");
29
31
 
30
32
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
31
33
 
32
34
  var _test = require("@sprucelabs/test");
33
35
 
34
- var _CommandService = _interopRequireDefault(require("../../../services/CommandService"));
36
+ var _SyncAction = _interopRequireDefault(require("../../../features/error/actions/SyncAction"));
35
37
 
36
- var _AbstractCliTest2 = _interopRequireDefault(require("../../../tests/AbstractCliTest"));
38
+ var _UpdateDependenciesAction = _interopRequireDefault(require("../../../features/node/actions/UpdateDependenciesAction"));
37
39
 
38
- var _dec, _dec2, _dec3, _class;
40
+ var _CommandService = _interopRequireDefault(require("../../../services/CommandService"));
39
41
 
40
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
42
+ var _AbstractCliTest2 = _interopRequireDefault(require("../../../tests/AbstractCliTest"));
41
43
 
42
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
44
+ var _test2 = _interopRequireDefault(require("../../../tests/utilities/test.utility"));
43
45
 
44
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
46
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2;
45
47
 
46
48
  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); }; }
47
49
 
48
50
  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; } }
49
51
 
50
- var UpgradingASkillTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
51
- (0, _inherits2["default"])(UpgradingASkillTest, _AbstractCliTest);
52
+ var UpgradingASkill3Test = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(), _dec3 = (0, _test.test)(), _dec4 = (0, _test.test)(), _dec5 = (0, _test.test)(), _dec6 = (0, _test.test)(), _dec7 = (0, _test.test)('sync with errors installed'), _dec8 = (0, _test.test)('sync with errors not installed', false), _dec9 = (0, _test.test)(), _dec10 = (0, _test.test)(), (_class = (_class2 = /*#__PURE__*/function (_AbstractCliTest) {
53
+ (0, _inherits2["default"])(UpgradingASkill3Test, _AbstractCliTest);
52
54
 
53
- var _super = _createSuper(UpgradingASkillTest);
55
+ var _super = _createSuper(UpgradingASkill3Test);
54
56
 
55
- function UpgradingASkillTest() {
56
- (0, _classCallCheck2["default"])(this, UpgradingASkillTest);
57
+ function UpgradingASkill3Test() {
58
+ (0, _classCallCheck2["default"])(this, UpgradingASkill3Test);
57
59
  return _super.apply(this, arguments);
58
60
  }
59
61
 
60
- (0, _createClass2["default"])(UpgradingASkillTest, null, [{
62
+ (0, _createClass2["default"])(UpgradingASkill3Test, null, [{
61
63
  key: "beforeEach",
62
64
  value: function () {
63
65
  var _beforeEach = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
@@ -65,15 +67,21 @@ var UpgradingASkillTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(),
65
67
  while (1) {
66
68
  switch (_context.prev = _context.next) {
67
69
  case 0:
68
- _context.next = 2;
69
- return (0, _get2["default"])((0, _getPrototypeOf2["default"])(UpgradingASkillTest), "beforeEach", this).call(this);
70
+ if (!this.originalErrorSyncExecute) {
71
+ this.originalErrorSyncExecute = _SyncAction["default"].prototype.execute;
72
+ } else {
73
+ _SyncAction["default"].prototype.execute = this.originalErrorSyncExecute;
74
+ }
70
75
 
71
- case 2:
76
+ _context.next = 3;
77
+ return (0, _get2["default"])((0, _getPrototypeOf2["default"])(UpgradingASkill3Test), "beforeEach", this).call(this);
78
+
79
+ case 3:
72
80
  _CommandService["default"].setMockResponse(new RegExp(/yarn rebuild/gi), {
73
81
  code: 0
74
82
  });
75
83
 
76
- case 3:
84
+ case 4:
77
85
  case "end":
78
86
  return _context.stop();
79
87
  }
@@ -88,79 +96,29 @@ var UpgradingASkillTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(),
88
96
  return beforeEach;
89
97
  }()
90
98
  }, {
91
- key: "restoresMissingPackagesAndPlugins",
99
+ key: "doesNotAddResolvePathAliasesToDependenciesAfterUpgrade",
92
100
  value: function () {
93
- var _restoresMissingPackagesAndPlugins = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
94
- var features, pkg, checks, _iterator, _step, feat, code, nodeModule, path, plugin, _i, _checks, check, _i2, _checks2, _check;
95
-
101
+ var _doesNotAddResolvePathAliasesToDependenciesAfterUpgrade = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
102
+ var dependencies;
96
103
  return _regenerator["default"].wrap(function _callee2$(_context2) {
97
104
  while (1) {
98
105
  switch (_context2.prev = _context2.next) {
99
106
  case 0:
100
- _context2.next = 2;
101
- return this.FeatureFixture().installCachedFeatures('views');
102
-
103
- case 2:
104
- features = this.Service('pkg', process.cwd()).get('testSkillCache.everything');
105
- pkg = this.Service('pkg');
106
- checks = [];
107
- _iterator = _createForOfIteratorHelper(features);
108
-
109
- try {
110
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
111
- feat = _step.value;
112
- code = feat.code;
113
- nodeModule = "@sprucelabs/spruce-".concat(code, "-plugin");
114
- path = this.resolveHashSprucePath('features', "".concat(code, ".plugin.ts"));
115
- plugin = _spruceSkillUtils.diskUtil.doesFileExist(path) ? path : undefined;
116
- checks.push({
117
- nodeModule: pkg.get(['dependencies', nodeModule]) ? nodeModule : undefined,
118
- plugin: plugin
119
- });
120
- }
121
- } catch (err) {
122
- _iterator.e(err);
123
- } finally {
124
- _iterator.f();
125
- }
126
-
127
- for (_i = 0, _checks = checks; _i < _checks.length; _i++) {
128
- check = _checks[_i];
129
-
130
- if (check.nodeModule) {
131
- pkg.unset(['dependencies', check.nodeModule]);
132
- }
133
-
134
- if (check.plugin) {
135
- _spruceSkillUtils.diskUtil.deleteFile(check.plugin);
136
- }
137
- }
138
-
139
- _CommandService["default"].setMockResponse(/yarn clean/, {
140
- code: 0
141
- });
107
+ _CommandService["default"].clearMockResponses();
142
108
 
143
- _CommandService["default"].setMockResponse(/yarn build.dev/, {
144
- code: 0
145
- });
109
+ _context2.next = 3;
110
+ return this.FeatureFixture().installCachedFeatures('views');
146
111
 
147
- _context2.next = 12;
112
+ case 3:
113
+ _context2.next = 5;
148
114
  return this.Action('node', 'upgrade').execute({});
149
115
 
150
- case 12:
151
- for (_i2 = 0, _checks2 = checks; _i2 < _checks2.length; _i2++) {
152
- _check = _checks2[_i2];
153
-
154
- if (_check.nodeModule) {
155
- _test.assert.isTruthy(pkg.get(['dependencies', _check.nodeModule]), "".concat(_check.nodeModule, " was not added back as a dependencies."));
156
- }
116
+ case 5:
117
+ dependencies = this.Service('pkg').get('dependencies');
157
118
 
158
- if (_check.plugin) {
159
- _test.assert.isTrue(_spruceSkillUtils.diskUtil.doesFileExist(_check.plugin), "".concat(_check.plugin, " was not rewritten."));
160
- }
161
- }
119
+ _test.assert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases']);
162
120
 
163
- case 13:
121
+ case 7:
164
122
  case "end":
165
123
  return _context2.stop();
166
124
  }
@@ -168,37 +126,41 @@ var UpgradingASkillTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(),
168
126
  }, _callee2, this);
169
127
  }));
170
128
 
171
- function restoresMissingPackagesAndPlugins() {
172
- return _restoresMissingPackagesAndPlugins.apply(this, arguments);
129
+ function doesNotAddResolvePathAliasesToDependenciesAfterUpgrade() {
130
+ return _doesNotAddResolvePathAliasesToDependenciesAfterUpgrade.apply(this, arguments);
173
131
  }
174
132
 
175
- return restoresMissingPackagesAndPlugins;
133
+ return doesNotAddResolvePathAliasesToDependenciesAfterUpgrade;
176
134
  }()
177
135
  }, {
178
- key: "doesNotAskIfNewScriptsAreAddedToSkillFeature",
136
+ key: "featuresNotEnabledDontInstall",
179
137
  value: function () {
180
- var _doesNotAskIfNewScriptsAreAddedToSkillFeature = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
181
- var cli, pkg, skillFeature;
138
+ var _featuresNotEnabledDontInstall = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
139
+ var results, dependencies;
182
140
  return _regenerator["default"].wrap(function _callee3$(_context3) {
183
141
  while (1) {
184
142
  switch (_context3.prev = _context3.next) {
185
143
  case 0:
186
- _context3.next = 2;
187
- return this.FeatureFixture().installCachedFeatures('skills');
144
+ _CommandService["default"].clearMockResponses();
188
145
 
189
- case 2:
190
- cli = _context3.sent;
191
- pkg = this.Service('pkg');
192
- skillFeature = cli.getFeature('skill'); //@ts-ignore
146
+ _context3.next = 3;
147
+ return this.FeatureFixture().installCachedFeatures('schemas');
193
148
 
194
- skillFeature.scripts['taco'] = 'bravo';
195
- _context3.next = 8;
149
+ case 3:
150
+ _context3.next = 5;
196
151
  return this.Action('node', 'upgrade').execute({});
197
152
 
198
- case 8:
199
- _test.assert.isEqual(pkg.get(['scripts', 'taco']), 'bravo');
153
+ case 5:
154
+ results = _context3.sent;
155
+ dependencies = this.Service('pkg').get('dependencies');
156
+
157
+ _test.assert.isFalsy(dependencies['@sprucelabs/resolve-path-aliases']);
200
158
 
201
- this.assertSandboxListenerNotWritten();
159
+ _test.assert.doesThrow(function () {
160
+ return _test2["default"].assertFileByNameInGeneratedFiles('events.contract.ts', results.files);
161
+ });
162
+
163
+ this.assertViewPluginNotWritten();
202
164
 
203
165
  case 10:
204
166
  case "end":
@@ -208,92 +170,405 @@ var UpgradingASkillTest = (_dec = (0, _test.test)(), _dec2 = (0, _test.test)(),
208
170
  }, _callee3, this);
209
171
  }));
210
172
 
211
- function doesNotAskIfNewScriptsAreAddedToSkillFeature() {
212
- return _doesNotAskIfNewScriptsAreAddedToSkillFeature.apply(this, arguments);
173
+ function featuresNotEnabledDontInstall() {
174
+ return _featuresNotEnabledDontInstall.apply(this, arguments);
213
175
  }
214
176
 
215
- return doesNotAskIfNewScriptsAreAddedToSkillFeature;
177
+ return featuresNotEnabledDontInstall;
216
178
  }()
217
179
  }, {
218
- key: "canOverwriteMultipleChangedScript",
180
+ key: "upgradingSkillSyncsEvents",
219
181
  value: function () {
220
- var _canOverwriteMultipleChangedScript = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
221
- var pkg, promise, last;
182
+ var _upgradingSkillSyncsEvents = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
183
+ var results, events;
222
184
  return _regenerator["default"].wrap(function _callee4$(_context4) {
223
185
  while (1) {
224
186
  switch (_context4.prev = _context4.next) {
225
187
  case 0:
226
188
  _context4.next = 2;
189
+ return this.FeatureFixture().installCachedFeatures('events');
190
+
191
+ case 2:
192
+ _context4.next = 4;
193
+ return this.Action('node', 'upgrade').execute({});
194
+
195
+ case 4:
196
+ results = _context4.sent;
197
+ events = _spruceEventUtils.eventDiskUtil.resolveCombinedEventsContractFile(this.cwd);
198
+
199
+ _test.assert.isTrue(_spruceSkillUtils.diskUtil.doesFileExist(events));
200
+
201
+ _test2["default"].assertFileByNameInGeneratedFiles('events.contract.ts', results.files);
202
+
203
+ case 8:
204
+ case "end":
205
+ return _context4.stop();
206
+ }
207
+ }
208
+ }, _callee4, this);
209
+ }));
210
+
211
+ function upgradingSkillSyncsEvents() {
212
+ return _upgradingSkillSyncsEvents.apply(this, arguments);
213
+ }
214
+
215
+ return upgradingSkillSyncsEvents;
216
+ }()
217
+ }, {
218
+ key: "upgradeCallsUpdateDependencies",
219
+ value: function () {
220
+ var _upgradeCallsUpdateDependencies = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
221
+ var results;
222
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
223
+ while (1) {
224
+ switch (_context5.prev = _context5.next) {
225
+ case 0:
226
+ _context5.next = 2;
227
+ return this.FeatureFixture().installCachedFeatures('skills');
228
+
229
+ case 2:
230
+ _UpdateDependenciesAction["default"].prototype.execute = function () {
231
+ throw new Error('baaaaad');
232
+ };
233
+
234
+ _context5.next = 5;
235
+ return this.Action('node', 'upgrade').execute({});
236
+
237
+ case 5:
238
+ results = _context5.sent;
239
+
240
+ _test.assert.isTruthy(results.errors);
241
+
242
+ _test.assert.doesInclude(results.errors[0].message, 'baaaaad');
243
+
244
+ case 8:
245
+ case "end":
246
+ return _context5.stop();
247
+ }
248
+ }
249
+ }, _callee5, this);
250
+ }));
251
+
252
+ function upgradeCallsUpdateDependencies() {
253
+ return _upgradeCallsUpdateDependencies.apply(this, arguments);
254
+ }
255
+
256
+ return upgradeCallsUpdateDependencies;
257
+ }()
258
+ }, {
259
+ key: "callsCleanFixAndBuildDev",
260
+ value: function () {
261
+ var _callsCleanFixAndBuildDev = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
262
+ var wasCleanBuildCalled, wasBuildDevCalled, results;
263
+ return _regenerator["default"].wrap(function _callee7$(_context7) {
264
+ while (1) {
265
+ switch (_context7.prev = _context7.next) {
266
+ case 0:
267
+ _context7.next = 2;
227
268
  return this.FeatureFixture().installCachedFeatures('skills');
228
269
 
229
270
  case 2:
230
- pkg = this.Service('pkg');
231
- pkg.set({
232
- path: ['scripts', 'build.dev'],
233
- value: 'taco'
271
+ wasCleanBuildCalled = false;
272
+ _UpdateDependenciesAction["default"].prototype.execute = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
273
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
274
+ while (1) {
275
+ switch (_context6.prev = _context6.next) {
276
+ case 0:
277
+ return _context6.abrupt("return", {});
278
+
279
+ case 1:
280
+ case "end":
281
+ return _context6.stop();
282
+ }
283
+ }
284
+ }, _callee6);
285
+ }));
286
+
287
+ _CommandService["default"].setMockResponse('yarn clean.build', {
288
+ code: 0,
289
+ callback: function callback() {
290
+ wasCleanBuildCalled = true;
291
+ }
234
292
  });
235
- pkg.set({
236
- path: ['scripts', 'watch.build.dev'],
237
- value: 'taco'
293
+
294
+ wasBuildDevCalled = false;
295
+
296
+ _CommandService["default"].setMockResponse('yarn build.dev', {
297
+ code: 0,
298
+ callback: function callback() {
299
+ wasBuildDevCalled = true;
300
+ }
238
301
  });
239
- promise = this.Action('node', 'upgrade').execute({});
240
- _context4.next = 8;
241
- return this.waitForInput();
302
+
303
+ _context7.next = 9;
304
+ return this.Action('node', 'upgrade').execute({});
305
+
306
+ case 9:
307
+ results = _context7.sent;
308
+
309
+ _test.assert.isFalsy(results.errors);
310
+
311
+ _test.assert.isTrue(wasCleanBuildCalled);
312
+
313
+ _test.assert.isTrue(wasBuildDevCalled);
314
+
315
+ case 13:
316
+ case "end":
317
+ return _context7.stop();
318
+ }
319
+ }
320
+ }, _callee7, this);
321
+ }));
322
+
323
+ function callsCleanFixAndBuildDev() {
324
+ return _callsCleanFixAndBuildDev.apply(this, arguments);
325
+ }
326
+
327
+ return callsCleanFixAndBuildDev;
328
+ }()
329
+ }, {
330
+ key: "writesViewPlugin",
331
+ value: function () {
332
+ var _writesViewPlugin = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
333
+ var plugin;
334
+ return _regenerator["default"].wrap(function _callee8$(_context8) {
335
+ while (1) {
336
+ switch (_context8.prev = _context8.next) {
337
+ case 0:
338
+ _context8.next = 2;
339
+ return this.FeatureFixture().installCachedFeatures('views');
340
+
341
+ case 2:
342
+ plugin = this.getViewsPluginPath();
343
+
344
+ _test.assert.isTrue(_spruceSkillUtils.diskUtil.doesFileExist(plugin));
345
+
346
+ _spruceSkillUtils.diskUtil.deleteFile(plugin);
347
+
348
+ _test.assert.isFalse(_spruceSkillUtils.diskUtil.doesFileExist(plugin));
349
+
350
+ _context8.next = 8;
351
+ return this.Action('node', 'upgrade').execute({});
352
+
353
+ case 8:
354
+ _test.assert.isTrue(_spruceSkillUtils.diskUtil.doesFileExist(plugin));
355
+
356
+ case 9:
357
+ case "end":
358
+ return _context8.stop();
359
+ }
360
+ }
361
+ }, _callee8, this);
362
+ }));
363
+
364
+ function writesViewPlugin() {
365
+ return _writesViewPlugin.apply(this, arguments);
366
+ }
367
+
368
+ return writesViewPlugin;
369
+ }()
370
+ }, {
371
+ key: "upgradeSyncsErrors",
372
+ value: function () {
373
+ var _upgradeSyncsErrors = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10() {
374
+ var isInstalled,
375
+ wasHit,
376
+ _args10 = arguments;
377
+ return _regenerator["default"].wrap(function _callee10$(_context10) {
378
+ while (1) {
379
+ switch (_context10.prev = _context10.next) {
380
+ case 0:
381
+ isInstalled = _args10.length > 0 && _args10[0] !== undefined ? _args10[0] : true;
382
+ _context10.next = 3;
383
+ return this.FeatureFixture().installCachedFeatures(isInstalled ? 'errors' : 'schemas');
384
+
385
+ case 3:
386
+ wasHit = false;
387
+ _SyncAction["default"].prototype.execute = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
388
+ return _regenerator["default"].wrap(function _callee9$(_context9) {
389
+ while (1) {
390
+ switch (_context9.prev = _context9.next) {
391
+ case 0:
392
+ wasHit = true;
393
+ return _context9.abrupt("return", {});
394
+
395
+ case 2:
396
+ case "end":
397
+ return _context9.stop();
398
+ }
399
+ }
400
+ }, _callee9);
401
+ }));
402
+ this.disableCleanBuildAndYarnAdd();
403
+ _context10.next = 8;
404
+ return this.Action('node', 'upgrade').execute({});
242
405
 
243
406
  case 8:
244
- last = this.ui.getLastInvocation();
407
+ _test.assert.isEqual(wasHit, isInstalled);
245
408
 
246
- _test.assert.isEqual(last.command, 'prompt');
409
+ case 9:
410
+ case "end":
411
+ return _context10.stop();
412
+ }
413
+ }
414
+ }, _callee10, this);
415
+ }));
247
416
 
248
- _context4.next = 12;
249
- return this.ui.sendInput('overwrite');
417
+ function upgradeSyncsErrors() {
418
+ return _upgradeSyncsErrors.apply(this, arguments);
419
+ }
250
420
 
251
- case 12:
252
- last = this.ui.getLastInvocation();
421
+ return upgradeSyncsErrors;
422
+ }()
423
+ }, {
424
+ key: "resetsErrorPluginInSkill",
425
+ value: function () {
426
+ var _resetsErrorPluginInSkill = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
427
+ var _this$destroyErrorPlu, plugin, expectedContents, promise, actualContents;
428
+
429
+ return _regenerator["default"].wrap(function _callee11$(_context11) {
430
+ while (1) {
431
+ switch (_context11.prev = _context11.next) {
432
+ case 0:
433
+ _context11.next = 2;
434
+ return this.FeatureFixture().installCachedFeatures('skills');
253
435
 
254
- _test.assert.isEqual(last.command, 'prompt');
436
+ case 2:
437
+ _this$destroyErrorPlu = this.destroyErrorPlugin(), plugin = _this$destroyErrorPlu.plugin, expectedContents = _this$destroyErrorPlu.expectedContents;
438
+ _context11.next = 5;
439
+ return this.disableCleanBuildAndYarnAdd();
440
+
441
+ case 5:
442
+ promise = this.Action('node', 'upgrade').execute({
443
+ upgradeMode: 'askForChanged'
444
+ });
445
+ _context11.next = 8;
446
+ return this.waitForInput();
255
447
 
256
- _context4.next = 16;
448
+ case 8:
449
+ _context11.next = 10;
257
450
  return this.ui.sendInput('overwrite');
258
451
 
259
- case 16:
260
- _context4.next = 18;
452
+ case 10:
453
+ _context11.next = 12;
261
454
  return promise;
262
455
 
263
- case 18:
264
- _test.assert.isNotEqual(pkg.get(['scripts', 'build.dev']), 'taco');
456
+ case 12:
457
+ actualContents = _spruceSkillUtils.diskUtil.readFile(plugin);
265
458
 
266
- _test.assert.isNotEqual(pkg.get(['scripts', 'watch.build.dev']), 'taco');
459
+ _test.assert.isEqual(actualContents, expectedContents);
267
460
 
268
- case 20:
461
+ case 14:
269
462
  case "end":
270
- return _context4.stop();
463
+ return _context11.stop();
271
464
  }
272
465
  }
273
- }, _callee4, this);
466
+ }, _callee11, this);
274
467
  }));
275
468
 
276
- function canOverwriteMultipleChangedScript() {
277
- return _canOverwriteMultipleChangedScript.apply(this, arguments);
469
+ function resetsErrorPluginInSkill() {
470
+ return _resetsErrorPluginInSkill.apply(this, arguments);
278
471
  }
279
472
 
280
- return canOverwriteMultipleChangedScript;
473
+ return resetsErrorPluginInSkill;
281
474
  }()
282
475
  }, {
283
- key: "assertSandboxListenerNotWritten",
284
- value: function assertSandboxListenerNotWritten() {
285
- var listeners = this.resolvePath('src', 'listeners');
476
+ key: "resetsErrorPluginWhenErrorInstalled",
477
+ value: function () {
478
+ var _resetsErrorPluginWhenErrorInstalled = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
479
+ var _this$destroyErrorPlu2, plugin, expectedContents, results, actualContents;
480
+
481
+ return _regenerator["default"].wrap(function _callee12$(_context12) {
482
+ while (1) {
483
+ switch (_context12.prev = _context12.next) {
484
+ case 0:
485
+ _context12.next = 2;
486
+ return this.FeatureFixture().installCachedFeatures('errors');
487
+
488
+ case 2:
489
+ _context12.next = 4;
490
+ return this.Action('error', 'create').execute({
491
+ nameReadable: 'Test pass',
492
+ nameCamel: 'testPass'
493
+ });
494
+
495
+ case 4:
496
+ _this$destroyErrorPlu2 = this.destroyErrorPlugin(), plugin = _this$destroyErrorPlu2.plugin, expectedContents = _this$destroyErrorPlu2.expectedContents;
497
+ this.disableCleanAndBuild();
498
+ _context12.next = 8;
499
+ return this.Action('node', 'upgrade').execute({
500
+ upgradeMode: 'askForChanged'
501
+ });
286
502
 
287
- if (!_spruceSkillUtils.diskUtil.doesDirExist(listeners)) {
288
- return;
503
+ case 8:
504
+ results = _context12.sent;
505
+
506
+ _test.assert.isFalsy(results.errors);
507
+
508
+ actualContents = _spruceSkillUtils.diskUtil.readFile(plugin);
509
+
510
+ _test.assert.isEqual(actualContents, expectedContents);
511
+
512
+ case 12:
513
+ case "end":
514
+ return _context12.stop();
515
+ }
516
+ }
517
+ }, _callee12, this);
518
+ }));
519
+
520
+ function resetsErrorPluginWhenErrorInstalled() {
521
+ return _resetsErrorPluginWhenErrorInstalled.apply(this, arguments);
289
522
  }
290
523
 
291
- var matches = _fs["default"].readdirSync(listeners);
524
+ return resetsErrorPluginWhenErrorInstalled;
525
+ }()
526
+ }, {
527
+ key: "destroyErrorPlugin",
528
+ value: function destroyErrorPlugin() {
529
+ var plugin = this.resolveHashSprucePath('errors', 'options.types.ts');
530
+
531
+ var expectedContents = _spruceSkillUtils.diskUtil.readFile(plugin);
532
+
533
+ _spruceSkillUtils.diskUtil.writeFile(plugin, 'waka');
534
+
535
+ return {
536
+ plugin: plugin,
537
+ expectedContents: expectedContents
538
+ };
539
+ }
540
+ }, {
541
+ key: "getViewsPluginPath",
542
+ value: function getViewsPluginPath() {
543
+ return this.resolveHashSprucePath('features', 'view.plugin.ts');
544
+ }
545
+ }, {
546
+ key: "assertViewPluginNotWritten",
547
+ value: function assertViewPluginNotWritten() {
548
+ _test.assert.isFalse(_spruceSkillUtils.diskUtil.doesFileExist(this.getViewsPluginPath()));
549
+ }
550
+ }, {
551
+ key: "disableCleanBuildAndYarnAdd",
552
+ value: function disableCleanBuildAndYarnAdd() {
553
+ this.disableCleanAndBuild();
292
554
 
293
- _test.assert.isLength(matches, 0, 'A sandbox listeners was written and it should not have been.');
555
+ _CommandService["default"].setMockResponse(/yarn[\s\S]*?add/gi, {
556
+ code: 0
557
+ });
558
+ }
559
+ }, {
560
+ key: "disableCleanAndBuild",
561
+ value: function disableCleanAndBuild() {
562
+ _CommandService["default"].setMockResponse('yarn clean.build', {
563
+ code: 0
564
+ });
565
+
566
+ _CommandService["default"].setMockResponse('yarn build.dev', {
567
+ code: 0
568
+ });
294
569
  }
295
570
  }]);
296
- return UpgradingASkillTest;
297
- }(_AbstractCliTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "restoresMissingPackagesAndPlugins", [_dec], Object.getOwnPropertyDescriptor(_class, "restoresMissingPackagesAndPlugins"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "doesNotAskIfNewScriptsAreAddedToSkillFeature", [_dec2], Object.getOwnPropertyDescriptor(_class, "doesNotAskIfNewScriptsAreAddedToSkillFeature"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canOverwriteMultipleChangedScript", [_dec3], Object.getOwnPropertyDescriptor(_class, "canOverwriteMultipleChangedScript"), _class)), _class));
298
- exports["default"] = UpgradingASkillTest;
571
+ return UpgradingASkill3Test;
572
+ }(_AbstractCliTest2["default"]), (0, _defineProperty2["default"])(_class2, "originalErrorSyncExecute", void 0), _class2), ((0, _applyDecoratedDescriptor2["default"])(_class, "doesNotAddResolvePathAliasesToDependenciesAfterUpgrade", [_dec], Object.getOwnPropertyDescriptor(_class, "doesNotAddResolvePathAliasesToDependenciesAfterUpgrade"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "featuresNotEnabledDontInstall", [_dec2], Object.getOwnPropertyDescriptor(_class, "featuresNotEnabledDontInstall"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "upgradingSkillSyncsEvents", [_dec3], Object.getOwnPropertyDescriptor(_class, "upgradingSkillSyncsEvents"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "upgradeCallsUpdateDependencies", [_dec4], Object.getOwnPropertyDescriptor(_class, "upgradeCallsUpdateDependencies"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "callsCleanFixAndBuildDev", [_dec5], Object.getOwnPropertyDescriptor(_class, "callsCleanFixAndBuildDev"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "writesViewPlugin", [_dec6], Object.getOwnPropertyDescriptor(_class, "writesViewPlugin"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "upgradeSyncsErrors", [_dec7, _dec8], Object.getOwnPropertyDescriptor(_class, "upgradeSyncsErrors"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "resetsErrorPluginInSkill", [_dec9], Object.getOwnPropertyDescriptor(_class, "resetsErrorPluginInSkill"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "resetsErrorPluginWhenErrorInstalled", [_dec10], Object.getOwnPropertyDescriptor(_class, "resetsErrorPluginWhenErrorInstalled"), _class)), _class));
573
+ exports["default"] = UpgradingASkill3Test;
299
574
  //# sourceMappingURL=UpgradingASkill3.test.js.map