Index: Tools/GardeningServer/ui/ct-failure-analyzer.html |
diff --git a/Tools/GardeningServer/ui/ct-failure-analyzer.html b/Tools/GardeningServer/ui/ct-failure-analyzer.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c6c04d0ff7460d0fb3f8ae12cb3be22b5808856b |
--- /dev/null |
+++ b/Tools/GardeningServer/ui/ct-failure-analyzer.html |
@@ -0,0 +1,31 @@ |
+<!-- |
+Copyright 2014 The Chromium Authors. All rights reserved. |
+Use of this source code is governed by a BSD-style license that can be |
+found in the LICENSE file. |
+--> |
+ |
+<polymer-element name="ct-failure-analyzer" attributes="failures status"> |
+ <script> |
+ Polymer({ |
+ failures: [], |
+ |
+ pendingFailures: [], |
+ |
+ update: function() { |
+ this.pendingFailures = []; |
+ var numberOfTestsAnalyzed = 0; |
+ this.status = 'Updating ...'; |
+ Promise.all([model.updateRecentCommits(), model.updateResultsByBuilder()]).then(function() { |
+ this.status = 'Analyzing test failures ...'; |
+ model.analyzeUnexpectedFailures(function(failureAnalysis, total) { |
esprehn
2014/07/08 16:25:05
return model.analyzeUnexpectedFailures(...)
that
|
+ this.status = 'Analyzing test failures ... ' + ++numberOfTestsAnalyzed + '/' + total + ' tests analyzed.'; |
+ this.pendingFailures.push(failureAnalysis); |
+ }.bind(this)).then(function() { |
+ this.status = 'Done!!!'; |
+ this.failures = this.pendingFailures; |
+ }.bind(this)); |
+ }.bind(this)); |
esprehn
2014/07/08 16:25:05
You drop errors on the floor which is going to mak
|
+ }, |
+ }); |
+ </script> |
+</polymer-element> |