Reworked test view page

This commit is contained in:
Gregory Ballantine 2024-06-03 11:28:24 -04:00
parent 0fde8c082e
commit 0510c80c34
2 changed files with 41 additions and 32 deletions

View File

@ -24,4 +24,22 @@ class Test extends Model {
return $this->belongsTo(Component::class); return $this->belongsTo(Component::class);
} }
public function benchmarkResults() {
$data = [];
foreach ($this->benchmarks as $i, $b) {
$benchmarkResults = $this->results()->where('benchmark_id', $b->id)->get();
$data[$i] = [
'name' => $b->name,
'scoring' => $b->scoring,
'count' => count($benchmarkResults),
'average' => 0,
'minimum' => 0,
'maximum' => 0,
]
}
return $data;
}
} }

View File

@ -7,11 +7,6 @@
<div class="twelve columns"> <div class="twelve columns">
<h1>{{ test.title }}</h1> <h1>{{ test.title }}</h1>
<p>{{ test.description }}</p> <p>{{ test.description }}</p>
<ul>
{% for b in test.benchmarks %}
<li>{{ b.name }}</li>
{% endfor %}
</ul>
</div> </div>
</div> </div>
@ -54,36 +49,32 @@
<div class="row"> <div class="row">
<div class="twelve columns"> <div class="twelve columns">
<h3>Test results:</h3> <h3>Benchmark results:</h3>
{% if test.results | length > 0 %} <table class="u-full-width">
<table class="u-full-width"> <thead>
<thead> <tr>
<th>Benchmark</th>
<th>Scoring</th>
<th># Results</th>
<th>Avg.</th>
<th>Min.</th>
<th>Max.</th>
</tr>
</thead>
<tbody>
{% for r in test.benchmarkResults() %}
<tr> <tr>
<th>Component</th> <td>{{ r.name }}</td>
<th>Benchmark</th> <td>{{ r.scoring | capitalize }}</td>
<th>Scoring</th> <td>{{ r.count }}</td>
<th>Avg.</th> <td>{{ r.average }}</td>
<th>Min.</th> <td>{{ r.minimum ? r.minimum : 'N/a' }}</td>
<th>Max.</th> <td>{{ r.maximum ? r.maximum : 'N/a' }}</td>
</tr> </tr>
</thead> {% endfor %}
<tbody> </tbody>
{% for r in test.results %} </table>
<tr>
<td>{{ test.component.name }}</td>
<td>{{ r.benchmark.name }}</td>
<td>{{ r.benchmark.scoring | capitalize }}</td>
<td>{{ r.average }}</td>
<td>{{ r.minimum ? r.minimum : 'N/a' }}</td>
<td>{{ r.maximum ? r.maximum : 'N/a' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p>There are no results associated with this test.</p>
{% endif %}
</div> </div>
</div> </div>
{% endblock %} {% endblock %}