Split public page contracts

This commit is contained in:
2026-03-19 18:48:16 +01:00
parent 98520dcc6a
commit ac9cc4955a
4 changed files with 32 additions and 20 deletions

View File

@@ -0,0 +1,23 @@
<?php
namespace MintyPHP\Tests\Architecture;
use PHPUnit\Framework\TestCase;
class PublicPageAdminContractTest extends TestCase
{
use ProjectFileAssertionSupport;
public function testPageMutationsUseSettingsUpdateCapabilityGuard(): void
{
$indexAction = $this->readProjectFile('pages/page/index($slug).php');
$copyAction = $this->readProjectFile('pages/page/copy-language().php');
$this->assertStringContainsString('UiAccessService::class', $indexAction);
$this->assertStringContainsString('SettingsAuthorizationPolicy::ABILITY_ADMIN_SETTINGS_UPDATE', $indexAction);
$this->assertStringNotContainsString('$canEdit = $currentUserId > 0;', $indexAction);
$this->assertStringContainsString('UiAccessService::class', $copyAction);
$this->assertStringContainsString('SettingsAuthorizationPolicy::ABILITY_ADMIN_SETTINGS_UPDATE', $copyAction);
}
}