github.com/ernestokarim/closurer@v0.0.0-20130119214741-f245d086c750/templates/global-test.html (about)

     1  {{define "base"}}
     2  <!DOCTYPE html>
     3  <html>
     4  <head>
     5  
     6    <meta charset="utf-8">
     7    <title>Test Runner</title>
     8  
     9    <style type="text/css">
    10  
    11      .goog-testrunner {
    12        background-color: #EEE;
    13        border: 1px solid #999;
    14        padding: 10px;
    15        padding-bottom: 25px;
    16      }
    17  
    18      .goog-testrunner-progress {
    19        width: auto;
    20        height: 20px;
    21        background-color: #FFF;
    22        border: 1px solid #999;
    23      }
    24  
    25      .goog-testrunner-progress table {
    26        width: 100%;
    27        height: 20px;
    28        border-collapse: collapse;
    29      }
    30  
    31      .goog-testrunner-buttons {
    32        margin-top: 7px;
    33      }
    34  
    35      .goog-testrunner-buttons button {
    36        width: 75px;
    37      }
    38  
    39      .goog-testrunner-log,
    40      .goog-testrunner-report,
    41      .goog-testrunner-stats {
    42        margin-top: 7px;
    43        width: auto;
    44        height: 400px;
    45        background-color: #FFF;
    46        border: 1px solid #999;
    47        font: normal medium monospace;
    48        padding: 5px;
    49        overflow: auto;  /* Opera doesn't support overflow-y. */
    50        overflow-y: scroll;
    51        overflow-x: auto;
    52      }
    53  
    54      .goog-testrunner-report div {
    55        margin-bottom: 6px;
    56        border-bottom: 1px solid #999;
    57      }
    58  
    59      .goog-testrunner-stats table {
    60        margin-top: 20px;
    61        border-collapse: collapse;
    62        border: 1px solid #EEE;
    63      }
    64  
    65      .goog-testrunner-stats td,
    66      .goog-testrunner-stats th {
    67        padding: 2px 6px;
    68        border: 1px solid #F0F0F0;
    69      }
    70  
    71      .goog-testrunner-stats th {
    72        font-weight: bold;
    73      }
    74  
    75      .goog-testrunner-stats .center {
    76        text-align: center;
    77      }
    78  
    79      .goog-testrunner-progress-summary {
    80        font: bold small sans-serif;
    81      }
    82  
    83      .goog-testrunner iframe {
    84        position: absolute;
    85        left: -640px;
    86        top: -480px;
    87        width: 640px;
    88        height: 480px;
    89        margin: 0;
    90        border: 0;
    91        padding: 0;
    92      }
    93  
    94      .goog-testrunner-report-failure {
    95        color: #900;
    96      }
    97  
    98      .goog-testrunner-reporttab,
    99      .goog-testrunner-logtab,
   100      .goog-testrunner-statstab {
   101        float: left;
   102        width: 50px;
   103        height: 16px;
   104        text-align: center;
   105        font: normal small arial, helvetica, sans-serif;
   106        color: #666;
   107        background-color: #DDD;
   108        border: 1px solid #999;
   109        border-top: 0;
   110        cursor: pointer;
   111      }
   112  
   113      .goog-testrunner-reporttab,
   114      .goog-testrunner-logtab {
   115        border-right: 0;
   116      }
   117  
   118      .goog-testrunner-activetab {
   119        font-weight: bold;
   120        color: #000;
   121        background-color: #CCC;
   122      }
   123  
   124      h1 {
   125        font: normal x-large arial, helvetica, sans-serif;
   126        margin: 0;
   127      }
   128  
   129      p, form {
   130        font: normal small sans-serif;
   131        margin: 0;
   132      }
   133  
   134      #header {
   135        position: absolute;
   136        right: 10px;
   137        top: 13px;
   138        color: #090;
   139      }
   140  
   141      #footer {
   142        margin-top: 8px;
   143      }
   144  
   145      .warning {
   146        font-size: 14px;
   147        font-weight: bold;
   148        width: 80%;
   149      }
   150  
   151    </style>
   152  
   153    <script type="text/javascript" src="/input/base.js"></script>
   154    <script type="text/javascript">
   155      goog.require('goog.userAgent.product');
   156      goog.require('goog.testing.MultiTestRunner');
   157    </script>
   158  
   159  </head>
   160  <body>
   161  
   162    <h1>All JsUnit Tests</h1>
   163    <p id="header">
   164      <a href="/test/list">List of Individual Tests</a> |
   165      <a href="/">Home</a>
   166    </p>
   167  
   168    <div id="runner"></div>
   169  
   170    <form id="footer" onsubmit="return false;">
   171  
   172      Settings:<br>
   173  
   174      <input type="checkbox" name="hidepasses" id="hidepasses">
   175      <label for="hidepasses">Hide passes</label><br>
   176  
   177      <input type="checkbox" name="parallel" id="parallel" checked>
   178      <label for="parallel">Run in parallel</label>
   179      <small>(timing stats not available if enabled)</small><br>
   180  
   181      <input type="text" name="filter" id="filter" value="">
   182      <label for="filter">Run only tests for path</label>
   183  
   184    </form>
   185  
   186    <script type="text/javascript">
   187  
   188      (function() {
   189        var allTests = {{.AllTests}};
   190  
   191        var hidePassesInput = document.getElementById('hidepasses');
   192        var parallelInput = document.getElementById('parallel');
   193        var filterInput = document.getElementById('filter');
   194        
   195        function setFilterFunction() {
   196          var matchValue = filterInput.value || '';
   197          testRunner.setFilterFunction(function(testPath) {
   198            return testPath.indexOf(matchValue) > -1;
   199          });
   200        }
   201        
   202        // Create a test runner and render it.
   203        var testRunner = new goog.testing.MultiTestRunner()
   204            .setName(document.title)
   205            .setPoolSize(parallelInput.checked ? 8 : 1)
   206            .setStatsBucketSizes(5, 500)
   207            .setHidePasses(hidePassesInput.checked)
   208            .addTests(allTests);
   209        testRunner.render(document.getElementById('runner'));
   210        
   211        goog.events.listen(hidePassesInput, 'click', function(e) {
   212          testRunner.setHidePasses(e.target.checked);
   213        });
   214        
   215        goog.events.listen(parallelInput, 'click', function(e) {
   216          testRunner.setPoolSize(e.target.checked ? 8 : 1);
   217        });
   218        
   219        goog.events.listen(filterInput, 'keyup', setFilterFunction);
   220        setFilterFunction();
   221      })();
   222  
   223    </script>
   224  
   225  </body>
   226  </html>
   227  {{end}}