L'élève peut désormais répondre à un devoir via un éditeur WYSIWYG, joindre des fichiers (PDF, JPEG, PNG, DOCX), sauvegarder un brouillon et soumettre définitivement son rendu. Le système détecte automatiquement les soumissions en retard par rapport à la date d'échéance. Côté enseignant, une page dédiée affiche la liste complète des élèves avec leur statut (soumis, en retard, brouillon, non rendu), le détail de chaque rendu avec ses pièces jointes téléchargeables, et les statistiques de rendus par classe.
39 lines
1005 B
PHP
39 lines
1005 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Tests\Unit\Scolarite\Domain\Model\HomeworkSubmission;
|
|
|
|
use App\Scolarite\Domain\Model\HomeworkSubmission\SubmissionStatus;
|
|
use PHPUnit\Framework\Attributes\Test;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
final class SubmissionStatusTest extends TestCase
|
|
{
|
|
#[Test]
|
|
public function draftEstModifiable(): void
|
|
{
|
|
self::assertTrue(SubmissionStatus::DRAFT->estModifiable());
|
|
}
|
|
|
|
#[Test]
|
|
public function submittedNestPasModifiable(): void
|
|
{
|
|
self::assertFalse(SubmissionStatus::SUBMITTED->estModifiable());
|
|
}
|
|
|
|
#[Test]
|
|
public function lateNestPasModifiable(): void
|
|
{
|
|
self::assertFalse(SubmissionStatus::LATE->estModifiable());
|
|
}
|
|
|
|
#[Test]
|
|
public function backingValues(): void
|
|
{
|
|
self::assertSame('draft', SubmissionStatus::DRAFT->value);
|
|
self::assertSame('submitted', SubmissionStatus::SUBMITTED->value);
|
|
self::assertSame('late', SubmissionStatus::LATE->value);
|
|
}
|
|
}
|