fix: log partial menu writes; describe that the link gate covers new items only
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01At3V6SjwbMe6eMzVGW3Hs7
This commit is contained in:
@@ -204,7 +204,22 @@ final class MenuSetItemsAbilityTest extends TestCase
|
||||
$writer = Mockery::mock(MenuWriter::class);
|
||||
$writer->allows('plan')->andReturn(['errors' => [], 'removals' => [], 'warnings' => []]);
|
||||
$writer->expects('apply')->andThrow(new WriteFailed('Menü nicht gespeichert.', true));
|
||||
$ability = new MenuSetItemsAbility($writer, new MenuOperations(), Mockery::mock(ChangeLog::class));
|
||||
$log = Mockery::mock(ChangeLog::class);
|
||||
$log->shouldNotReceive('recordPartial');
|
||||
$ability = new MenuSetItemsAbility($writer, new MenuOperations(), $log);
|
||||
|
||||
$this->expectException(WriteFailed::class);
|
||||
$ability->execute(['menu_id' => 3, 'items' => [['id' => 10]]]);
|
||||
}
|
||||
|
||||
public function testAPartialWriteIsLoggedAsPartial(): void
|
||||
{
|
||||
$writer = Mockery::mock(MenuWriter::class);
|
||||
$writer->allows('plan')->andReturn(['errors' => [], 'removals' => [], 'warnings' => []]);
|
||||
$writer->expects('apply')->andThrow(new WriteFailed('Menü nicht gespeichert.', false));
|
||||
$log = Mockery::mock(ChangeLog::class);
|
||||
$log->expects('recordPartial')->with('lit/menu-set-items', 'nav_menu', '3', Mockery::type('string'));
|
||||
$ability = new MenuSetItemsAbility($writer, new MenuOperations(), $log);
|
||||
|
||||
$this->expectException(WriteFailed::class);
|
||||
$ability->execute(['menu_id' => 3, 'items' => [['id' => 10]]]);
|
||||
@@ -249,5 +264,6 @@ final class MenuSetItemsAbilityTest extends TestCase
|
||||
self::assertStringContainsString('confirm: true', $ability->description());
|
||||
self::assertStringContainsString('nur nötig', $ability->description());
|
||||
self::assertStringContainsString('CSS-Klassen', $ability->description());
|
||||
self::assertStringContainsString('nur für neu verlinkte Einträge', $ability->description());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user