Changeset 90428 in webkit


Ignore:
Timestamp:
Jul 5, 2011 7:32:14 PM (13 years ago)
Author:
abarth@webkit.org
Message:

2011-07-05 Adam Barth <abarth@webkit.org>

garden-o-matic should understand which tests have unexpected failures
https://bugs.webkit.org/show_bug.cgi?id=63965

Reviewed by Eric Seidel.

Currently, this code just logs the list of unexpected failures to the
console. A future patch will do something useful with this
information. A testing harness will also come in the next patch.

  • Scripts/webkitpy/tool/servers/data/gardeningserver/base.js: Added.
  • Scripts/webkitpy/tool/servers/data/gardeningserver/index.html:
  • Scripts/webkitpy/tool/servers/data/gardeningserver/results.js:
  • Scripts/webkitpy/tool/servers/gardeningserver.py:
Location:
trunk/Tools
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r90424 r90428  
     12011-07-05  Adam Barth  <abarth@webkit.org>
     2
     3        garden-o-matic should understand which tests have unexpected failures
     4        https://bugs.webkit.org/show_bug.cgi?id=63965
     5
     6        Reviewed by Eric Seidel.
     7
     8        Currently, this code just logs the list of unexpected failures to the
     9        console.  A future patch will do something useful with this
     10        information.  A testing harness will also come in the next patch.
     11
     12        * Scripts/webkitpy/tool/servers/data/gardeningserver/base.js: Added.
     13        * Scripts/webkitpy/tool/servers/data/gardeningserver/index.html:
     14        * Scripts/webkitpy/tool/servers/data/gardeningserver/results.js:
     15        * Scripts/webkitpy/tool/servers/gardeningserver.py:
     16
    1172011-07-05  Adam Barth  <abarth@webkit.org>
    218
  • trunk/Tools/Scripts/webkitpy/tool/servers/data/gardeningserver/index.html

    r90424 r90428  
    3535</ul>
    3636<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
     37<script src="base.js"></script>
    3738<script src="main.js"></script>
    3839<script src="results.js"></script>
  • trunk/Tools/Scripts/webkitpy/tool/servers/data/gardeningserver/results.js

    r90424 r90428  
    44  var RESULTS_NAME = 'full_results.json';
    55  var MASTER_NAME = 'ChromiumWebkit';
     6  var FAILING_RESULTS = ['TIMEOUT', 'TEXT', 'CRASH', 'IMAGE','IMAGE+TEXT'];
     7
     8  function isFailure(result) {
     9    return FAILING_RESULTS.indexOf(result) != -1;
     10  }
     11
     12  function anyIsFailure(results_list) {
     13    return $.grep(results_list, isFailure).length > 0;
     14  }
     15
     16  function addImpliedExpectations(results_list) {
     17    if (results_list.indexOf('FAIL') == -1)
     18      return results_list;
     19    return results_list.concat(FAILING_RESULTS);
     20  }
     21
     22  function unexpectedResults(result_node) {
     23    var actual_results = result_node.actual.split(' ');
     24    var expected_results = addImpliedExpectations(result_node.expected.split(' '))
     25
     26    return $.grep(actual_results, function(result) {
     27      return expected_results.indexOf(result) == -1;
     28    });
     29  }
     30
     31  function isUnexpectedFailure(result_node) {
     32    return anyIsFailure(unexpectedResults(result_node));
     33  }
     34
     35  function isResultNode(node) {
     36    return !!node.actual;
     37  }
     38
     39  function logUnexpectedFailures(results_json) {
     40    unexpected_failures = base.filterTree(results_json.tests, isResultNode, isUnexpectedFailure);
     41    console.log('== Unexpected Failures ==')
     42    console.log(unexpected_failures);
     43  }
    644
    745  function resultsURL(builder_name, name) {
     
    2159  }
    2260
    23   fetchResults('Webkit Linux', function(data) {
    24     console.log("== Results ==")
    25     console.log(data);
    26   });
     61  fetchResults('Webkit Linux', logUnexpectedFailures);
    2762})();
  • trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver.py

    r90424 r90428  
    3838    STATIC_FILE_NAMES = frozenset([
    3939        "index.html",
     40        "base.js",
    4041        "main.js",
    4142        "results.js",
Note: See TracChangeset for help on using the changeset viewer.