Reworked how test results get submitted

This commit is contained in:
Gregory Ballantine
2024-06-03 10:36:18 -04:00
parent de8e523c2c
commit 05b1374d1d
8 changed files with 56 additions and 123 deletions

View File

@ -1,62 +0,0 @@
{% extends 'layout.twig' %}
{% block title %}Add Benchmark Result{% endblock %}
{% block content %}
<div class="row">
<div class="twelve columns">
<h1>Add new benchmark result</h1>
</div>
</div>
<div class="row">
<div class="twelve columns">
<form action="{{ url_for('result.add') }}" method="POST" class="u-full-width">
<div class="row">
<div class="four columns">
<label for="result_test">Associated test:</label>
<select name="result_test" id="result_test" class="u-full-width">
{% for t in tests %}
<option value="{{ t.id }}">{{ t.name }}</option>
{% endfor %}
</select>
</div>
<div class="four columns">
<label for="result_component">Hardware name:</label>
<input type="text" id="result_component" class="u-full-width" name="result_component">
</div>
<div class="four columns">
<label for="result_benchmark">Benchmark used:</label>
<input type="text" id="result_benchmark" class="u-full-width" name="result_benchmark">
</div>
</div>
<div class="row">
<div class="six columns">
<label for="result_type">Score type:</label>
<select id="result_type" class="u-full-width" name="result_type">
<option value="fps">Frames per second</option>
<option value="points">Point value</option>
</select>
</div>
<div class="two columns">
<label for="result_avg">Average:</label>
<input type="number" id="result_avg" class="u-full-width" name="result_avg">
</div>
<div class="two columns">
<label for="result_min">Minimum:</label>
<input type="number" id="result_min" class="u-full-width" name="result_min">
</div>
<div class="two columns">
<label for="result_max">Maximum:</label>
<input type="number" id="result_max" class="u-full-width" name="result_max">
</div>
</div>
<input class="button button-primary u-full-width" type="submit" value="Submit">
</form>
</div>
</div>
{% endblock %}

View File

@ -1,34 +0,0 @@
{% extends 'layout.twig' %}
{% block title %}List of Results{% endblock %}
{% block content %}
<p>Results list...</p>
<table class="u-full-width">
<thead>
<tr>
<th>Hardware name</th>
<th>Benchmark</th>
<th>Result type</th>
<th>Avg.</th>
<th>Min.</th>
<th>Max.</th>
<th>Last updated</th>
</tr>
</thead>
<tbody>
{% for r in results %}
<tr>
<td>{{ r.component }}</td>
<td>{{ r.benchmark }}</td>
<td>{{ r.type | capitalize }}</td>
<td>{{ r.average }}</td>
<td>{{ r.minimum ? r.minimum : 'N/a' }}</td>
<td>{{ r.maximum ? r.maximum : 'N/a' }}</td>
<td>{{ r.updated_at | date("F jS \\a\\t g:ia") }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}

View File

@ -17,10 +17,44 @@
<hr>
<div class="row">
<div class="twelve columns">
<form id="result-form" class="u-full-width" action="{{ url_for('result.add') }}" method="POST">
<div class="row">
<div class="four columns">
<select name="result_benchmark">
{% for b in test.benchmarks() %}
<option value="{{ b.id }}">{{ b.name }}</option>
{% endfor %}
</select>
</div>
<div class="two columns">
<input type="number" step="0.01" name="result_avg" placeholder="0.0">
</div>
<div class="two columns">
<input type="number" step="0.01" name="result_min" placeholder="0.0">
</div>
<div class="two columns">
<input type="number" step="0.01" name="result_max" placeholder="0.0">
</div>
<div class="two columns">
<button class="button-primary" type="submit" name="button">Submit</button>
</div>
</div>
<input type="hidden" name="result_test" value="{{ test.id }}">
<input type="hidden" name="result_component" value="{{ test.component().id }}">
</form>
</div>
</div>
<hr>
<div class="row">
<div class="twelve columns">
<h3>Test results:</h3>
<p><a href="{{ url_for('result.add') }}">Add new result</a></p>
{% if test.results | length > 0 %}
<table class="u-full-width">