Skip to content

Commit

Permalink
JBDS-4423 JBoss Fuse Tools Installer
Browse files Browse the repository at this point in the history
  • Loading branch information
dgolovin committed Jul 14, 2017
1 parent 95a92dc commit e9814b3
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 11 deletions.
4 changes: 4 additions & 0 deletions browser/model/installable-item.js
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,10 @@ class InstallableItem {
return this.selectedOption == 'detected' && this.hasOption('detected');
}

isValidVersionDetected() {
return this.hasOption('detected') && this.option['detected'].valid;
}

isInvalidVersionDetected() {
return this.hasOption('detected') && !this.option['detected'].valid;
}
Expand Down
17 changes: 10 additions & 7 deletions browser/pages/confirm/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -80,18 +80,21 @@ class ConfirmController {
}
for (let node of nodes) {
let watchComponent = ()=> {
if(!this.sc.checkboxModel[node].isSelected()) {
let installer = this.sc.checkboxModel[node];
if(installer.isSelected()) {
for(let dep of this.graph.dependenciesOf(node)) {
this.sc.checkboxModel[dep].references--;
if(!this.sc.checkboxModel[dep].isDisabled()) {
this.sc.checkboxModel[dep].selectedOption = 'detected';
let depInstaller = this.sc.checkboxModel[dep];
if(depInstaller.references==0 && depInstaller.isNotDetected()) {
depInstaller.selectedOption = 'install';
}
depInstaller.references++;
}
} else {
for(let dep of this.graph.dependenciesOf(node)) {
this.sc.checkboxModel[dep].references++;
if(this.sc.checkboxModel[dep].isDisabled()) {
this.sc.checkboxModel[dep].selectedOption = 'install';
let depInstaller = this.sc.checkboxModel[dep];
depInstaller.references--;
if(depInstaller.references==0) {
depInstaller.selectedOption = 'detected';
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ gulp.task('generate', ['create-modules-link', 'update-requirements'], function(c
cmd += ' --app-version="' + pjson.version + '"' + ' --build-version="' + pjson.version + '"';
cmd += ' --prune --ignore="test|' + config.prefetchFolder + '"';
cmd += ' --icon="' + config.configIcon + '"';
//console.log(cmd);
exec(cmd, common.createExecCallback(cb, true));
});

Expand Down Expand Up @@ -116,6 +115,7 @@ gulp.task('update-requirements', ['transpile:app'], function() {
reqs.devstudio.fileName = reqs.devstudio.url.substring(reqs.devstudio.url.lastIndexOf('/'));
reqs.devstudio.sha256sum = reqs.devstudio.url + '.sha256';
}
reqs.fusetools.fileName = reqs.devstudio.fileName;
resolve();
}
});
Expand Down
2 changes: 1 addition & 1 deletion requirements.json
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
"url": "https://devstudio.redhat.com/11/snapshots/builds/devstudio.product_master/latest/all/",
"fileName": "devstudio-11.0.0.AM1-installer-standalone.jar",
"sha256sum": "",
"version": "11.0.0.AM1",
"version": "11.0.0.AM2",
"additionalLocation": "",
"additionalIus": "com.jboss.devstudio.fuse.feature.feature.group",
"useDownload": false,
Expand Down
20 changes: 18 additions & 2 deletions test/unit/pages/confirm/controller-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -112,12 +112,22 @@ describe('ConfirmController', function() {
it('should deselect openjdk if jbosseap and devstudio are not selected', function() {
return confirmController.initPage().then(function() {
expect(confirmController.sc.checkboxModel.jdk.selectedOption).equals('install');
$watch.args.forEach(function(el) {
if(el[1].name == 'watchComponent'
&& (el[0] == 'checkboxModel.jbosseap.selectedOption'
|| el[0] == 'checkboxModel.devstudio.selectedOption'
|| el[0] == 'checkboxModel.fusetools.selectedOption')) {
el[1]();
}
});
confirmController.sc.checkboxModel.devstudio.selectedOption = 'detected';
confirmController.sc.checkboxModel.jbosseap.selectedOption = 'detected';
confirmController.sc.checkboxModel.fusetools.selectedOption = 'detected';
$watch.args.forEach(function(el) {
if(el[1].name == 'watchComponent'
&& el[0] == 'checkboxModel.jbosseap.selectedOption'
|| el[0] == 'checkboxModel.devstudio.selectedOption') {
&& (el[0] == 'checkboxModel.jbosseap.selectedOption'
|| el[0] == 'checkboxModel.devstudio.selectedOption'
|| el[0] == 'checkboxModel.fusetools.selectedOption')) {
el[1]();
}
});
Expand Down Expand Up @@ -163,6 +173,12 @@ describe('ConfirmController', function() {
return confirmController.initPage().then(function() {
expect(confirmController.sc.checkboxModel.cygwin.selectedOption).equals('install');
expect(confirmController.sc.checkboxModel.virtualbox.selectedOption).equals('install');
$watch.args.forEach(function(el) {
if(el[1].name == 'watchComponent'
&& el[0] == 'checkboxModel.cdk.selectedOption') {
el[1]('detected');
}
});
confirmController.sc.checkboxModel.cdk.selectedOption = 'detected';
$watch.args.forEach(function(el) {
if(el[1].name == 'watchComponent'
Expand Down

0 comments on commit e9814b3

Please sign in to comment.