test(*): Add basic BDD tests

This commit is contained in:
Josh Creek
2025-04-24 08:15:24 +01:00
parent fa69411829
commit a7c1d60db8
17 changed files with 1722 additions and 41 deletions
+1 -1
View File
@@ -9,7 +9,7 @@
export let reasoning: string = '';
</script>
<section class="max-w-4xl mx-auto bg-white rounded shadow p-6 mt-8">
<section class="max-w-4xl mx-auto bg-white rounded shadow p-6 mt-8" data-testid="feedback">
<h2 class="text-xl font-bold mb-4 text-blue-700">AI Assessment Feedback</h2>
<div class="mb-2"><span class="font-semibold">Grade:</span> {grade}</div>
<div class="mb-2"><span class="font-semibold">Strengths:</span> {strengths}</div>
+1 -1
View File
@@ -33,7 +33,7 @@ onMount(() => {
<a href="#main-content" class="sr-only focus:not-sr-only focus:absolute focus:top-2 focus:left-2 bg-blue-100 text-blue-700 px-2 py-1 rounded">Skip to main content</a>
<section id="main-content" class="max-w-4xl mx-auto py-12">
<div class="flex justify-between items-center mb-4">
<h1 class="text-2xl font-bold">Assessment Results</h1>
<h1 class="text-2xl font-bold" data-testid="results-heading">Assessment Results</h1>
<a href="/upload" class="bg-blue-100 text-blue-700 px-3 py-1 rounded hover:bg-blue-200 transition" aria-label="Back to upload page">Back to Upload</a>
</div>
<p class="mb-6">View detailed feedback and recommendations for each student submission.</p>
+5
View File
@@ -64,6 +64,7 @@
}
const formData = new FormData();
formData.append('task', taskDescription.trim());
if (file) {
formData.append('file', file);
} else if (textInput.trim().length > 0) {
@@ -143,6 +144,7 @@
<h1 class="mb-4 text-2xl font-bold">Upload Student Submissions</h1>
<p class="mb-6">Upload student assignments for instant AI-powered assessment and feedback.</p>
<form class="space-y-6" on:submit|preventDefault={handleSubmit}>
<div class="mb-4">
<label class="mb-1 block font-semibold" for="task"
>Task/Assignment Description <span class="text-red-500">*</span></label
@@ -156,6 +158,7 @@
aria-required="true"
aria-label="Task or Assignment Description"
disabled={submitting}
data-testid="task-input"
></textarea>
</div>
<div class="mb-4">
@@ -180,12 +183,14 @@
on:input={handleTextChange}
disabled={submitting}
placeholder="Paste or type student answer here..."
data-testid="submission-input"
></textarea>
</div>
<button
type="submit"
class="mt-4 w-full rounded bg-blue-600 px-4 py-2 text-white hover:bg-blue-700"
disabled={submitting || (!file && textInput.trim().length === 0)}
data-testid="submit-button"
>
{submitting ? 'Uploading...' : 'Submit'}
</button>