88 lines
2.3 KiB
PHP
88 lines
2.3 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace PhpMyAdmin\Tests;
|
|
|
|
use PhpMyAdmin\DatabaseInterface;
|
|
use PhpMyAdmin\ThemeManager;
|
|
|
|
class ThemeManagerTest extends AbstractTestCase
|
|
{
|
|
/**
|
|
* SetUp for test cases
|
|
*/
|
|
protected function setUp(): void
|
|
{
|
|
parent::setUp();
|
|
parent::defineVersionConstants();
|
|
parent::setGlobalConfig();
|
|
$GLOBALS['cfg']['ThemePerServer'] = false;
|
|
$GLOBALS['cfg']['ThemeDefault'] = 'pmahomme';
|
|
$GLOBALS['cfg']['ServerDefault'] = 0;
|
|
$GLOBALS['server'] = 99;
|
|
|
|
$dbi = $this->getMockBuilder(DatabaseInterface::class)
|
|
->disableOriginalConstructor()
|
|
->getMock();
|
|
$dbi->expects($this->any())->method('escapeString')
|
|
->will($this->returnArgument(0));
|
|
}
|
|
|
|
/**
|
|
* Test for ThemeManager::getThemeCookieName
|
|
*/
|
|
public function testCookieName(): void
|
|
{
|
|
$tm = new ThemeManager();
|
|
$this->assertEquals('pma_theme', $tm->getThemeCookieName());
|
|
}
|
|
|
|
/**
|
|
* Test for ThemeManager::getThemeCookieName
|
|
*/
|
|
public function testPerServerCookieName(): void
|
|
{
|
|
$tm = new ThemeManager();
|
|
$tm->setThemePerServer(true);
|
|
$this->assertEquals('pma_theme-99', $tm->getThemeCookieName());
|
|
}
|
|
|
|
/**
|
|
* Test for ThemeManager::getHtmlSelectBox
|
|
*/
|
|
public function testHtmlSelectBox(): void
|
|
{
|
|
$tm = new ThemeManager();
|
|
$this->assertStringContainsString(
|
|
'<option value="pmahomme" selected="selected">',
|
|
$tm->getHtmlSelectBox()
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Test for setThemeCookie
|
|
*/
|
|
public function testSetThemeCookie(): void
|
|
{
|
|
$tm = new ThemeManager();
|
|
$this->assertTrue(
|
|
$tm->setThemeCookie()
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Test for getPrintPreviews
|
|
*/
|
|
public function testGetPrintPreviews(): void
|
|
{
|
|
$tm = new ThemeManager();
|
|
$preview = $tm->getPrintPreviews();
|
|
$this->assertStringContainsString('<div class="theme_preview"', $preview);
|
|
$this->assertStringContainsString('Original', $preview);
|
|
$this->assertStringContainsString('set_theme=original', $preview);
|
|
$this->assertStringContainsString('pmahomme', $preview);
|
|
$this->assertStringContainsString('set_theme=pmahomme', $preview);
|
|
}
|
|
}
|