You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by at...@apache.org on 2015/12/14 17:09:01 UTC
ambari git commit: AMBARI-14367 Web Client Displays Incorrect Host
Version Counts For Installed Repos. (atkach)
Repository: ambari
Updated Branches:
refs/heads/trunk 9cb0e457c -> e6fde3080
AMBARI-14367 Web Client Displays Incorrect Host Version Counts For Installed Repos. (atkach)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e6fde308
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e6fde308
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e6fde308
Branch: refs/heads/trunk
Commit: e6fde308048915ad401a935bfeb9dce06cc369b5
Parents: 9cb0e45
Author: Andrii Tkach <at...@hortonworks.com>
Authored: Mon Dec 14 18:07:52 2015 +0200
Committer: Andrii Tkach <at...@hortonworks.com>
Committed: Mon Dec 14 18:08:54 2015 +0200
----------------------------------------------------------------------
.../models/stack_version/repository_version.js | 6 ++++-
.../stack_version/repository_version_test.js | 28 ++++++++++++++++++--
2 files changed, 31 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/e6fde308/ambari-web/app/models/stack_version/repository_version.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/stack_version/repository_version.js b/ambari-web/app/models/stack_version/repository_version.js
index ada7f24..bea2d89 100644
--- a/ambari-web/app/models/stack_version/repository_version.js
+++ b/ambari-web/app/models/stack_version/repository_version.js
@@ -42,7 +42,11 @@ App.RepositoryVersion = DS.Model.extend({
/**
* @type {Array}
*/
- notInstalledHosts: Em.computed.firstNotBlank('stackVersion.notInstalledHosts', 'App.allHostNames'),
+ notInstalledHosts: function () {
+ return Array.isArray(this.get('stackVersion.notInstalledHosts'))
+ ? this.get('stackVersion.notInstalledHosts')
+ : App.get('allHostNames');
+ }.property('stackVersion.notInstalledHosts'),
/**
* @type {Array}
http://git-wip-us.apache.org/repos/asf/ambari/blob/e6fde308/ambari-web/test/models/stack_version/repository_version_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/models/stack_version/repository_version_test.js b/ambari-web/test/models/stack_version/repository_version_test.js
index 9122d87..7ec1bf4 100644
--- a/ambari-web/test/models/stack_version/repository_version_test.js
+++ b/ambari-web/test/models/stack_version/repository_version_test.js
@@ -31,12 +31,36 @@ describe('App.RepositoryVersion', function () {
App.TestAliases.testAsComputedFirstNotBlank(getModel(), 'status', ['stackVersion.state', 'defaultStatus']);
- App.TestAliases.testAsComputedFirstNotBlank(getModel(), 'notInstalledHosts', ['stackVersion.notInstalledHosts', 'App.allHostNames']);
-
App.TestAliases.testAsComputedIfThenElse(getModel(), 'noInitHostsTooltip', 'noInitHosts', Em.I18n.t('admin.stackVersions.version.emptyHostsTooltip'), Em.I18n.t('admin.stackVersions.version.hostsTooltip'));
App.TestAliases.testAsComputedIfThenElse(getModel(), 'noCurrentHostsTooltip', 'noCurrentHosts', Em.I18n.t('admin.stackVersions.version.emptyHostsTooltip'), Em.I18n.t('admin.stackVersions.version.hostsTooltip'));
App.TestAliases.testAsComputedIfThenElse(getModel(), 'noInstalledHostsTooltip', 'noInstalledHosts', Em.I18n.t('admin.stackVersions.version.emptyHostsTooltip'), Em.I18n.t('admin.stackVersions.version.hostsTooltip'));
+ describe("#notInstalledHosts", function() {
+
+ before(function () {
+ sinon.stub(App, 'get').returns(['host1']);
+ });
+ after(function () {
+ App.get.restore();
+ });
+
+ it("stackVersion is null", function() {
+ var model = getModel();
+ model.set('stackVersion', null);
+ model.propertyDidChange('notInstalledHosts');
+ expect(model.get('notInstalledHosts')).to.eql(['host1']);
+ });
+
+ it("stackVersion has notInstalledHosts array", function() {
+ var model = getModel();
+ model.set('stackVersion', Em.Object.create({
+ notInstalledHosts: ['host2']
+ }));
+ model.propertyDidChange('notInstalledHosts');
+ expect(model.get('notInstalledHosts')).to.eql(['host2']);
+ });
+ });
+
});