Skip to content

Commit 6e65aa2

Browse files
committed
Populate table
1 parent a106c17 commit 6e65aa2

File tree

1 file changed

+65
-19
lines changed

1 file changed

+65
-19
lines changed

site/static/compare.html

Lines changed: 65 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -253,23 +253,43 @@ <h1>Comparing <span id="stat-header">instructions:u</span> between <span id="bef
253253
<a v-if="data.next" v-bind:href="nextLink">&rarr;</a>
254254
<a v-if="data.a.pr" v-bind:href="prLink(data.a.pr)">#{{data.a.pr}}</a>
255255
<a v-if="data.b.pr" v-bind:href="prLink(data.b.pr)">#{{data.b.pr}}</a>
256-
<div v-for="bench in benches">
257-
<div>
258-
<div>
259-
{{ bench.name }} ({{bench.casename}})
260-
</div>
261-
<a v-bind:href="detailedQueryLink(data.a.commit, bench.name, bench.casename)">
262-
{{ bench.datum_a }}
263-
</a>
264-
<a v-bind:href="detailedQueryLink(data.b.commit, bench.name, bench.casename)">
265-
{{ bench.datum_b }}
266-
</a>
267-
<a v-bind:class="percentClass(bench.percent)"
268-
v-bind:href="percentLink(data.b.commit, data.a.commit, bench.name, bench.casename)">
269-
{{ bench.percent }} %
270-
</a>
271-
</div>
272-
</div>
256+
<table class="compare" style="font-size: medium !important;">
257+
<tbody>
258+
<template v-for="bench in benches">
259+
<tr data-field-start="true">
260+
<th style="width: 19em;">
261+
<details class="toggle-table" v-on:toggle="benchGroupToggle">
262+
<summary>{{ bench.name }}</summary>
263+
</details>
264+
</th>
265+
<td>avg: <span>??</span></td>
266+
<td>min: <span>??</span></td>
267+
<td>max: <span>??</span></td>
268+
</tr>
269+
<template v-for="run in bench.fields">
270+
<tr>
271+
<td>{{ run.casename }}</td>
272+
<td>
273+
<a v-bind:href="detailedQueryLink(data.a.commit, bench.name, run.casename)">
274+
{{ run.datum_a }}
275+
</a>
276+
</td>
277+
<td>
278+
<a v-bind:href="detailedQueryLink(data.b.commit, bench.name, run.casename)">
279+
{{ run.datum_b }}
280+
</a>
281+
</td>
282+
<td>
283+
<a v-bind:class="percentClass(run.percent)"
284+
v-bind:href="percentLink(data.b.commit, data.a.commit, bench.name, run.casename)">
285+
{{ run.percent }}%
286+
</a>
287+
</td>
288+
</tr>
289+
</template>
290+
</template>
291+
</tbody>
292+
</table>
273293
</div>
274294
</div>
275295
<br>
@@ -365,7 +385,6 @@ <h1>Comparing <span id="stat-header">instructions:u</span> between <span id="bef
365385
}
366386
if (shouldShowBuild(key)) {
367387
fields.push({
368-
name,
369388
casename: key,
370389
datum_a,
371390
datum_b,
@@ -389,7 +408,7 @@ <h1>Comparing <span id="stat-header">instructions:u</span> between <span id="bef
389408
// ...bootstrap_names
390409
// .map(name => name)
391410
// .map(name => ({ name, is_bootstrap: true, fields: to_fields_bootstrap(name) })),
392-
...test_names.map(name => to_fields(name)).flat()
411+
...test_names.map(name => { return { name, fields: to_fields(name) } })
393412
];
394413
return fields;
395414
}
@@ -420,10 +439,37 @@ <h1>Comparing <span id="stat-header">instructions:u</span> between <span id="bef
420439
},
421440
percentLink(commit, baseCommit, bench, run) {
422441
return `/detailed-query.html?commit=${commit}&base_commit=${baseCommit}&benchmark=${bench}&run_name=${run}`;
442+
},
443+
benchGroupToggle(e) {
444+
const element = e.target;
445+
toggleBenchGroup(element)
423446
}
424447

448+
},
449+
watch: {
450+
data: function (newVal, oldVal) {
451+
if (newVal && !oldVal) {
452+
this.$nextTick(() => {
453+
for (let element of document.querySelectorAll(".toggle-table")) {
454+
toggleBenchGroup(element);
455+
}
456+
});
457+
}
458+
}
425459
}
426460
})
461+
function toggleBenchGroup(element) {
462+
let next = element.parentElement.parentElement.nextElementSibling;
463+
let inBody = []
464+
while (next && next.getAttribute("data-field-start") !== "true") {
465+
if (element.open) {
466+
next.style.display = "";
467+
} else {
468+
next.style.display = "none";
469+
}
470+
next = next.nextElementSibling;
471+
}
472+
}
427473
function toggleFilters(id, toggle) {
428474
let styles = document.getElementById(id).style;
429475
let indicator = document.getElementById(toggle);

0 commit comments

Comments
 (0)