improved dark mode, automatic theme switch (#5720)

This commit is contained in:
Kevin Papst
2025-12-19 23:51:27 +01:00
committed by GitHub
parent b61420d633
commit 8c1ed68817
90 changed files with 1855 additions and 1956 deletions

View File

@@ -16,6 +16,80 @@ use PHPUnit\Framework\TestCase;
#[CoversClass(MenuItemModel::class)]
class MenuItemModelTest extends TestCase
{
public function testDefaults(): void
{
$sut = new MenuItemModel('test', 'foo', 'bar');
self::assertEquals('test', $sut->getIdentifier());
self::assertEquals('foo', $sut->getLabel());
$sut->setLabel('new-label');
self::assertEquals('new-label', $sut->getLabel());
self::assertEquals('messages', $sut->getTranslationDomain());
$sut->setTranslationDomain('custom');
self::assertEquals('custom', $sut->getTranslationDomain());
self::assertNull($sut->getIcon());
$sut->setIcon('icon-123');
self::assertEquals('icon-123', $sut->getIcon());
self::assertFalse($sut->isDivider());
$sut->setDivider(true);
self::assertTrue($sut->isDivider());
self::assertNull($sut->getBadge());
$sut->setBadge('99');
self::assertEquals('99', $sut->getBadge());
self::assertNull($sut->getBadgeColor());
$sut->setBadgeColor('blue');
self::assertEquals('blue', $sut->getBadgeColor());
self::assertEquals([], $sut->getRouteArgs());
$sut->setRouteArgs(['a' => 'b']);
self::assertEquals(['a' => 'b'], $sut->getRouteArgs());
self::assertFalse($sut->getIsActive());
self::assertFalse($sut->isActive());
$sut->setIsActive(true);
self::assertTrue($sut->isActive());
self::assertTrue($sut->getIsActive());
self::assertFalse($sut->isChildRoute('route1'));
$sut->setChildRoutes(['route1']);
self::assertTrue($sut->isChildRoute('route1'));
$sut->addChildRoute('route2');
self::assertTrue($sut->isChildRoute('route1'));
self::assertTrue($sut->isChildRoute('route2'));
self::assertFalse($sut->isDisabled());
$sut->setDisabled(true);
self::assertTrue($sut->isDisabled());
self::assertFalse($sut->isExpanded());
$sut->setExpanded(true);
self::assertTrue($sut->isExpanded());
// validate default getter values
self::assertNull($sut->getActiveChild());
self::assertNull($sut->getChild('x'));
self::assertEquals('bar', $sut->getRoute());
$sut->setRoute('bar2');
self::assertEquals('bar2', $sut->getRoute());
self::assertNull($sut->getParent());
$parent = new MenuItemModel('parent', 'parent-label');
$sut->setParent($parent);
self::assertSame($parent, $sut->getParent());
self::assertEquals([], $sut->getChildren());
$child = new MenuItemModel('child', 'child-label');
$sut->setChildren([$child]);
self::assertEquals([$child], $sut->getChildren());
}
public function testChildRoutes(): void
{
$sut = new MenuItemModel('test', 'foo', 'bar');