12 - Add Rejected case to CrawlOutcomeEnum and PageStatusEnum

This commit is contained in:
myrmidex 2026-04-26 16:35:46 +02:00
parent 6f75be7328
commit abbcedf2e7
4 changed files with 38 additions and 2 deletions

View file

@ -12,4 +12,5 @@ enum CrawlOutcomeEnum: string
case BlockedRobots = 'blocked_robots';
case Blocked4xx = 'blocked_4xx';
case Blocked5xx = 'blocked_5xx';
case Rejected = 'rejected';
}

View file

@ -9,4 +9,5 @@ enum PageStatusEnum: string
case Discovered = 'discovered';
case Fetched = 'fetched';
case Failed = 'failed';
case Rejected = 'rejected';
}

View file

@ -18,6 +18,7 @@ public function test_all_expected_cases_exist_with_correct_backing_values(): voi
'BlockedRobots' => 'blocked_robots',
'Blocked4xx' => 'blocked_4xx',
'Blocked5xx' => 'blocked_5xx',
'Rejected' => 'rejected',
];
foreach ($expected as $caseName => $backingValue) {
@ -28,8 +29,8 @@ public function test_all_expected_cases_exist_with_correct_backing_values(): voi
}
}
public function test_enum_has_exactly_six_cases(): void
public function test_enum_has_exactly_seven_cases(): void
{
$this->assertCount(6, CrawlOutcomeEnum::cases());
$this->assertCount(7, CrawlOutcomeEnum::cases());
}
}

View file

@ -0,0 +1,33 @@
<?php
declare(strict_types=1);
namespace Tests\Unit\Enums;
use App\Enums\PageStatusEnum;
use Tests\TestCase;
class PageStatusEnumTest extends TestCase
{
public function test_all_expected_cases_exist_with_correct_backing_values(): void
{
$expected = [
'Discovered' => 'discovered',
'Fetched' => 'fetched',
'Failed' => 'failed',
'Rejected' => 'rejected',
];
foreach ($expected as $caseName => $backingValue) {
$case = PageStatusEnum::from($backingValue);
$this->assertSame($caseName, $case->name, "Case name for '{$backingValue}' should be '{$caseName}'");
$this->assertSame($backingValue, $case->value, "Backing value for '{$caseName}' should be '{$backingValue}'");
}
}
public function test_enum_has_exactly_four_cases(): void
{
$this->assertCount(4, PageStatusEnum::cases());
}
}