* Add native property types Includes TypeHints.UnionTypeHintFormat Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Set some default values for properties Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Format and promote properties Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Remove redundant asserts Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Redundant cast Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * $tmanager->theme is never null Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Redundant variable Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Fix empty on $statementInfo bool Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Redundant casts Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Redundant issets Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * getPacked() returns nullable string Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Redundant if Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * $this->content can be null Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Simplify ThemeManager::getInstance() Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Use isset for checking if property is initialized Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Use nullable instead of uninitialized property Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * password is no longer nullable I can't verify that none of the globals ever tried to set it to null, but the variable should never be nullable. Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Update baselines Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * $same_wide_width param can be float or int Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Update Message.php Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Cast Sub_part to int Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> * Fix one line doc comments Signed-off-by: Kamil Tekiela <tekiela246@gmail.com> --------- Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
112 lines
2.8 KiB
PHP
112 lines
2.8 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace PhpMyAdmin\Tests\Navigation\Nodes;
|
|
|
|
use PhpMyAdmin\Navigation\Nodes\NodeDatabase;
|
|
use PhpMyAdmin\Tests\AbstractTestCase;
|
|
|
|
/** @covers \PhpMyAdmin\Navigation\Nodes\NodeDatabase */
|
|
class NodeDatabaseTest extends AbstractTestCase
|
|
{
|
|
/**
|
|
* SetUp for test cases
|
|
*/
|
|
protected function setUp(): void
|
|
{
|
|
parent::setUp();
|
|
|
|
$GLOBALS['dbi'] = $this->createDatabaseInterface();
|
|
$GLOBALS['server'] = 0;
|
|
$GLOBALS['cfg']['DefaultTabDatabase'] = 'structure';
|
|
$GLOBALS['cfg']['MaxNavigationItems'] = 250;
|
|
$GLOBALS['cfg']['Server'] = [];
|
|
$GLOBALS['cfg']['Server']['DisableIS'] = true;
|
|
}
|
|
|
|
/**
|
|
* Test for __construct
|
|
*/
|
|
public function testConstructor(): void
|
|
{
|
|
$parent = new NodeDatabase('default');
|
|
$this->assertEquals(
|
|
[
|
|
'text' => [
|
|
'route' => '/database/structure',
|
|
'params' => ['db' => null],
|
|
],
|
|
'icon' => ['route' => '/database/operations', 'params' => ['db' => null]],
|
|
'title' => 'Structure',
|
|
],
|
|
$parent->links,
|
|
);
|
|
$this->assertStringContainsString('database', $parent->classes);
|
|
}
|
|
|
|
/**
|
|
* Test for getPresence
|
|
*/
|
|
public function testGetPresence(): void
|
|
{
|
|
$parent = new NodeDatabase('default');
|
|
$this->assertEquals(
|
|
2,
|
|
$parent->getPresence('tables'),
|
|
);
|
|
$this->assertEquals(
|
|
0,
|
|
$parent->getPresence('views'),
|
|
);
|
|
$this->assertEquals(
|
|
1,
|
|
$parent->getPresence('functions'),
|
|
);
|
|
$this->assertEquals(
|
|
0,
|
|
$parent->getPresence('procedures'),
|
|
);
|
|
$this->assertEquals(
|
|
0,
|
|
$parent->getPresence('events'),
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Test for getData
|
|
*/
|
|
public function testGetData(): void
|
|
{
|
|
$parent = new NodeDatabase('default');
|
|
|
|
$tables = $parent->getData('tables', 0);
|
|
$this->assertContains('test1', $tables);
|
|
$this->assertContains('test2', $tables);
|
|
|
|
$views = $parent->getData('views', 0);
|
|
$this->assertEmpty($views);
|
|
|
|
$functions = $parent->getData('functions', 0);
|
|
$this->assertContains('testFunction', $functions);
|
|
$this->assertCount(1, $functions);
|
|
|
|
$this->assertEmpty($parent->getData('procedures', 0));
|
|
$this->assertEmpty($parent->getData('events', 0));
|
|
}
|
|
|
|
/**
|
|
* Test for setHiddenCount and getHiddenCount
|
|
*/
|
|
public function testHiddenCount(): void
|
|
{
|
|
$parent = new NodeDatabase('default');
|
|
|
|
$parent->setHiddenCount(3);
|
|
$this->assertEquals(
|
|
3,
|
|
$parent->getHiddenCount(),
|
|
);
|
|
}
|
|
}
|