# HG changeset patch # User Raphaël Gomès <rgomes@octobus.net> # Date 1657577369 -7200 # Tue Jul 12 00:09:29 2022 +0200 # Node ID 43127194326e6de9d91dfb45be14c9c2e888a0a4 # Parent f334a1ed5eb1aaa88faa01bdc9c0d896a486389c web-ui: group more graphs together, don't segment by branch diff --git a/web-ui/src/App.svelte b/web-ui/src/App.svelte --- a/web-ui/src/App.svelte +++ b/web-ui/src/App.svelte @@ -1,19 +1,5 @@ <script lang="ts"> import Benchmark from "./lib/Benchmark.svelte"; - - /** - * Group results as expected by `Benchmark` - */ - const groupResults = (results) => { - return results.reduce((acc, result) => { - const key = result["bin-env-vars"]["hg"]["flavor"]; - if (!acc.hasOwnProperty(key)) { - acc[key] = []; - } - acc[key].push(result); - return acc; - }, {}); - }; </script> <main> @@ -23,11 +9,7 @@ <h2>Loading...</h2> {:then allResults} {#each Object.entries(allResults.default) as [name, results]} - <h2>{name}</h2> - {#each Object.entries(groupResults(results)) as [flavor, results]} - <h3>Flavor: {flavor}</h3> - <Benchmark {results} /> - {/each} + <Benchmark {name} {results} /> {/each} {/await} </main> diff --git a/web-ui/src/lib/Benchmark.svelte b/web-ui/src/lib/Benchmark.svelte --- a/web-ui/src/lib/Benchmark.svelte +++ b/web-ui/src/lib/Benchmark.svelte @@ -1,6 +1,7 @@ <script lang="ts"> import Graph from "./Graph.svelte"; + export let name; export let results; /** @@ -8,7 +9,8 @@ */ const groupResults = (results) => { return results.reduce((acc, result) => { - const key = result["data-env-vars"]["name"].split("-", 1)[0]; + const repoName = result["data-env-vars"]["name"].split("-", 1)[0]; + const key = repoName; if (!acc.hasOwnProperty(key)) { acc[key] = []; } @@ -19,6 +21,7 @@ </script> <div class="benchmark"> + <h2>{name}</h2> <div class="graphs"> {#each Object.entries(groupResults(results)) as [repoName, data]} <Graph title={repoName} {data} /> diff --git a/web-ui/src/lib/Graph.svelte b/web-ui/src/lib/Graph.svelte --- a/web-ui/src/lib/Graph.svelte +++ b/web-ui/src/lib/Graph.svelte @@ -17,10 +17,9 @@ return acc; } const dataEnvName = result["data-env-vars"]["name"]; - const key = - dataEnvName.slice(dataEnvName.split("-", 1)[0].length + 1) + - "-" + - result["bin-env-vars"]["hg"]["changeset"]["branch"]; + const variant = dataEnvName.slice(dataEnvName.split("-", 1)[0].length + 1); + const flavor = result["bin-env-vars"]["hg"]["flavor"]; + const key = `${variant}-${flavor}`; if (!acc.hasOwnProperty(key)) { acc[key] = []; }