Split auth login accessibility contracts

This commit is contained in:
2026-03-19 19:12:25 +01:00
parent 2de0039d4f
commit 115723fcd6
8 changed files with 122 additions and 79 deletions

View File

@@ -0,0 +1,30 @@
<?php
namespace MintyPHP\Tests\Architecture;
use PHPUnit\Framework\TestCase;
final class AuthLoginTemplateAccessibilityContractTest extends TestCase
{
use ProjectFileAssertionSupport;
public function testAuthLoginTemplatesDoNotUseRoleButtonLinks(): void
{
foreach (AuthLoginAccessibilityContractFiles::authLoginTemplates() as $file) {
$content = $this->readProjectFile($file);
$this->assertStringNotContainsString('role="button"', $content, $file);
}
}
public function testAuthLoginErrorNoticesUseAssertiveLiveRegions(): void
{
foreach (AuthLoginAccessibilityContractFiles::authLoginTemplates() as $file) {
$content = $this->readProjectFile($file);
$this->assertStringContainsString(
'class="notice" data-variant="error" role="alert" aria-live="assertive"',
$content,
$file
);
}
}
}