You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ak...@apache.org on 2015/01/06 17:42:41 UTC
ambari git commit: AMBARI-8971. Alerts UI: display Maint Mode status.
Additional patch. (akovalenko)
Repository: ambari
Updated Branches:
refs/heads/trunk c2da10c28 -> 71def630e
AMBARI-8971. Alerts UI: display Maint Mode status. Additional patch. (akovalenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/71def630
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/71def630
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/71def630
Branch: refs/heads/trunk
Commit: 71def630e40093e007782aa0b9f7622f60a2d643
Parents: c2da10c
Author: Aleksandr Kovalenko <ak...@hortonworks.com>
Authored: Tue Jan 6 18:39:56 2015 +0200
Committer: Aleksandr Kovalenko <ak...@hortonworks.com>
Committed: Tue Jan 6 18:40:40 2015 +0200
----------------------------------------------------------------------
.../mappers/alert_definition_summary_mapper.js | 5 +-
ambari-web/app/models/alert_definition.js | 48 ++++++++++++++-----
ambari-web/app/views/common/filter_view.js | 4 +-
ambari-web/app/views/common/sort_view.js | 4 +-
.../alert_definition_summary_mapper_test.js | 50 ++++++++++----------
ambari-web/test/models/alert_definition_test.js | 35 ++++++++------
.../test/views/common/filter_view_test.js | 15 ++++--
ambari-web/test/views/common/sort_view_test.js | 16 +++----
8 files changed, 106 insertions(+), 71 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/app/mappers/alert_definition_summary_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/alert_definition_summary_mapper.js b/ambari-web/app/mappers/alert_definition_summary_mapper.js
index 3404f41..0a0fb47 100644
--- a/ambari-web/app/mappers/alert_definition_summary_mapper.js
+++ b/ambari-web/app/mappers/alert_definition_summary_mapper.js
@@ -30,7 +30,10 @@ App.alertDefinitionSummaryMapper = App.QuickDataMapper.create({
var summary = {},
timestamp = 0;
Em.keys(alertDefinitionSummary.summary).forEach(function(status) {
- summary[status] = alertDefinitionSummary.summary[status].count;
+ summary[status] = {
+ count: alertDefinitionSummary.summary[status].count,
+ maintenanceCount: alertDefinitionSummary.summary[status].maintenance_count
+ };
if (alertDefinitionSummary.summary[status].original_timestamp > timestamp) {
timestamp = alertDefinitionSummary.summary[status].original_timestamp;
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/app/models/alert_definition.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/alert_definition.js b/ambari-web/app/models/alert_definition.js
index d7e56fb..9f4cd85 100644
--- a/ambari-web/app/models/alert_definition.js
+++ b/ambari-web/app/models/alert_definition.js
@@ -47,10 +47,22 @@ App.AlertDefinition = DS.Model.extend({
* Format:
* <code>
* {
- * "CRITICAL": 1,
- * "OK": 1,
- * "UNKNOWN": 0,
- * "WARN": 0
+ * "CRITICAL": {
+ * count: 1,
+ * maintenanceCount: 0
+ * },
+ * "OK": {
+ * count: 0,
+ * maintenanceCount: 1
+ * },
+ * "UNKNOWN": {
+ * count: 0,
+ * maintenanceCount: 0
+ * },
+ * "WARN": {
+ * count: 1,
+ * maintenanceCount: 1
+ * }
* }
* </code>
* @type {object}
@@ -118,21 +130,31 @@ App.AlertDefinition = DS.Model.extend({
hostCnt = 0,
self = this;
order.forEach(function (state) {
- var cnt = summary[state] ? summary[state] : 0;
+ var cnt = summary[state] ? summary[state].count + summary[state].maintenanceCount : 0;
hostCnt += cnt;
});
if (hostCnt > 1) {
// multiple hosts
return order.map(function (state) {
var shortState = self.get('shortState')[state];
- return summary[state] ? '<span class="alert-state-single-host label alert-state-' + state + '">' + shortState + ' (' + summary[state] + ')</span>' : null;
- }).compact().join(' ');
+ var result = '';
+ result += summary[state].count ? '<span class="alert-state-single-host label alert-state-' + state + '">' + shortState + ' (' + summary[state].count + ')</span>' : '';
+ // add status with maintenance mode icon
+ result += summary[state].maintenanceCount ?
+ '<span class="alert-state-single-host label alert-state-PENDING"><span class="icon-medkit"></span> ' + shortState + ' (' + summary[state].maintenanceCount + ')</span>' : '';
+ return result;
+ }).without('').join(' ');
} else if (hostCnt == 1) {
// single host, single status
return order.map(function (state) {
var shortState = self.get('shortState')[state];
- return summary[state] ? '<span class="alert-state-single-host label alert-state-' + state + '">' + shortState + '</span>' : null;
- }).compact().join(' ');
+ var result = '';
+ result += summary[state].count ? '<span class="alert-state-single-host label alert-state-' + state + '">' + shortState + '</span>' : '';
+ // add status with maintenance mode icon
+ result += summary[state].maintenanceCount ?
+ '<span class="alert-state-single-host label alert-state-PENDING"><span class="icon-medkit"></span> ' + shortState + '</span>' : '';
+ return result;
+ }).without('').join(' ');
} else if (hostCnt == 0) {
// none
return '<span class="alert-state-single-host label alert-state-PENDING">NONE</span>';
@@ -167,7 +189,7 @@ App.AlertDefinition = DS.Model.extend({
isCritical: function () {
var summary = this.get('summary');
var state = 'CRITICAL';
- return !!summary[state];
+ return !!summary[state] && !!(summary[state].count || summary[state].maintenanceCount);
}.property('summary'),
/**
@@ -177,7 +199,7 @@ App.AlertDefinition = DS.Model.extend({
isWarning: function () {
var summary = this.get('summary');
var state = 'WARNING';
- return !!summary[state];
+ return !!summary[state] && !!(summary[state].count || summary[state].maintenanceCount);
}.property('summary'),
/**
@@ -187,7 +209,7 @@ App.AlertDefinition = DS.Model.extend({
isOK: function () {
var summary = this.get('summary');
var state = 'OK';
- return !!summary[state];
+ return !!summary[state] && !!(summary[state].count || summary[state].maintenanceCount);
}.property('summary'),
/**
@@ -197,7 +219,7 @@ App.AlertDefinition = DS.Model.extend({
isUnknown: function () {
var summary = this.get('summary');
var state = 'UNKNOWN';
- return !!summary[state];
+ return !!summary[state] && !!(summary[state].count || summary[state].maintenanceCount);
}.property('summary'),
/**
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/app/views/common/filter_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/filter_view.js b/ambari-web/app/views/common/filter_view.js
index c353045..137fac4 100644
--- a/ambari-web/app/views/common/filter_view.js
+++ b/ambari-web/app/views/common/filter_view.js
@@ -619,13 +619,13 @@ module.exports = {
if ('PENDING' === compareValue) {
var isPending = true;
Em.keys(origin).forEach(function(state) {
- if (origin[state] && origin[state] > 0) {
+ if (origin[state] && (origin[state].count > 0 || origin[state].maintenanceCount > 0)) {
isPending = false;
}
});
return isPending;
}
- return !!origin[compareValue] && origin[compareValue] > 0;
+ return !!origin[compareValue] && (origin[compareValue].count > 0 || origin[compareValue].maintenanceCount > 0);
};
break;
case 'alert_group':
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/app/views/common/sort_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/sort_view.js b/ambari-web/app/views/common/sort_view.js
index b311b0b..b1345fe 100644
--- a/ambari-web/app/views/common/sort_view.js
+++ b/ambari-web/app/views/common/sort_view.js
@@ -177,8 +177,8 @@ var wrapperView = Em.View.extend({
st_order = a.get('severityOrder'),
ret = 0;
for (var i = 0; i < st_order.length; i++) {
- var a_v = Em.isNone(a_summary[st_order[i]]) ? 0 : a_summary[st_order[i]],
- b_v = Em.isNone(b_summary[st_order[i]]) ? 0 : b_summary[st_order[i]];
+ var a_v = Em.isNone(a_summary[st_order[i]]) ? 0 : a_summary[st_order[i]].count + a_summary[st_order[i]].maintenanceCount,
+ b_v = Em.isNone(b_summary[st_order[i]]) ? 0 : b_summary[st_order[i]].count + b_summary[st_order[i]].maintenanceCount;
ret = b_v - a_v;
if (ret !== 0) {
break;
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/test/mappers/alert_definition_summary_mapper_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mappers/alert_definition_summary_mapper_test.js b/ambari-web/test/mappers/alert_definition_summary_mapper_test.js
index b04b7e3..3a5155e 100644
--- a/ambari-web/test/mappers/alert_definition_summary_mapper_test.js
+++ b/ambari-web/test/mappers/alert_definition_summary_mapper_test.js
@@ -36,46 +36,46 @@ describe('App.alertDefinitionSummaryMapper', function () {
{
definition_id: 1,
summary: {
- OK: {count: 1, original_timestamp: 1},
- WARNING: {count: 1, original_timestamp: 2},
- CRITICAL: {count: 0, original_timestamp: 0},
- UNKNOWN: {count: 0, original_timestamp: 0}
+ OK: {count: 1, original_timestamp: 1, maintenance_count: 0},
+ WARNING: {count: 1, original_timestamp: 2, maintenance_count: 0},
+ CRITICAL: {count: 0, original_timestamp: 0, maintenance_count: 1},
+ UNKNOWN: {count: 0, original_timestamp: 0, maintenance_count: 0}
}
},
{
definition_id: 2,
summary: {
- OK: {count: 1, original_timestamp: 1},
- WARNING: {count: 5, original_timestamp: 2},
- CRITICAL: {count: 1, original_timestamp: 1},
- UNKNOWN: {count: 1, original_timestamp: 3}
+ OK: {count: 1, original_timestamp: 1, maintenance_count: 0},
+ WARNING: {count: 5, original_timestamp: 2, maintenance_count: 0},
+ CRITICAL: {count: 1, original_timestamp: 1, maintenance_count: 0},
+ UNKNOWN: {count: 1, original_timestamp: 3, maintenance_count: 0}
}
},
{
definition_id: 3,
summary: {
- OK: {count: 1, original_timestamp: 1},
- WARNING: {count: 2, original_timestamp: 2},
- CRITICAL: {count: 3, original_timestamp: 4},
- UNKNOWN: {count: 4, original_timestamp: 3}
+ OK: {count: 1, original_timestamp: 1, maintenance_count: 0},
+ WARNING: {count: 2, original_timestamp: 2, maintenance_count: 2},
+ CRITICAL: {count: 3, original_timestamp: 4, maintenance_count: 0},
+ UNKNOWN: {count: 4, original_timestamp: 3, maintenance_count: 0}
}
},
{
definition_id: 4,
summary: {
- OK: {count: 4, original_timestamp: 1},
- WARNING: {count: 3, original_timestamp: 2},
- CRITICAL: {count: 2, original_timestamp: 1},
- UNKNOWN: {count: 1, original_timestamp: 2}
+ OK: {count: 4, original_timestamp: 1, maintenance_count: 0},
+ WARNING: {count: 3, original_timestamp: 2, maintenance_count: 0},
+ CRITICAL: {count: 2, original_timestamp: 1, maintenance_count: 0},
+ UNKNOWN: {count: 1, original_timestamp: 2, maintenance_count: 0}
}
},
{
definition_id: 5,
summary: {
- OK: {count: 1, original_timestamp: 1},
- WARNING: {count: 1, original_timestamp: 2},
- CRITICAL: {count: 1, original_timestamp: 3},
- UNKNOWN: {count: 1, original_timestamp: 4}
+ OK: {count: 1, original_timestamp: 1, maintenance_count: 0},
+ WARNING: {count: 1, original_timestamp: 2, maintenance_count: 0},
+ CRITICAL: {count: 1, original_timestamp: 3, maintenance_count: 0},
+ UNKNOWN: {count: 1, original_timestamp: 4, maintenance_count: 0}
}
}
]
@@ -105,19 +105,19 @@ describe('App.alertDefinitionSummaryMapper', function () {
App.alertDefinitionSummaryMapper.map(dataToMap);
expect(App.PortAlertDefinition.find().findProperty('id', 1).get('lastTriggered')).to.equal(2);
- expect(App.PortAlertDefinition.find().findProperty('id', 1).get('summary')).to.eql({OK: 1, WARNING: 1, CRITICAL: 0, UNKNOWN: 0});
+ expect(App.PortAlertDefinition.find().findProperty('id', 1).get('summary')).to.eql({OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}, CRITICAL: {count: 0, maintenanceCount: 1}, UNKNOWN: {count: 0, maintenanceCount: 0}});
expect(App.MetricsAlertDefinition.find().findProperty('id', 2).get('lastTriggered')).to.equal(3);
- expect(App.MetricsAlertDefinition.find().findProperty('id', 2).get('summary')).to.eql({OK: 1, WARNING: 5, CRITICAL: 1, UNKNOWN: 1});
+ expect(App.MetricsAlertDefinition.find().findProperty('id', 2).get('summary')).to.eql({OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 5, maintenanceCount: 0}, CRITICAL: {count: 1, maintenanceCount: 0}, UNKNOWN: {count: 1, maintenanceCount: 0}});
expect(App.WebAlertDefinition.find().findProperty('id', 3).get('lastTriggered')).to.equal(4);
- expect(App.WebAlertDefinition.find().findProperty('id', 3).get('summary')).to.eql({OK: 1, WARNING: 2, CRITICAL: 3, UNKNOWN: 4});
+ expect(App.WebAlertDefinition.find().findProperty('id', 3).get('summary')).to.eql({OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 2, maintenanceCount: 2}, CRITICAL: {count: 3, maintenanceCount: 0}, UNKNOWN: {count: 4, maintenanceCount: 0}});
expect(App.AggregateAlertDefinition.find().findProperty('id', 4).get('lastTriggered')).to.equal(2);
- expect(App.AggregateAlertDefinition.find().findProperty('id', 4).get('summary')).to.eql({OK: 4, WARNING: 3, CRITICAL: 2, UNKNOWN: 1});
+ expect(App.AggregateAlertDefinition.find().findProperty('id', 4).get('summary')).to.eql({OK: {count: 4, maintenanceCount: 0}, WARNING: {count: 3, maintenanceCount: 0}, CRITICAL: {count: 2, maintenanceCount: 0}, UNKNOWN: {count: 1, maintenanceCount: 0}});
expect(App.ScriptAlertDefinition.find().findProperty('id', 5).get('lastTriggered')).to.equal(4);
- expect(App.ScriptAlertDefinition.find().findProperty('id', 5).get('summary')).to.eql({OK: 1, WARNING: 1, CRITICAL: 1, UNKNOWN: 1});
+ expect(App.ScriptAlertDefinition.find().findProperty('id', 5).get('summary')).to.eql({OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}, CRITICAL: {count: 1, maintenanceCount: 0}, UNKNOWN: {count: 1, maintenanceCount: 0}});
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/test/models/alert_definition_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/models/alert_definition_test.js b/ambari-web/test/models/alert_definition_test.js
index a5278a0..438f0c9 100644
--- a/ambari-web/test/models/alert_definition_test.js
+++ b/ambari-web/test/models/alert_definition_test.js
@@ -34,14 +34,14 @@ describe('App.AlertDefinition', function () {
Em.A([
{
- summary: {OK: 1, UNKNOWN: 1, WARNING: 2},
+ summary: {OK: {count: 1, maintenanceCount: 0}, UNKNOWN: {count: 1, maintenanceCount: 0}, WARNING: {count: 2, maintenanceCount: 0}, CRITICAL: {count: 0, maintenanceCount: 0}},
m: 'No CRITICAL',
e: '<span class="alert-state-single-host label alert-state-OK">OK (1)</span> ' +
'<span class="alert-state-single-host label alert-state-WARNING">WARN (2)</span> ' +
'<span class="alert-state-single-host label alert-state-UNKNOWN">UNKWN (1)</span>'
},
{
- summary: {WARNING: 2, CRITICAL: 3, UNKNOWN: 1, OK: 1},
+ summary: {WARNING: {count: 2, maintenanceCount: 0}, CRITICAL: {count: 3, maintenanceCount: 0}, UNKNOWN: {count: 1, maintenanceCount: 0}, OK: {count: 1, maintenanceCount: 0}},
m: 'All states exists',
e: '<span class="alert-state-single-host label alert-state-OK">OK (1)</span> ' +
'<span class="alert-state-single-host label alert-state-WARNING">WARN (2)</span> ' +
@@ -49,11 +49,16 @@ describe('App.AlertDefinition', function () {
'<span class="alert-state-single-host label alert-state-UNKNOWN">UNKWN (1)</span>'
},
{
- summary: {OK: 1},
+ summary: {OK: {count: 1, maintenanceCount: 0}, UNKNOWN: {count: 0, maintenanceCount: 0}, WARNING: {count: 0, maintenanceCount: 0}, CRITICAL: {count: 0, maintenanceCount: 0}},
m: 'Single host',
e: '<span class="alert-state-single-host label alert-state-OK">OK</span>'
},
{
+ summary: {OK: {count: 0, maintenanceCount: 1}, UNKNOWN: {count: 0, maintenanceCount: 0}, WARNING: {count: 0, maintenanceCount: 0}, CRITICAL: {count: 0, maintenanceCount: 0}},
+ m: 'Maintenance OK alert',
+ e: '<span class="alert-state-single-host label alert-state-PENDING"><span class="icon-medkit"></span> OK</span>'
+ },
+ {
summary: {},
m: 'Pending',
e: '<span class="alert-state-single-host label alert-state-PENDING">NONE</span>'
@@ -70,10 +75,10 @@ describe('App.AlertDefinition', function () {
describe('#isCriticalOrWarning', function () {
Em.A([
- {summary: {CRITICAL: 1}, e: true},
- {summary: {WARNING: 1}, e: true},
- {summary: {OK: 1}, e: false},
- {summary: {UNKNOWN: 1}, e: false},
+ {summary: {CRITICAL: {count: 1, maintenanceCount: 0}}, e: true},
+ {summary: {WARNING: {count: 1, maintenanceCount: 0}}, e: true},
+ {summary: {OK: {count: 1, maintenanceCount: 0}}, e: false},
+ {summary: {UNKNOWN: {count: 1, maintenanceCount: 0}}, e: false},
{summary: {}, e: false}
]).forEach(function (test, i) {
it('test ' + (i + 1), function () {
@@ -87,10 +92,10 @@ describe('App.AlertDefinition', function () {
describe('#isCritical', function () {
Em.A([
- {summary: {CRITICAL: 1}, e: true},
- {summary: {WARNING: 1}, e: false},
- {summary: {OK: 1}, e: false},
- {summary: {UNKNOWN: 1}, e: false},
+ {summary: {CRITICAL: {count: 1, maintenanceCount: 0}}, e: true},
+ {summary: {WARNING: {count: 1, maintenanceCount: 0}}, e: false},
+ {summary: {OK: {count: 1, maintenanceCount: 0}}, e: false},
+ {summary: {UNKNOWN: {count: 1, maintenanceCount: 0}}, e: false},
{summary: {}, e: false}
]).forEach(function (test, i) {
it('test ' + (i + 1), function () {
@@ -104,10 +109,10 @@ describe('App.AlertDefinition', function () {
describe('#isWarning', function () {
Em.A([
- {summary: {CRITICAL: 1}, e: false},
- {summary: {WARNING: 1}, e: true},
- {summary: {OK: 1}, e: false},
- {summary: {UNKNOWN: 1}, e: false},
+ {summary: {CRITICAL: {count: 1, maintenanceCount: 0}}, e: false},
+ {summary: {WARNING: {count: 1, maintenanceCount: 0}}, e: true},
+ {summary: {OK: {count: 1, maintenanceCount: 0}}, e: false},
+ {summary: {UNKNOWN: {count: 1, maintenanceCount: 0}}, e: false},
{summary: {}, e: false}
]).forEach(function (test, i) {
it('test ' + (i + 1), function () {
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/test/views/common/filter_view_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/views/common/filter_view_test.js b/ambari-web/test/views/common/filter_view_test.js
index 21f4b01..e5ca1ad 100644
--- a/ambari-web/test/views/common/filter_view_test.js
+++ b/ambari-web/test/views/common/filter_view_test.js
@@ -492,22 +492,27 @@ describe('filters.getFilterByType', function () {
Em.A([
{
- origin: {OK: 1},
+ origin: {OK: {count: 1, maintenanceCount: 0}},
compareValue: 'OK',
e: true
},
{
- origin: {WARN: 1},
+ origin: {OK: {count: 0, maintenanceCount: 1}},
+ compareValue: 'OK',
+ e: true
+ },
+ {
+ origin: {WARN: {count: 1, maintenanceCount: 0}},
compareValue: 'OK',
e: false
},
{
- origin: {WARN: 0},
+ origin: {WARN: {count: 0, maintenanceCount: 0}},
compareValue: 'WARN',
e: false
},
{
- origin: {OK: 0, WARN: 0},
+ origin: {OK: {count: 0, maintenanceCount: 0}, WARN: {count: 0, maintenanceCount: 0}},
compareValue: 'PENDING',
e: true
},
@@ -517,7 +522,7 @@ describe('filters.getFilterByType', function () {
e: true
},
{
- origin: {OK: 1},
+ origin: {OK: {count: 1, maintenanceCount: 0}},
compareValue: 'PENDING',
e: false
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/71def630/ambari-web/test/views/common/sort_view_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/views/common/sort_view_test.js b/ambari-web/test/views/common/sort_view_test.js
index aa7739a..0ebf1ba 100644
--- a/ambari-web/test/views/common/sort_view_test.js
+++ b/ambari-web/test/views/common/sort_view_test.js
@@ -31,26 +31,26 @@ describe('#wrapperView', function () {
Em.A([
{
- a: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 1}}),
- b: App.AlertDefinition.createRecord({summary: {WARNING: 1}}),
+ a: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}}}),
+ b: App.AlertDefinition.createRecord({summary: {WARNING: {count: 1, maintenanceCount: 0}}}),
order: true,
e: 1
},
{
- a: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 2}}),
- b: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 1}}),
+ a: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 2, maintenanceCount: 0}}}),
+ b: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}}}),
order: true,
e: 1
},
{
- a: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 1}}),
- b: App.AlertDefinition.createRecord({summary: {WARNING: 1}}),
+ a: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}}}),
+ b: App.AlertDefinition.createRecord({summary: {WARNING: {count: 1, maintenanceCount: 0}}}),
order: false,
e: -1
},
{
- a: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 2}}),
- b: App.AlertDefinition.createRecord({summary: {OK: 1, WARNING: 1}}),
+ a: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 2, maintenanceCount: 0}}}),
+ b: App.AlertDefinition.createRecord({summary: {OK: {count: 1, maintenanceCount: 0}, WARNING: {count: 1, maintenanceCount: 0}}}),
order: false,
e: -1
}