Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(119)

Side by Side Diff: Tools/AutoSheriff/ui/filters.js

Issue 398823008: WIP: Add auto-sheriff.appspot.com code to Blink Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Needed to make filters visible inside sortable-table.
ojan 2014/07/22 02:01:26 Copyright
2 PolymerExpressions.prototype.since_string = function(value) {
ojan 2014/07/22 02:01:27 Why do you need to do this? Can't you define a sin
3 // Buildbot talks to us in seconds, js expect milliseconds
4 date = new Date(value * 1000.0);
5 return humanized_time_span(date);
6 }
7 PolymerExpressions.prototype.falsy_to_empty = function(value) {
8 return value ? value : '';
ojan 2014/07/22 02:01:27 Nit: Idiomatic JS for this is: return value || '';
9 }
10 PolymerExpressions.prototype.master_name = function(value) {
11 if (!value)
12 return 'foo';
ojan 2014/07/22 02:01:26 Log a warning and return something better?
13 var url_parts = value.split('/');
14 var long_name = url_parts[url_parts.length - 1];
15 if (long_name.indexOf('chromium.') == 0) {
16 return long_name.slice('chromium.'.length);
17 }
18 return long_name;
19 }
20 PolymerExpressions.prototype.builder_url = function(failure) {
21 return failure.master_url + '/builders/' + failure.builder_name;
22 }
23 PolymerExpressions.prototype.build_url = function(failure, build_number) {
24 return PolymerExpressions.prototype.builder_url(failure) + '/builds/' + build_ number;
25 }
26 PolymerExpressions.prototype.step_url = function(failure, build_number) {
27 return PolymerExpressions.prototype.build_url(failure, build_number) + '/steps /' + failure.step_name;
28 }
29 PolymerExpressions.prototype.stdio_url = function(failure, build_number) {
30 return PolymerExpressions.prototype.step_url(failure, build_number) + '/logs/s tdio';
31 }
32
33 // This map is matches the test-results code:
34 // https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit /Tools/TestResultServer/handlers/buildershandler.py&l=40
35 var MASTERS = [
ojan 2014/07/22 02:01:26 This is fine for now, but add a FIXME to use test-
36 {'name': 'ChromiumWin', 'url_name': 'chromium.win', 'groups': ['@ToT Chromiu m']},
37 {'name': 'ChromiumMac', 'url_name': 'chromium.mac', 'groups': ['@ToT Chromiu m']},
38 {'name': 'ChromiumLinux', 'url_name': 'chromium.linux', 'groups': ['@ToT Chr omium']},
39 {'name': 'ChromiumChromiumOS', 'url_name': 'chromium.chromiumos', 'groups': ['@ToT ChromeOS']},
40 {'name': 'ChromiumGPU', 'url_name': 'chromium.gpu', 'groups': ['@ToT Chromiu m']},
41 {'name': 'ChromiumGPUFYI', 'url_name': 'chromium.gpu.fyi', 'groups': ['@ToT Chromium FYI']},
42 {'name': 'ChromiumWebkit', 'url_name': 'chromium.webkit', 'groups': ['@ToT C hromium', '@ToT Blink']},
43 {'name': 'ChromiumFYI', 'url_name': 'chromium.fyi', 'groups': ['@ToT Chromiu m FYI']},
44 {'name': 'GpuTryServer', 'url_name': 'tryserver.chromium.gpu', 'groups': ['T ryServers']},
45 {'name': 'V8', 'url_name': 'client.v8', 'groups': ['@ToT V8']},
46 ];
47
48 function masterNameFromURL(master_url) {
49 var parts = master_url.trimRight('/').split('/')
50 return parts[parts.length - 1]
51 }
52
53 // FIXME: test-results supports multiple 'groups' but it's an unused feature.
54 // It's not clear that any given waterfall should ever be in more than one 'tree '.
55 function groupForMaster(master_url) {
56 var name = masterNameFromURL(master_url);
57 for (var x = 0; x < MASTERS.length; ++x) {
58 var record = MASTERS[x];
59 if (record['url_name'] == name)
60 return record['groups'][0];
61 }
62 }
63
64 PolymerExpressions.prototype.flakiness_dashboard_url = function(test_name, step_ name, master_url) {
65 if (!test_name)
66 return '';
67 if (step_name.indexOf('test') == -1)
68 return '';
69 return "http://test-results.appspot.com/dashboards/flakiness_dashboard.html#"
70 + "testType=" + step_name
71 + "&tests=" + encodeURIComponent(test_name)
72 + "&group=" + groupForMaster(master_url);
ojan 2014/07/22 02:01:26 This also needs to be encoded. FWIW, with sugarjs
73 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698