Index: Tools/GardeningServer/ui/ct-test-list.html |
diff --git a/Tools/GardeningServer/ui/ct-test-list.html b/Tools/GardeningServer/ui/ct-test-list.html |
deleted file mode 100644 |
index 87bcf059b887f57d4a7fd5dfb5063080d52fc868..0000000000000000000000000000000000000000 |
--- a/Tools/GardeningServer/ui/ct-test-list.html |
+++ /dev/null |
@@ -1,131 +0,0 @@ |
-<!-- |
-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. |
---> |
- |
-<link rel="import" href="../bower_components/paper-icon-button/paper-icon-button.html"> |
- |
-<polymer-element name="ct-test-list" attributes="tests"> |
- <template> |
- <style> |
- :host { |
- display: block; |
- } |
- |
- :host > div { |
- /* Be at least the height of a paper-icon-button. |
- So things line up nicely. */ |
- min-height: 24px; |
- } |
- |
- .test-failures { |
- margin-left: 15px; |
- } |
- |
- paper-icon-button { |
- vertical-align: middle; |
- } |
- |
- paper-icon-button::shadow #icon { |
- margin: 0; |
- } |
- </style> |
- <template repeat="{{ groups in testGroups_ }}"> |
- <template if="{{ groups.tests.length }}"> |
- <div><span style="font-weight: bold">Step:</span> {{ groups.step }}</div> |
- </template> |
- |
- <template repeat="{{ group in groups.tests | maybeTruncate(groups.expanded) }}"> |
- <!-- Case 1: single test failure --> |
- <template if="{{ group.name && (group.tests.length == 1 || group.expanded) }}"> |
- <template repeat="{{ test in group.tests }}"> |
- <div class="test-failures"> |
- <a href="{{ test | flakinessDashboardURL }}">{{ test.testName }}</a> |
- </div> |
- </template> |
- </template> |
- <!-- Case 2: group of tests failed --> |
- <template if="{{ group.name && group.tests.length > 1 && !group.expanded }}"> |
- <div class="test-failures"> |
- {{ group.name }} ({{ group.tests.length }} Tests) |
- <paper-icon-button id="expand" icon="unfold-more" step="{{ groups.step }}" group="{{ group.name }}" on-click="{{ _innerExpand }}"></paper-icon-button> |
- </div> |
- </template> |
- </template> |
- <template if="{{ !groups.expanded }}"> |
- <div class="test-failures"> |
- {{ groups.tests.length - kMaxTestsPerStep }} more |
- <paper-icon-button id="outerExpand" icon="unfold-more" step="{{ groups.step }}" on-click="{{ _outerExpand }}"></paper-icon-button> |
- </div> |
- </template> |
- </template> |
- </template> |
- <script> |
- Polymer('ct-test-list', { |
- kMaxTestsPerStep: 10, |
- |
- testsChanged: function() { |
- var groups = {}; |
- if (this.tests) { |
- this.tests.forEach(function(test) { |
- if (!groups[test.step]) |
- groups[test.step] = {}; |
- var testName = test.reasonGroupName(); |
- if (!groups[test.step][testName]) |
- groups[test.step][testName] = []; |
- groups[test.step][testName].push(test); |
- }.bind(this)); |
- } |
- this.testGroups_ = []; |
- Object.keys(groups, function(step, testsByName) { |
- var tests = []; |
- Object.keys(testsByName, function(name, testList) { |
- if (name == 'undefined') |
- name = undefined; |
- tests.push({'name': name, 'tests': testList, 'expanded': false}); |
- }.bind(this)); |
- tests.sortBy('name'); |
- // The + 1 is to make sure at least 2 tests are hidden by the message. |
- this.testGroups_.push({'step': step, 'tests': tests, 'expanded': tests.length <= (this.kMaxTestsPerStep + 1)}); |
- }.bind(this)); |
- this.testGroups_.sortBy('step'); |
- }, |
- |
- _innerExpand: function(evt) { |
- step = evt.target.attributes['step'].value; |
- name = evt.target.attributes['group'].value; |
- this.testGroups_.forEach(function(testGroup) { |
- if (testGroup.step == step) { |
- testGroup.tests.forEach(function(test) { |
- // FIXME: This attribute should be persisted over reloads. |
- if (test.name == name) |
- test.expanded = true; |
- }); |
- } |
- }); |
- }, |
- |
- _outerExpand: function(evt) { |
- var step = evt.target.attributes['step'].value; |
- this.testGroups_.forEach(function(testGroup) { |
- if (testGroup.step == step) { |
- testGroup.expanded = true; |
- } |
- }); |
- }, |
- |
- flakinessDashboardURL: function(test) { |
- return test.flakinessDashboardURL(); |
- }, |
- |
- // FIXME: Remove maybeTruncate. Persist the expanded list as described in |
- // http://crbug.com/417159. |
- maybeTruncate: function(input, expanded) { |
- if (expanded) |
- return input; |
- return input.slice(0, this.kMaxTestsPerStep); |
- }, |
- }); |
- </script> |
-</polymer-element> |