138 lines
3.1 KiB
PHP
138 lines
3.1 KiB
PHP
<?php
|
|
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
|
/**
|
|
* Tests for PMA\libraries\navigation\nodes\NodeDatabase class
|
|
*
|
|
* @package PhpMyAdmin-test
|
|
*/
|
|
|
|
use PMA\libraries\navigation\NodeFactory;
|
|
use PMA\libraries\Theme;
|
|
|
|
require_once 'libraries/navigation/NodeFactory.php';
|
|
require_once 'test/PMATestCase.php';
|
|
|
|
/**
|
|
* Tests for PMA\libraries\navigation\nodes\NodeDatabase class
|
|
*
|
|
* @package PhpMyAdmin-test
|
|
*/
|
|
class NodeDatabaseTest extends PMATestCase
|
|
{
|
|
/**
|
|
* SetUp for test cases
|
|
*
|
|
* @return void
|
|
*/
|
|
public function setup()
|
|
{
|
|
$GLOBALS['server'] = 0;
|
|
$GLOBALS['cfg']['DefaultTabDatabase'] = 'structure';
|
|
$GLOBALS['cfg']['MaxNavigationItems'] = 250;
|
|
$GLOBALS['cfg']['Server'] = array();
|
|
$GLOBALS['cfg']['Server']['DisableIS'] = true;
|
|
$_SESSION['PMA_Theme'] = Theme::load('./themes/pmahomme');
|
|
}
|
|
|
|
/**
|
|
* Test for __construct
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testConstructor()
|
|
{
|
|
$parent = NodeFactory::getInstance('NodeDatabase');
|
|
$this->assertArrayHasKey(
|
|
'text',
|
|
$parent->links
|
|
);
|
|
$this->assertContains(
|
|
'db_structure.php',
|
|
$parent->links['text']
|
|
);
|
|
$this->assertContains('database', $parent->classes);
|
|
}
|
|
|
|
/**
|
|
* Test for getPresence
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testGetPresence()
|
|
{
|
|
$parent = NodeFactory::getInstance('NodeDatabase');
|
|
$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
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testGetData()
|
|
{
|
|
$parent = NodeFactory::getInstance('NodeDatabase');
|
|
|
|
$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->assertEquals(
|
|
1,
|
|
count($functions)
|
|
);
|
|
|
|
$this->assertEmpty($parent->getData('procedures', 0));
|
|
$this->assertEmpty($parent->getData('events', 0));
|
|
}
|
|
|
|
/**
|
|
* Test for setHiddenCount and getHiddenCount
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testHiddenCount()
|
|
{
|
|
$parent = NodeFactory::getInstance('NodeDatabase');
|
|
|
|
$parent->setHiddenCount(3);
|
|
$this->assertEquals(
|
|
3,
|
|
$parent->getHiddenCount()
|
|
);
|
|
}
|
|
}
|