You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2016/02/18 12:14:32 UTC

ambari git commit: AMBARI-15085. Enhanced graph widgets aren't updated after getting no data (alexantonenko)

Repository: ambari
Updated Branches:
  refs/heads/branch-2.2 4923ff0a7 -> 878ae1599


AMBARI-15085. Enhanced graph widgets aren't updated after getting no data (alexantonenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/878ae159
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/878ae159
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/878ae159

Branch: refs/heads/branch-2.2
Commit: 878ae1599f8c58b98bcfb64a701a7e87d8f4ced0
Parents: 4923ff0
Author: Alex Antonenko <hi...@gmail.com>
Authored: Thu Feb 18 12:05:39 2016 +0200
Committer: Alex Antonenko <hi...@gmail.com>
Committed: Thu Feb 18 13:14:28 2016 +0200

----------------------------------------------------------------------
 .../app/mixins/common/widgets/widget_mixin.js   |  8 +++--
 .../test/mixins/common/widget_mixin_test.js     | 35 +++++++++++++++-----
 2 files changed, 33 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/878ae159/ambari-web/app/mixins/common/widgets/widget_mixin.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mixins/common/widgets/widget_mixin.js b/ambari-web/app/mixins/common/widgets/widget_mixin.js
index 863b510..3612ad6 100644
--- a/ambari-web/app/mixins/common/widgets/widget_mixin.js
+++ b/ambari-web/app/mixins/common/widgets/widget_mixin.js
@@ -320,7 +320,9 @@ App.WidgetMixin = Ember.Mixin.create({
             graph.set('hasData', false);
             this.set('isExportButtonHidden', true);
             graph._showMessage('info', this.t('graphs.noData.title'), this.t('graphs.noDataAtTime.message'));
-            this.get('metrics').clear();
+            this.set('metrics', this.get('metrics').reject(function (item) {
+              return this.get('content.metrics').someProperty('name', item.name);
+            }, this));
           }
         }
       }, this);
@@ -343,7 +345,9 @@ App.WidgetMixin = Ember.Mixin.create({
         graph.set('hasData', false);
         this.set('isExportButtonHidden', true);
         graph._showMessage('warn', this.t('graphs.error.title'), this.t('graphs.error.message').format(textStatus, errorThrown));
-        this.get('metrics').clear();
+        this.set('metrics', this.get('metrics').reject(function (item) {
+          return this.get('content.metrics').someProperty('name', item.name);
+        }, this));
       }
     }
   },

http://git-wip-us.apache.org/repos/asf/ambari/blob/878ae159/ambari-web/test/mixins/common/widget_mixin_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mixins/common/widget_mixin_test.js b/ambari-web/test/mixins/common/widget_mixin_test.js
index ba549a0..57bd212 100644
--- a/ambari-web/test/mixins/common/widget_mixin_test.js
+++ b/ambari-web/test/mixins/common/widget_mixin_test.js
@@ -391,11 +391,19 @@ describe('App.WidgetMixin', function () {
       view = Em.Object.create({
         _showMessage: Em.K
       }),
+      metrics = [
+        {
+          name: 'n0'
+        },
+        {
+          name: 'n1'
+        }
+      ],
       cases = [
         {
           graphView: null,
           isForcedAbort: false,
-          metricsLength: 1,
+          metrics: metrics,
           showMessageCallCount: 0,
           isExportButtonHidden: false,
           title: 'no graph view'
@@ -403,7 +411,7 @@ describe('App.WidgetMixin', function () {
         {
           graphView: {},
           isForcedAbort: false,
-          metricsLength: 1,
+          metrics: metrics,
           showMessageCallCount: 0,
           isExportButtonHidden: false,
           title: 'no childViews property'
@@ -412,7 +420,7 @@ describe('App.WidgetMixin', function () {
           graphView: {},
           childViews: [],
           isForcedAbort: false,
-          metricsLength: 1,
+          metrics: metrics,
           showMessageCallCount: 0,
           isExportButtonHidden: false,
           title: 'no child views'
@@ -421,7 +429,7 @@ describe('App.WidgetMixin', function () {
           graphView: {},
           childViews: [Em.Object.create({})],
           isForcedAbort: false,
-          metricsLength: 1,
+          metrics: metrics,
           showMessageCallCount: 0,
           isExportButtonHidden: false,
           title: 'no view with _showMessage method'
@@ -430,7 +438,11 @@ describe('App.WidgetMixin', function () {
           graphView: {},
           childViews: [Em.Object.create({}), view],
           isForcedAbort: false,
-          metricsLength: 0,
+          metrics: [
+            {
+              name: 'n1'
+            }
+          ],
           showMessageCallCount: 1,
           isExportButtonHidden: true,
           title: 'graph view is available'
@@ -439,7 +451,7 @@ describe('App.WidgetMixin', function () {
           graphView: {},
           childViews: [Em.Object.create({}), view],
           isForcedAbort: true,
-          metricsLength: 1,
+          metrics: metrics,
           showMessageCallCount: 0,
           isExportButtonHidden: false,
           title: 'request is aborted'
@@ -480,7 +492,14 @@ describe('App.WidgetMixin', function () {
 
         beforeEach(function () {
           obj = Em.Object.create(App.WidgetMixin, {
-            metrics: [{}],
+            metrics: metrics,
+            content: {
+              metrics: [
+                {
+                  name: 'n0'
+                }
+              ]
+            },
             isExportButtonHidden: false,
             graphView: item.graphView,
             childViews: item.childViews
@@ -491,7 +510,7 @@ describe('App.WidgetMixin', function () {
         });
 
         it('metrics array', function () {
-          expect(obj.get('metrics')).to.have.length(item.metricsLength);
+          expect(obj.get('metrics')).to.eql(item.metrics);
         });
 
         it('error message', function () {