OLD | NEW |
1 <!-- | 1 <!-- |
2 Copyright 2014 The Chromium Authors. All rights reserved. | 2 Copyright 2014 The Chromium Authors. All rights reserved. |
3 Use of this source code is governed by a BSD-style license that can be | 3 Use of this source code is governed by a BSD-style license that can be |
4 found in the LICENSE file. | 4 found in the LICENSE file. |
5 --> | 5 --> |
6 <link href="../model/ct-builder-revisions.html" rel="import"> | 6 <link href="../model/ct-builder-revisions.html" rel="import"> |
7 | 7 |
8 <link rel="import" href="../lib/net.html"> | 8 <link rel="import" href="../lib/net.html"> |
9 <link rel="import" href="../model/ct-failure.html"> | 9 <link rel="import" href="../model/ct-failure.html"> |
10 <link rel="import" href="../model/ct-failure-group.html"> | 10 <link rel="import" href="../model/ct-failure-group.html"> |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 var keys = Object.keys(rev_a).sort(); | 60 var keys = Object.keys(rev_a).sort(); |
61 for (var i = 0; i < keys.length; i++) { | 61 for (var i = 0; i < keys.length; i++) { |
62 if (rev_a[keys[i]] != rev_b[keys[i]]) | 62 if (rev_a[keys[i]] != rev_b[keys[i]]) |
63 return rev_b[keys[i]] - rev_a[keys[i]]; | 63 return rev_b[keys[i]] - rev_a[keys[i]]; |
64 } | 64 } |
65 return 0; | 65 return 0; |
66 }, | 66 }, |
67 | 67 |
68 update: function() { | 68 update: function() { |
69 var annotationPromise = CTFailureGroup.fetchAnnotations(); | 69 var annotationPromise = CTFailureGroup.fetchAnnotations(); |
70 // FIXME: Change this to http://sheriff-o-matic.appspot.com/alerts | 70 net.json('http://sheriff-o-matic.appspot.com/alerts').then(function(data
) { |
71 // when Sheriff-o-matic is redeployed to serve /alerts. | |
72 net.json('http://auto-sheriff.appspot.com/data').then(function(data) { | |
73 annotationPromise.then(function(annotations) { | 71 annotationPromise.then(function(annotations) { |
74 // FIXME: Don't special-case the blink master. | 72 // FIXME: Don't special-case the blink master. |
75 this.builderLatestRevisions = new CTBuilderRevisions(data.latest_rev
isions['chromium.webkit']); | 73 this.builderLatestRevisions = new CTBuilderRevisions(data.latest_rev
isions['chromium.webkit']); |
76 this.failures = {}; | 74 this.failures = {}; |
77 this.lastUpdateDate = new Date(data.date * 1000); | 75 this.lastUpdateDate = new Date(data.date * 1000); |
78 data.range_groups.forEach(function(group) { | 76 data.range_groups.forEach(function(group) { |
79 this._processFailuresForGroup(group, data.alerts, annotations); | 77 this._processFailuresForGroup(group, data.alerts, annotations); |
80 }.bind(this)); | 78 }.bind(this)); |
81 Object.keys(this.failures, function (tree, failuresByTree) { | 79 Object.keys(this.failures, function (tree, failuresByTree) { |
82 this.failures[tree].sort(this._failureListComparator.bind(this, tr
ee)); | 80 this.failures[tree].sort(this._failureListComparator.bind(this, tr
ee)); |
(...skipping 19 matching lines...) Expand all Loading... |
102 | 100 |
103 var masterToTree = {}; | 101 var masterToTree = {}; |
104 Object.keys(this._trees, function(tree, masters) { | 102 Object.keys(this._trees, function(tree, masters) { |
105 masters.forEach(function(master) { | 103 masters.forEach(function(master) { |
106 masterToTree[master] = tree; | 104 masterToTree[master] = tree; |
107 }); | 105 }); |
108 }); | 106 }); |
109 | 107 |
110 group.failure_keys.forEach(function(failure_key) { | 108 group.failure_keys.forEach(function(failure_key) { |
111 var failure = failures.find(function(item) { return item.key == failur
e_key; }); | 109 var failure = failures.find(function(item) { return item.key == failur
e_key; }); |
112 if (failure.ignored_by.length) | |
113 return; | |
114 | |
115 var reason, failureType; | 110 var reason, failureType; |
116 if (failure.reason) { | 111 if (failure.reason) { |
117 // FIXME: Store the actual failure type in a different field instead
of smashing it into the reason. | 112 // FIXME: Store the actual failure type in a different field instead
of smashing it into the reason. |
118 var parts = failure.reason.split(':'); | 113 var parts = failure.reason.split(':'); |
119 reason = parts[0]; | 114 reason = parts[0]; |
120 failureType = parts[1] || 'FAIL'; | 115 failureType = parts[1] || 'FAIL'; |
121 } else { | 116 } else { |
122 reason = null; | 117 reason = null; |
123 failureType = 'UNKNOWN'; | 118 failureType = 'UNKNOWN'; |
124 } | 119 } |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 if (!this.failures[tree]) | 155 if (!this.failures[tree]) |
161 this.failures[tree] = []; | 156 this.failures[tree] = []; |
162 // FIXME: Need a better identifier for a failure group; | 157 // FIXME: Need a better identifier for a failure group; |
163 var key = group.sort_key; | 158 var key = group.sort_key; |
164 this.failures[tree].push(new CTFailureGroup(key, failures, annotations
[key])); | 159 this.failures[tree].push(new CTFailureGroup(key, failures, annotations
[key])); |
165 }.bind(this)); | 160 }.bind(this)); |
166 }, | 161 }, |
167 }); | 162 }); |
168 </script> | 163 </script> |
169 </polymer-element> | 164 </polymer-element> |
OLD | NEW |