Changeset 219854 in webkit


Ignore:
Timestamp:
Jul 24, 2017 6:58:24 PM (7 years ago)
Author:
commit-queue@webkit.org
Message:

Add BenchmarkRunner patches with WebDriver support for each testing plan
https://bugs.webkit.org/show_bug.cgi?id=174443

Patch by Matthew Stewart <matthew_r_stewart@apple.com> on 2017-07-24
Reviewed by Dewei Zhu, Stephanie Lewis.

  • Scripts/webkitpy/benchmark_runner/benchmark_builder.py:

(BenchmarkBuilder.enter):

  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ARES-6.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ContentAnimation.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Dromaeo.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JSBench.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JetStream.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Kraken.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/MotionMark.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Octane.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Speedometer.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webdriver/SunSpider.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/ARES-6.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/Animometer.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/ContentAnimation.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/Dromaeo.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/JSBench.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/JetStream.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/Kraken.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/Octane.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/Speedometer.patch:
  • Scripts/webkitpy/benchmark_runner/data/patches/webserver/SunSpider.patch:
  • Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/octane.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan:
  • Scripts/webkitpy/benchmark_runner/data/plans/sunspider.plan:
Location:
trunk/Tools
Files:
2 added
14 edited
10 copied
11 moved

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r219853 r219854  
     12017-07-24  Matthew Stewart  <matthew_r_stewart@apple.com>
     2
     3        Add BenchmarkRunner patches with WebDriver support for each testing plan
     4        https://bugs.webkit.org/show_bug.cgi?id=174443
     5
     6        Reviewed by Dewei Zhu, Stephanie Lewis.
     7
     8        * Scripts/webkitpy/benchmark_runner/benchmark_builder.py:
     9        (BenchmarkBuilder.__enter__):
     10        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ARES-6.patch:
     11        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ContentAnimation.patch:
     12        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Dromaeo.patch:
     13        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JSBench.patch:
     14        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JetStream.patch:
     15        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Kraken.patch:
     16        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/MotionMark.patch:
     17        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Octane.patch:
     18        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Speedometer.patch:
     19        * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/SunSpider.patch:
     20        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ARES-6.patch:
     21        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Animometer.patch:
     22        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ContentAnimation.patch:
     23        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Dromaeo.patch:
     24        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/JSBench.patch:
     25        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/JetStream.patch:
     26        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Kraken.patch:
     27        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
     28        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Octane.patch:
     29        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Speedometer.patch:
     30        * Scripts/webkitpy/benchmark_runner/data/patches/webserver/SunSpider.patch:
     31        * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
     32        * Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan:
     33        * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan:
     34        * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan:
     35        * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan:
     36        * Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan:
     37        * Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan:
     38        * Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan:
     39        * Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan:
     40        * Scripts/webkitpy/benchmark_runner/data/plans/octane.plan:
     41        * Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan:
     42        * Scripts/webkitpy/benchmark_runner/data/plans/sunspider.plan:
     43
    1442017-07-24  Matthew Stewart  <matthew_r_stewart@apple.com>
    245
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/benchmark_builder.py

    r194406 r219854  
    3737            if 'create_script' in self._plan:
    3838                self._run_create_script(self._plan['create_script'])
    39             if 'benchmark_patch' in self._plan:
    40                 self._apply_patch(self._plan['benchmark_patch'])
     39            patch_file_key = "{driver}_benchmark_patch".format(driver=self._driver)
     40            if patch_file_key in self._plan:
     41                self._apply_patch(self._plan[patch_file_key])
    4142            return self._web_root
    4243        except Exception:
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ARES-6.patch

    r219853 r219854  
    33--- a/driver.js
    44+++ b/driver.js
    5 @@ -136,6 +136,32 @@ class Driver {
     5@@ -136,6 +136,18 @@ class Driver {
    66         this._benchmark = this._iterator ? this._iterator.next().value : null;
    77         if (!this._benchmark) {
     
    1616+                }
    1717+
    18 +                let xhr = new XMLHttpRequest();
    19 +                xhr.open("POST", "/report");
    2018+                let content = JSON.stringify({"ARES-6": {"metrics" : {"Time" : ["Geometric"]}, "tests" : tests}});
    21 +                xhr.setRequestHeader("Content-type", "application/json");
    22 +                xhr.setRequestHeader("Content-length", content.length);
    23 +                xhr.setRequestHeader("Connection", "close");
    24 +
    25 +                xhr.onreadystatechange = () => {
    26 +                   if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    27 +                        closeRequest = new XMLHttpRequest();
    28 +                        closeRequest.open("GET", "/shutdown");
    29 +                        closeRequest.send();
    30 +                    }
    31 +                }
    32 +
    33 +                xhr.send(content);
     19+                window.webdriver_results = content;
    3420+
    3521                 if (isInBrowser) {
     
    4329         document.getElementById("error").innerHTML = "ERROR: " + url + ":" + lineNumber + ": " + message;
    4430     }
    45  
     31
    4632+    window.onload = () => { setTimeout(() => driver.start(8), 3000); }
    4733+
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ContentAnimation.patch

    r219853 r219854  
    33--- a/css-accelerated-animation.html
    44+++ b/css-accelerated-animation.html
    5 @@ -185,9 +185,54 @@
     5@@ -185,9 +185,42 @@
    66         function setupAnimation()
    77         {
     
    3838+            };
    3939+            var resultsString = JSON.stringify(results);
    40 +            var xhr = new XMLHttpRequest();
    41 +            xhr.open("POST", "/report");
    42 +            xhr.setRequestHeader("Content-type", "application/json");
    43 +            xhr.setRequestHeader("Content-length", resultsString.length);
    44 +            xhr.setRequestHeader("Connection", "close");
    45 +            xhr.onreadystatechange = function() {
    46 +                if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    47 +                    closeRequest = new XMLHttpRequest();
    48 +                    closeRequest.open("GET", "/shutdown");
    49 +                    closeRequest.send()
    50 +                }
    51 +            }
    52 +            xhr.send(resultsString);
     40+            window.webdriver_results = resultsString;
    5341         }
    5442 
     
    6250--- a/css-animation.html
    6351+++ b/css-animation.html
    64 @@ -167,9 +167,54 @@
     52@@ -167,9 +167,42 @@
    6553         function setupAnimation()
    6654         {
     
    9785+            };
    9886+            var resultsString = JSON.stringify(results);
    99 +            var xhr = new XMLHttpRequest();
    100 +            xhr.open("POST", "/report");
    101 +            xhr.setRequestHeader("Content-type", "application/json");
    102 +            xhr.setRequestHeader("Content-length", resultsString.length);
    103 +            xhr.setRequestHeader("Connection", "close");
    104 +            xhr.onreadystatechange = function() {
    105 +                if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    106 +                    closeRequest = new XMLHttpRequest();
    107 +                    closeRequest.open("GET", "/shutdown");
    108 +                    closeRequest.send()
    109 +                }
    110 +            }
    111 +            xhr.send(resultsString);
     87+            window.webdriver_results = resultsString;
    11288         }
    11389         
     
    12197--- a/raf-animation.html
    12298+++ b/raf-animation.html
    123 @@ -195,9 +195,54 @@
     99@@ -195,9 +195,42 @@
    124100         {
    125101             makeParticles();
     
    156132+            };
    157133+            var resultsString = JSON.stringify(results);
    158 +            var xhr = new XMLHttpRequest();
    159 +            xhr.open("POST", "/report");
    160 +            xhr.setRequestHeader("Content-type", "application/json");
    161 +            xhr.setRequestHeader("Content-length", resultsString.length);
    162 +            xhr.setRequestHeader("Connection", "close");
    163 +            xhr.onreadystatechange = function() {
    164 +                if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    165 +                    closeRequest = new XMLHttpRequest();
    166 +                    closeRequest.open("GET", "/shutdown");
    167 +                    closeRequest.send()
    168 +                }
    169 +            }
    170 +            xhr.send(resultsString);
     134+            window.webdriver_results = resultsString;
    171135         }
    172136         
     
    180144--- a/svg-animation.html
    181145+++ b/svg-animation.html
    182 @@ -150,9 +150,54 @@
     146@@ -150,9 +150,42 @@
    183147         function setupAnimation()
    184148         {
     
    215179+            };
    216180+            var resultsString = JSON.stringify(results);
    217 +            var xhr = new XMLHttpRequest();
    218 +            xhr.open("POST", "/report");
    219 +            xhr.setRequestHeader("Content-type", "application/json");
    220 +            xhr.setRequestHeader("Content-length", resultsString.length);
    221 +            xhr.setRequestHeader("Connection", "close");
    222 +            xhr.onreadystatechange = function() {
    223 +                if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    224 +                    closeRequest = new XMLHttpRequest();
    225 +                    closeRequest.open("GET", "/shutdown");
    226 +                    closeRequest.send()
    227 +                }
    228 +            }
    229 +            xhr.send(resultsString);
     181+            window.webdriver_results = resultsString;
    230182         }
    231183         
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Dromaeo.patch

    r219853 r219854  
    72237223 
    72247224                        if ( catnames[cat].length > 22 ) {
    7225 @@ -359,6 +362,25 @@
     7225@@ -359,6 +362,13 @@
    72267226                        $("#overview input").remove();
    72277227                        updateTimebar();
     
    72317231+                       resultsDict["Dromaeo"]["tests"][currentSuiteName] = {"metrics": {"Runs": {"current": [mean]}}, "tests": subTests};
    72327232+                       var results = JSON.stringify(resultsDict);
    7233 +                       var xhr = new XMLHttpRequest();
    7234 +                       xhr.open("POST", "/report");
    7235 +                       xhr.setRequestHeader("Content-Type", "application/json");
    7236 +                       xhr.setRequestHeader("Content-Length", results.length);
    7237 +                       xhr.setRequestHeader("Connection", "close");
    7238 +                       xhr.onreadystatechange = function() {
    7239 +                       if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    7240 +                                       closeRequest = new XMLHttpRequest();
    7241 +                                       closeRequest.open("GET", "/shutdown");
    7242 +                                       closeRequest.send();
    7243 +                               }
    7244 +                       }
    7245 +                       xhr.send(results);
     7233+                       window.webdriver_results = results;
    72467234+                       return;
    72477235+
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JSBench.patch

    r219853 r219854  
    3030                 var rr = spc2 + mode + ": [";
    3131                 for (var i = 0; i < bmresults.length; i++) {
    32 @@ -272,6 +278,23 @@
     32@@ -272,6 +278,11 @@
    3333             ptotals.push(spc + curRun + " runs");
    3434         ptotals.push("");
     
    3636+        if (pr) {
    3737+            var jsonResults = JSON.stringify({"JSBench": {"metrics": {"Time": ["Geometric"]}, "tests": tests}});
    38 +            var xhr = new XMLHttpRequest();
    39 +            xhr.open("POST", "/report");
    40 +            xhr.setRequestHeader("Content-Type", "application/json");
    41 +            xhr.setRequestHeader("Content-Length", jsonResults.length);
    42 +            xhr.setRequestHeader("Connection", "close");
    43 +            xhr.onreadystatechange = function() {
    44 +            if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    45 +                    closeRequest = new XMLHttpRequest();
    46 +                    closeRequest.open("GET", "/shutdown");
    47 +                    closeRequest.send();
    48 +                }
    49 +            }
    50 +            xhr.send(jsonResults);
     38+            window.webdriver_results = jsonResults;
    5139+        }
    5240+
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JetStream.patch

    r219853 r219854  
    44+++ b/JetStream-1.1/JetStreamDriver.js
    55@@ -448,6 +448,14 @@ var JetStream = (function() {
    6  
     6
    77         return rawResults;
    88     }
    9 +   
     9+
    1010+    function computeRefinedResults(){
    1111+        var results = {};
     
    1515+        return {"JetStream": {"metrics" : {"Score" : ["Geometric"]}, "tests" : results}};
    1616+    }
    17  
     17
    1818     function end()
    1919     {
    20 @@ -458,6 +466,23 @@ var JetStream = (function() {
     20@@ -458,6 +466,8 @@ var JetStream = (function() {
    2121         isRunning = false;
    2222         hasAlreadyRun = true;
    2323         prepareToStart();
    24 +        // submit result to server
    2524+        results = JSON.stringify(computeRefinedResults());
    26 +        var xhr = new XMLHttpRequest();
    27 +        xhr.open("POST", "/report");
    28 +       
    29 +        xhr.setRequestHeader("Content-type", "application/json");
    30 +        xhr.setRequestHeader("Content-length", results.length);
    31 +        xhr.setRequestHeader("Connection", "close");
    32 +
    33 +        xhr.onreadystatechange = function() {
    34 +        if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    35 +                closeRequest = new XMLHttpRequest();
    36 +                closeRequest.open("GET", "/shutdown");
    37 +                closeRequest.send()
    38 +            }
    39 +        }
    40 +        xhr.send(results);
     25+        window.webdriver_results = results;
    4126     }
    42  
     27
    4328     function iterate()
    4429diff --git a/JetStream-1.0.1/index.html b/JetStream-1.0.1/index.html
     
    4833@@ -34,8 +34,10 @@
    4934     window.onerror = function() { allIsGood = false; }
    50  
     35
    5136     function initialize() {
    5237-        if (allIsGood)
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Kraken.patch

    r219853 r219854  
    33--- a/hosted/kraken-1.1/driver.html
    44+++ b/hosted/kraken-1.1/driver2.html
    5 @@ -117,20 +117,28 @@ function recordResult(time)
     5@@ -117,20 +117,16 @@ function recordResult(time)
    66 
    77 function finish()
     
    2727-    location = "results.html?" + encodeURI(outputString);
    2828+    var results = JSON.stringify({"Kraken": {"metrics": {"Time": ["Total"]}, "tests": tests}});
    29 +    var xhr = new XMLHttpRequest();
    30 +    xhr.open("POST", "/report");
    31 +    xhr.setRequestHeader("Content-Type", "application/json");
    32 +    xhr.setRequestHeader("Content-Length", results.length);
    33 +    xhr.setRequestHeader("Connection", "close");
    34 +    xhr.onreadystatechange = function() {
    35 +    if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    36 +            closeRequest = new XMLHttpRequest();
    37 +            closeRequest.open("GET", "/shutdown");
    38 +            closeRequest.send();
    39 +        }
    40 +    }
    41 +    xhr.send(results);
     29+    window.webdriver_results = results;
    4230 }
    4331 
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/MotionMark.patch

    r219853 r219854  
    33--- a/resources/runner/motionmark.js
    44+++ b/resources/runner/motionmark.js
    5 @@ -393,6 +393,61 @@ window.benchmarkRunnerClient = {
     5@@ -393,6 +393,48 @@ window.benchmarkRunnerClient = {
    66     didFinishLastIteration: function()
    77     {
     
    4747+    didFinishLastIteration: function()
    4848+    {
    49 +        // submit result to server
    5049+        var results = JSON.stringify(this._computeResultsReports());
    51 +        var xhr = new XMLHttpRequest();
    52 +        xhr.open("POST", "/report");
    53 +        xhr.setRequestHeader("Content-type", "application/json");
    54 +        xhr.setRequestHeader("Content-length", results.length);
    55 +        xhr.setRequestHeader("Connection", "close");
    56 +        xhr.onreadystatechange = function() {
    57 +            if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    58 +                closeRequest = new XMLHttpRequest();
    59 +                closeRequest.open("GET", "/shutdown");
    60 +                closeRequest.send()
    61 +            }
    62 +        }
    63 +        xhr.send(results);
     50+        window.webdriver_results = results;
    6451     }
    6552 };
    66  
     53
    6754@@ -436,7 +491,7 @@ window.sectionsManager =
    6855 window.benchmarkController = {
     
    7259+        setTimeout(benchmarkController.startBenchmark.bind(benchmarkController), 3000);
    7360     },
    74  
     61
    7562     determineCanvasSize: function() {
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Octane.patch

    r219853 r219854  
    3636     });
    3737   }
    38  
     38
    3939-  function AddResult(name, result) {
    4040+  var octaneSubtests = {};
     
    4444     var box = document.getElementById("Result-" + name);
    4545     box.innerHTML = result;
    46 @@ -75,7 +77,21 @@
     46@@ -75,7 +77,9 @@
    4747     success = false;
    4848   }
    49  
     49
    5050-  function AddScore(score) {
    5151+  function AddScore(score, rawScore) {
    5252+    var results = JSON.stringify({"Octane": {"metrics": {"Score": {"current": [rawScore]}}, "tests": octaneSubtests}});
    53 +    var xhr = new XMLHttpRequest();
    54 +    xhr.open("POST", "/report");
    55 +    xhr.setRequestHeader("Content-Type", "application/json");
    56 +    xhr.setRequestHeader("Content-Length", results.length);
    57 +    xhr.setRequestHeader("Connection", "close");
    58 +    xhr.onreadystatechange = function() {
    59 +    if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    60 +            closeRequest = new XMLHttpRequest();
    61 +            closeRequest.open("GET", "/shutdown");
    62 +            closeRequest.send();
    63 +        }
    64 +    }
    65 +    xhr.send(results);
     53+    window.webdriver_results = results
    6654     var status = document.getElementById("main-banner");
    6755     if (success) {
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Speedometer.patch

    r219853 r219854  
    1717@@ -1,30 +1,26 @@
    1818 // This file can be customized to report results as needed.
    19  
     19
    2020 (function () {
    2121-    if (!window.testRunner && location.search != '?webkit' && location.hash != '#webkit')
     
    2424     if (window.testRunner)
    2525         testRunner.waitUntilDone();
    26  
     26
    2727-    var scriptElement = document.createElement('script');
    2828-    scriptElement.src = '../resources/runner.js';
     
    3737     var valuesByIteration = new Array;
    3838+    var timeValues = new Array;
    39  
     39
    4040     window.onload = function () {
    4141-        document.body.removeChild(document.querySelector('main'));
    4242         startBenchmark();
    4343     }
    44  
     44
    4545     window.benchmarkClient = {
    4646         iterationCount: 5, // Use 4 different instances of DRT/WTR to run 5 iterations.
     
    101101             });
    102102+            var results = JSON.stringify(dict);
    103  
     103
    104104             var fullNames = new Array;
    105105             for (var fullName in measuredValuesByFullName)
    106 @@ -72,8 +76,22 @@
    107  
     106@@ -72,8 +76,8 @@
     107
    108108             for (var i = 0; i < fullNames.length; i++) {
    109109                 var values = measuredValuesByFullName[fullNames[i]];
    110110-                PerfTestRunner.reportValues(createTest(fullNames[i], values.aggregator, i + 1 == fullNames.length), values);
    111111             }
    112 +            var xhr = new XMLHttpRequest();
    113 +            xhr.open("POST", "/report");
    114 +
    115 +            xhr.setRequestHeader("Content-type", "application/json");
    116 +            xhr.setRequestHeader("Content-length", results.length);
    117 +            xhr.setRequestHeader("Connection", "close");
    118 +
    119 +            xhr.onreadystatechange = function() {
    120 +                if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    121 +                    var closeRequest = new XMLHttpRequest();
    122 +                    closeRequest.open("GET", "/shutdown");
    123 +                    closeRequest.send()
    124 +                }
    125 +            }
    126 +            xhr.send(results);
     112+            window.webdriver_results = results;
    127113         }
    128114     };
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/webdriver/SunSpider.patch

    r219853 r219854  
    33--- a/hosted/sunspider-1.0.1/driver.html
    44+++ b/hosted/sunspider-1.0.1/driver.html
    5 @@ -103,23 +103,28 @@ function recordResult(time)
    6  
     5@@ -103,23 +103,16 @@ function recordResult(time)
     6
    77 function finish()
    88 {
     
    2727-    outputString = outputString.substring(0, outputString.length - 1);
    2828-    outputString += "}";
    29  
     29
    3030-    location = "results.html?" + encodeURI(outputString);
    3131+    var results = JSON.stringify({"SunSpider": {"metrics": {"Time": ["Total"]}, "tests": tests}});
    32 +    var xhr = new XMLHttpRequest();
    33 +    xhr.open("POST", "/report");
    34 +    xhr.setRequestHeader("Content-Type", "application/json");
    35 +    xhr.setRequestHeader("Content-Length", results.length);
    36 +    xhr.setRequestHeader("Connection", "close");
    37 +    xhr.onreadystatechange = function() {
    38 +    if (xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
    39 +            closeRequest = new XMLHttpRequest();
    40 +            closeRequest.open("GET", "/shutdown");
    41 +            closeRequest.send();
    42 +        }
    43 +    }
    44 +    xhr.send(results);
     32+    window.webdriver_results = results;
    4533 }
    46  
     34
    4735 </script>
    4836diff --git a/hosted/sunspider-1.0.1/sunspider-test-contents.js b/hosted/sunspider-1.0.1/sunspider-test-contents.js
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan

    r216887 r219854  
    33    "count": 3,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/ARES-6/@r216538",
    5     "benchmark_patch": "data/patches/ARES-6.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/ARES-6.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/ARES-6.patch",
    67    "entry_point": "index.html",
    78    "output_file": "ares6.result"
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan

    r205681 r219854  
    33    "count": 5,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/Animation/@r205680",
    5     "benchmark_patch": "data/patches/ContentAnimation.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/ContentAnimation.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/ContentAnimation.patch",
    67    "test_files": [
    78        "css-animation.html",
     
    1314    "options": {
    1415        "animation_command": "ContentAnimation"
    15     } 
     16    }
    1617}
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan

    r188092 r219854  
    33    "count": 1,
    44    "remote_archive": "https://github.com/jeresig/dromaeo/archive/ed7e6a8f25ea72f45c191f34a68722f80dc3c513.zip",
    5     "benchmark_patch": "data/patches/Dromaeo.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Dromaeo.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Dromaeo.patch",
    67    "create_script": ["make", "web"],
    78    "entry_point": "web/index.html?cssquery",
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan

    r188092 r219854  
    33    "count": 1,
    44    "remote_archive": "https://github.com/jeresig/dromaeo/archive/ed7e6a8f25ea72f45c191f34a68722f80dc3c513.zip",
    5     "benchmark_patch": "data/patches/Dromaeo.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Dromaeo.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Dromaeo.patch",
    67    "create_script": ["make", "web"],
    78    "entry_point": "web/index.html?dom",
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan

    r188092 r219854  
    33    "count": 1,
    44    "remote_archive": "https://github.com/jeresig/dromaeo/archive/ed7e6a8f25ea72f45c191f34a68722f80dc3c513.zip",
    5     "benchmark_patch": "data/patches/Dromaeo.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Dromaeo.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Dromaeo.patch",
    67    "create_script": ["make", "web"],
    78    "entry_point": "web/index.html?jslib",
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan

    r204421 r219854  
    33    "count": 5,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/JetStream/@r190897",
    5     "benchmark_patch": "data/patches/JetStream.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/JetStream.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/JetStream.patch",
    67    "create_script": ["ruby", "create.rb"],
    78    "entry_point": "JetStream-1.1/index.html",
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan

    r188092 r219854  
    33    "count": 1,
    44    "remote_archive": "http://plg.uwaterloo.ca/~dynjs/jsbench/suite/jsbench-2013.1.tar.gz",
    5     "benchmark_patch": "data/patches/JSBench.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/JSBench.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/JSBench.patch",
    67    "entry_point": "index.html",
    78    "output_file": "jsbench.result"
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan

    r188092 r219854  
    33    "count": 5,
    44    "remote_archive": "http://hg.mozilla.org/projects/kraken/archive/tip.zip",
    5     "benchmark_patch": "data/patches/Kraken.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Kraken.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Kraken.patch",
    67    "create_script": ["python", "make-hosted.py"],
    78    "entry_point": "hosted/kraken-1.1/driver.html",
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan

    r211549 r219854  
    33    "count": 1,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/MotionMark/@r210459",
    5     "benchmark_patch": "data/patches/MotionMark.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/MotionMark.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/MotionMark.patch",
    67    "entry_point": "index.html",
    78    "config": {
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/octane.plan

    r188092 r219854  
    33    "count": 5,
    44    "remote_archive": "https://github.com/chromium/octane-benchmark/archive/fab09aef01c2a5560c22cdc1c1a2451c0d0f4cdc.zip",
    5     "benchmark_patch": "data/patches/Octane.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Octane.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Octane.patch",
    67    "entry_point": "index.html?auto=1",
    78    "output_file": "octane.result"
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan

    r188129 r219854  
    33    "count": 5,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/Speedometer/@r183695",
    5     "benchmark_patch": "data/patches/Speedometer.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/Speedometer.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/Speedometer.patch",
    67    "entry_point": "Full.html",
    78    "output_file": "speedometer.result"
  • trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/sunspider.plan

    r188092 r219854  
    33    "count": 5,
    44    "svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/SunSpider/@r182170",
    5     "benchmark_patch": "data/patches/SunSpider.patch",
     5    "webserver_benchmark_patch": "data/patches/webserver/SunSpider.patch",
     6    "webdriver_benchmark_patch": "data/patches/webdriver/SunSpider.patch",
    67    "create_script": ["perl", "make-hosted"],
    78    "entry_point": "hosted/sunspider-1.0.1/driver.html",
Note: See TracChangeset for help on using the changeset viewer.