3 declare(strict_types
=1);
5 namespace PhpMyAdmin\Tests\Theme
;
8 use PhpMyAdmin\Current
;
9 use PhpMyAdmin\Tests\AbstractTestCase
;
10 use PhpMyAdmin\Theme\ThemeManager
;
11 use PHPUnit\Framework\Attributes\CoversClass
;
13 #[CoversClass(ThemeManager::class)]
14 class ThemeManagerTest
extends AbstractTestCase
17 * SetUp for test cases
19 protected function setUp(): void
23 parent
::setGlobalConfig();
25 $config = Config
::getInstance();
26 $config->settings
['ThemePerServer'] = false;
27 $config->settings
['ThemeDefault'] = 'pmahomme';
28 $config->settings
['ServerDefault'] = 0;
29 Current
::$server = 99;
33 * Test for ThemeManager::getThemeCookieName
35 public function testCookieName(): void
37 $tm = new ThemeManager();
38 $this->assertEquals('pma_theme', $tm->getThemeCookieName());
42 * Test for ThemeManager::getThemeCookieName
44 public function testPerServerCookieName(): void
46 $tm = new ThemeManager();
47 $tm->setThemePerServer(true);
48 $this->assertEquals('pma_theme-99', $tm->getThemeCookieName());
51 public function testGetThemesArray(): void
53 $tm = new ThemeManager();
54 $tm->initializeTheme();
55 $themes = $tm->getThemesArray();
56 $this->assertIsArray($themes);
57 $this->assertArrayHasKey(0, $themes);
58 $this->assertIsArray($themes[0]);
59 $this->assertArrayHasKey('id', $themes[0]);
60 $this->assertArrayHasKey('name', $themes[0]);
61 $this->assertArrayHasKey('version', $themes[0]);
62 $this->assertArrayHasKey('is_active', $themes[0]);
66 * Test for setThemeCookie
68 public function testSetThemeCookie(): void
70 $tm = new ThemeManager();
72 $tm->setThemeCookie(),