Skip to content

Commit 5f07852

Browse files
committed
Fix table result output (except for when using workspaces)
1 parent 89dc68b commit 5f07852

8 files changed

Lines changed: 37 additions & 26 deletions

File tree

lib/dependency-manager-adapters/bower.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@ module.exports = CoreObject.extend({
3232
return RSVP.resolve();
3333
}
3434
},
35-
_getDependencySet(depSet) {
36-
if (depSet[this.configKey]) {
37-
return depSet[this.configKey];
38-
}
39-
},
4035
_writeBowerFileWithDepSetChanges(depSet) {
4136
let adapter = this;
4237
let baseBowerJSON;
@@ -70,7 +65,6 @@ module.exports = CoreObject.extend({
7065

7166
changeToDependencySet(depSet) {
7267
let adapter = this;
73-
depSet = this._getDependencySet(depSet);
7468

7569
debug('Changing to dependency set: %s', JSON.stringify(depSet));
7670

lib/dependency-manager-adapters/npm.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,6 @@ module.exports = CoreObject.extend({
109109
});
110110
},
111111
applyDependencySet(depSet) {
112-
depSet = depSet[this.configKey];
113112

114113
debug('Changing to dependency set: %s', JSON.stringify(depSet));
115114

lib/dependency-manager-adapters/workspace.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ module.exports = CoreObject.extend({
5454
},
5555

5656
changeToDependencySet(depSet) {
57+
// TODO: What should this do for tables? Nesting? Needs different output
5758
this._packageAdapters.forEach(adapter => {
5859
adapter.applyDependencySet(depSet);
5960
});

lib/utils/scenario-manager.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ module.exports = CoreObject.extend({
2626

2727
changeTo(scenario) {
2828
return mapSeries(this.dependencyManagerAdapters, (depManager) => {
29-
return depManager.changeToDependencySet(scenario);
29+
if (scenario[depManager.configKey]) {
30+
return depManager.changeToDependencySet(scenario[depManager.configKey]);
31+
}
32+
return RSVP.resolve([]);
3033
}).then((results) => {
3134
return RSVP.resolve([].concat.apply([], results));
3235
});

test/dependency-manager-adapters/bower-adapter-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ describe('bowerAdapter', () => {
5757
});
5858
});
5959

60-
it('if bower dependencies in dep set, they install is run', () => {
60+
it('if bower dependencies in dep set, then install is run', () => {
6161
let stubbedRunRan = false;
6262
let stubbedRun = function(command, args, opts) {
6363
expect(command).to.equal('node');
@@ -72,7 +72,7 @@ describe('bowerAdapter', () => {
7272
let adapter = new BowerAdapter({ cwd: tmpdir, run: stubbedRun });
7373
return adapter.setup()
7474
.then(() => {
75-
return adapter.changeToDependencySet({ bower: { dependencies: { 'ember': '*' } } });
75+
return adapter.changeToDependencySet({ dependencies: { 'ember': '*' } });
7676
})
7777
.then(() => {
7878
expect(stubbedRunRan).to.equal(true);

test/dependency-manager-adapters/workspace-adapter-test.js

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -160,9 +160,7 @@ describe('workspaceAdapter', () => {
160160

161161
it('changes specified dependency versions', () => {
162162
return workspaceAdapter.changeToDependencySet({
163-
npm: {
164-
dependencies: { 'ember-cli-babel': '6.0.0' },
165-
},
163+
dependencies: { 'ember-cli-babel': '6.0.0' },
166164
}).then(() => {
167165
assertFileContainsJSON(path.join(tmpdir, 'packages/test/package.json'), {
168166
devDependencies: { 'ember-feature-flags': '1.0.0' },
@@ -175,9 +173,7 @@ describe('workspaceAdapter', () => {
175173

176174
it('changes specified npm dev dependency versions', () => {
177175
return workspaceAdapter.changeToDependencySet({
178-
npm: {
179-
devDependencies: { 'ember-feature-flags': '2.0.1' },
180-
},
176+
devDependencies: { 'ember-feature-flags': '2.0.1' },
181177
}).then(() => {
182178
assertFileContainsJSON(path.join(tmpdir, 'packages/test/package.json'), {
183179
devDependencies: { 'ember-feature-flags': '2.0.1' },
@@ -190,9 +186,7 @@ describe('workspaceAdapter', () => {
190186

191187
it('changes specified npm peer dependency versions', () => {
192188
return workspaceAdapter.changeToDependencySet({
193-
npm: {
194-
peerDependencies: { 'ember-cli-sass': '4.5.6' },
195-
},
189+
peerDependencies: { 'ember-cli-sass': '4.5.6' },
196190
}).then(() => {
197191
assertFileContainsJSON(path.join(tmpdir, 'packages/test/package.json'), {
198192
devDependencies: { 'ember-feature-flags': '1.0.0' },
@@ -205,9 +199,7 @@ describe('workspaceAdapter', () => {
205199

206200
it('changes specified resolution versions', () => {
207201
return workspaceAdapter.changeToDependencySet({
208-
npm: {
209-
resolutions: { 'ember-data': '3.5.0' },
210-
},
202+
resolutions: { 'ember-data': '3.5.0' },
211203
}).then(() => {
212204
assertFileContainsJSON('packages/test/package.json', {
213205
devDependencies: { 'ember-feature-flags': '1.0.0' },
@@ -220,9 +212,7 @@ describe('workspaceAdapter', () => {
220212

221213
it('can remove a package', () => {
222214
return workspaceAdapter.changeToDependencySet({
223-
npm: {
224-
devDependencies: { 'ember-feature-flags': null },
225-
},
215+
devDependencies: { 'ember-feature-flags': null },
226216
}).then(() => {
227217
assertFileContainsJSON(path.join(tmpdir, 'packages/test/package.json'), {
228218
devDependencies: {},

test/tasks/try-each-test.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,28 @@ describe('tryEach', () => {
154154
expect(output).to.include('Scenario first: SUCCESS');
155155
expect(output).to.include('Scenario second: SUCCESS');
156156
expect(output).to.include('Scenario with-bower-resolutions: SUCCESS');
157+
158+
let tables = output.filter((line) => {
159+
return typeof line === "object";
160+
});
161+
162+
expect(tables[0]).to.eql([
163+
[ 'ember-cli-deploy', '0.5.0', '0.5.0', 'npm'],
164+
[ 'ember', '1.13.0', '1.13.0', 'bower' ],
165+
[ 'bootstrap', 'Not Installed', 'Not Installed', 'bower' ]
166+
]);
167+
168+
expect(tables[1]).to.eql([
169+
[ 'ember-cli-deploy', '0.5.1', '0.5.1', 'npm'],
170+
[ 'ember', '2.0.0', '2.0.0', 'bower' ],
171+
[ 'jquery', '1.11.3', '1.11.3', 'bower' ]
172+
]);
173+
174+
expect(tables[2]).to.eql([
175+
[ 'ember-cli-deploy', '0.5.1', '0.5.1', 'npm'],
176+
[ 'ember', 'components/ember#beta', '3.0.0-beta.2-beta+b4135dfe', 'bower' ]
177+
]);
178+
157179
expect(output).to.include('All 3 scenarios succeeded');
158180
});
159181
});

test/utils/scenario-manager-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,19 +35,21 @@ describe('scenarioManager', () => {
3535
it('changes dependency sets on each of the managers, in order, and concats results', () => {
3636
let fakeAdapters = [
3737
new CoreObject({
38+
configKey: 'adapterA',
3839
changeToDependencySet() {
3940
return RSVP.resolve(['a', 'b', 'r']);
4041
},
4142
}),
4243
new CoreObject({
44+
configKey: 'adapterB',
4345
changeToDependencySet() {
4446
return RSVP.resolve(['u', 'q', 'a']);
4547
},
4648
}),
4749
];
4850

4951
let manager = new ScenarioManager({ dependencyManagerAdapters: fakeAdapters });
50-
return manager.changeTo({}).then((results) => {
52+
return manager.changeTo({ adapterA: {}, adapterB: {} }).then((results) => {
5153
expect(results).to.eql(['a', 'b', 'r', 'u', 'q', 'a']);
5254
});
5355
});

0 commit comments

Comments
 (0)