feat: additional functionality and layout adjustments for season teamers

This commit is contained in:
fromme committed 2026-09-26 12:13:16 +02:00
1 parent 80c6016da3
commit 4cab57d136
30 files changed
+916 -192

No files matched your search

@@ -0,0 +1,54 @@
<?php
declare(strict_types=1);
namespace App\Tests\Service\Season;
use App\Config\SeasonTask;
use App\Entity\SeasonAssignment;
use App\Entity\SeasonAssignmentTask;
use App\Entity\Upload;
use App\Service\Season\SeasonChecklistBuilder;
use App\Service\Season\SeasonTaskDeadlineResolver;
use PHPUnit\Framework\TestCase;
/**
* The row hands out what it was given, not what the library holds right now - that is what keeps
* a finished assignment from being rewritten when next season's file is deposited.
*/
class SeasonChecklistBuilderTest extends TestCase
{
public function testTheRowHandsOutItsOwnDocument(): void
{
$document = new Upload();
$seasonAssignment = new SeasonAssignment();
$seasonAssignment->addTask(
(new SeasonAssignmentTask())
->setTaskKey(SeasonTask::MASTER_DATA->value)
->setDocument($document)
);
$builder = new SeasonChecklistBuilder($this->createMock(SeasonTaskDeadlineResolver::class));
$rows = $builder->build($seasonAssignment);
$this->assertCount(1, $rows);
$this->assertSame($document, $rows[0]['document']);
}
public function testARowWithoutADocumentIsBuiltAllTheSame(): void
{
$seasonAssignment = new SeasonAssignment();
$seasonAssignment->addTask(
(new SeasonAssignmentTask())->setTaskKey(SeasonTask::MASTER_DATA->value)
);
$builder = new SeasonChecklistBuilder($this->createMock(SeasonTaskDeadlineResolver::class));
$rows = $builder->build($seasonAssignment);
$this->assertCount(1, $rows);
$this->assertNull($rows[0]['document']);
}
}