postscribe 2.0.4 → 2.0.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,158 +0,0 @@
1
- var addSorting = (function () {
2
- "use strict";
3
- var cols,
4
- currentSort = {
5
- index: 0,
6
- desc: false
7
- };
8
-
9
- // returns the summary table element
10
- function getTable() { return document.querySelector('.coverage-summary'); }
11
- // returns the thead element of the summary table
12
- function getTableHeader() { return getTable().querySelector('thead tr'); }
13
- // returns the tbody element of the summary table
14
- function getTableBody() { return getTable().querySelector('tbody'); }
15
- // returns the th element for nth column
16
- function getNthColumn(n) { return getTableHeader().querySelectorAll('th')[n]; }
17
-
18
- // loads all columns
19
- function loadColumns() {
20
- var colNodes = getTableHeader().querySelectorAll('th'),
21
- colNode,
22
- cols = [],
23
- col,
24
- i;
25
-
26
- for (i = 0; i < colNodes.length; i += 1) {
27
- colNode = colNodes[i];
28
- col = {
29
- key: colNode.getAttribute('data-col'),
30
- sortable: !colNode.getAttribute('data-nosort'),
31
- type: colNode.getAttribute('data-type') || 'string'
32
- };
33
- cols.push(col);
34
- if (col.sortable) {
35
- col.defaultDescSort = col.type === 'number';
36
- colNode.innerHTML = colNode.innerHTML + '<span class="sorter"></span>';
37
- }
38
- }
39
- return cols;
40
- }
41
- // attaches a data attribute to every tr element with an object
42
- // of data values keyed by column name
43
- function loadRowData(tableRow) {
44
- var tableCols = tableRow.querySelectorAll('td'),
45
- colNode,
46
- col,
47
- data = {},
48
- i,
49
- val;
50
- for (i = 0; i < tableCols.length; i += 1) {
51
- colNode = tableCols[i];
52
- col = cols[i];
53
- val = colNode.getAttribute('data-value');
54
- if (col.type === 'number') {
55
- val = Number(val);
56
- }
57
- data[col.key] = val;
58
- }
59
- return data;
60
- }
61
- // loads all row data
62
- function loadData() {
63
- var rows = getTableBody().querySelectorAll('tr'),
64
- i;
65
-
66
- for (i = 0; i < rows.length; i += 1) {
67
- rows[i].data = loadRowData(rows[i]);
68
- }
69
- }
70
- // sorts the table using the data for the ith column
71
- function sortByIndex(index, desc) {
72
- var key = cols[index].key,
73
- sorter = function (a, b) {
74
- a = a.data[key];
75
- b = b.data[key];
76
- return a < b ? -1 : a > b ? 1 : 0;
77
- },
78
- finalSorter = sorter,
79
- tableBody = document.querySelector('.coverage-summary tbody'),
80
- rowNodes = tableBody.querySelectorAll('tr'),
81
- rows = [],
82
- i;
83
-
84
- if (desc) {
85
- finalSorter = function (a, b) {
86
- return -1 * sorter(a, b);
87
- };
88
- }
89
-
90
- for (i = 0; i < rowNodes.length; i += 1) {
91
- rows.push(rowNodes[i]);
92
- tableBody.removeChild(rowNodes[i]);
93
- }
94
-
95
- rows.sort(finalSorter);
96
-
97
- for (i = 0; i < rows.length; i += 1) {
98
- tableBody.appendChild(rows[i]);
99
- }
100
- }
101
- // removes sort indicators for current column being sorted
102
- function removeSortIndicators() {
103
- var col = getNthColumn(currentSort.index),
104
- cls = col.className;
105
-
106
- cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, '');
107
- col.className = cls;
108
- }
109
- // adds sort indicators for current column being sorted
110
- function addSortIndicators() {
111
- getNthColumn(currentSort.index).className += currentSort.desc ? ' sorted-desc' : ' sorted';
112
- }
113
- // adds event listeners for all sorter widgets
114
- function enableUI() {
115
- var i,
116
- el,
117
- ithSorter = function ithSorter(i) {
118
- var col = cols[i];
119
-
120
- return function () {
121
- var desc = col.defaultDescSort;
122
-
123
- if (currentSort.index === i) {
124
- desc = !currentSort.desc;
125
- }
126
- sortByIndex(i, desc);
127
- removeSortIndicators();
128
- currentSort.index = i;
129
- currentSort.desc = desc;
130
- addSortIndicators();
131
- };
132
- };
133
- for (i =0 ; i < cols.length; i += 1) {
134
- if (cols[i].sortable) {
135
- // add the click event handler on the th so users
136
- // dont have to click on those tiny arrows
137
- el = getNthColumn(i).querySelector('.sorter').parentElement;
138
- if (el.addEventListener) {
139
- el.addEventListener('click', ithSorter(i));
140
- } else {
141
- el.attachEvent('onclick', ithSorter(i));
142
- }
143
- }
144
- }
145
- }
146
- // adds sorting functionality to the UI
147
- return function () {
148
- if (!getTable()) {
149
- return;
150
- }
151
- cols = loadColumns();
152
- loadData(cols);
153
- addSortIndicators();
154
- enableUI();
155
- };
156
- })();
157
-
158
- window.addEventListener('load', addSorting);
@@ -1,123 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <title>Code coverage report for src/</title>
5
- <meta charset="utf-8" />
6
- <link rel="stylesheet" href="../prettify.css" />
7
- <link rel="stylesheet" href="../base.css" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <style type='text/css'>
10
- .coverage-summary .sorter {
11
- background-image: url(../sort-arrow-sprite.png);
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div class='wrapper'>
17
- <div class='pad1'>
18
- <h1>
19
- <a href="../index.html">all files</a> src/
20
- </h1>
21
- <div class='clearfix'>
22
- <div class='fl pad1y space-right2'>
23
- <span class="strong">91.01% </span>
24
- <span class="quiet">Statements</span>
25
- <span class='fraction'>344/378</span>
26
- </div>
27
- <div class='fl pad1y space-right2'>
28
- <span class="strong">84.34% </span>
29
- <span class="quiet">Branches</span>
30
- <span class='fraction'>167/198</span>
31
- </div>
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">89.71% </span>
34
- <span class="quiet">Functions</span>
35
- <span class='fraction'>61/68</span>
36
- </div>
37
- <div class='fl pad1y space-right2'>
38
- <span class="strong">89.58% </span>
39
- <span class="quiet">Lines</span>
40
- <span class='fraction'>258/288</span>
41
- </div>
42
- <div class='fl pad1y'>
43
- <span class="strong">17 statements, 2 functions, 22 branches</span>
44
- <span class="quiet">Ignored</span> &nbsp;&nbsp;&nbsp;&nbsp;
45
- </div>
46
- </div>
47
- </div>
48
- <div class='status-line high'></div>
49
- <div class="pad1">
50
- <table class="coverage-summary">
51
- <thead>
52
- <tr>
53
- <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
54
- <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
55
- <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
56
- <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
57
- <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
58
- <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
59
- <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
60
- <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
61
- <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
62
- <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
63
- </tr>
64
- </thead>
65
- <tbody><tr>
66
- <td class="file high" data-value="postscribe.js"><a href="postscribe.js.html">postscribe.js</a></td>
67
- <td data-value="85.87" class="pic high"><div class="chart"><div class="cover-fill" style="width: 85%;"></div><div class="cover-empty" style="width:15%;"></div></div></td>
68
- <td data-value="85.87" class="pct high">85.87%</td>
69
- <td data-value="92" class="abs high">79/92</td>
70
- <td data-value="82.35" class="pct high">82.35%</td>
71
- <td data-value="34" class="abs high">28/34</td>
72
- <td data-value="81.25" class="pct high">81.25%</td>
73
- <td data-value="16" class="abs high">13/16</td>
74
- <td data-value="83.33" class="pct high">83.33%</td>
75
- <td data-value="66" class="abs high">55/66</td>
76
- </tr>
77
-
78
- <tr>
79
- <td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
80
- <td data-value="78.43" class="pic medium"><div class="chart"><div class="cover-fill" style="width: 78%;"></div><div class="cover-empty" style="width:22%;"></div></div></td>
81
- <td data-value="78.43" class="pct medium">78.43%</td>
82
- <td data-value="51" class="abs medium">40/51</td>
83
- <td data-value="70.97" class="pct medium">70.97%</td>
84
- <td data-value="31" class="abs medium">22/31</td>
85
- <td data-value="80" class="pct high">80%</td>
86
- <td data-value="15" class="abs high">12/15</td>
87
- <td data-value="75" class="pct medium">75%</td>
88
- <td data-value="36" class="abs medium">27/36</td>
89
- </tr>
90
-
91
- <tr>
92
- <td class="file high" data-value="write-stream.js"><a href="write-stream.js.html">write-stream.js</a></td>
93
- <td data-value="95.74" class="pic high"><div class="chart"><div class="cover-fill" style="width: 95%;"></div><div class="cover-empty" style="width:5%;"></div></div></td>
94
- <td data-value="95.74" class="pct high">95.74%</td>
95
- <td data-value="235" class="abs high">225/235</td>
96
- <td data-value="87.97" class="pct high">87.97%</td>
97
- <td data-value="133" class="abs high">117/133</td>
98
- <td data-value="97.3" class="pct high">97.3%</td>
99
- <td data-value="37" class="abs high">36/37</td>
100
- <td data-value="94.62" class="pct high">94.62%</td>
101
- <td data-value="186" class="abs high">176/186</td>
102
- </tr>
103
-
104
- </tbody>
105
- </table>
106
- </div><div class='push'></div><!-- for sticky footer -->
107
- </div><!-- /wrapper -->
108
- <div class='footer quiet pad2 space-top1 center small'>
109
- Code coverage
110
- generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Wed Apr 27 2016 01:39:53 GMT+0000 (UTC)
111
- </div>
112
- </div>
113
- <script src="../prettify.js"></script>
114
- <script>
115
- window.onload = function () {
116
- if (typeof prettyPrint === 'function') {
117
- prettyPrint();
118
- }
119
- };
120
- </script>
121
- <script src="../sorter.js"></script>
122
- </body>
123
- </html>