%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : www.kowitt.ac.th / Your IP : 216.73.216.118 Web Server : Microsoft-IIS/7.5 System : Windows NT SERVER02 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.6.31 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/BK/wwwroot/phpMyAdmin/test/libraries/ |
Upload File : |
<?php /** * Tests for libraries/db_designer.lib.php * * @package PhpMyAdmin-test */ /* * Include to test. */ require_once 'libraries/db_designer.lib.php'; require_once 'libraries/database_interface.inc.php'; require_once 'libraries/url_generating.lib.php'; require_once 'libraries/relation.lib.php'; require_once 'libraries/plugin_interface.lib.php'; /** * Tests for libraries/db_designer.lib.php * * @package PhpMyAdmin-test */ class PMA_DesignerTest extends PHPUnit_Framework_TestCase { /** * Setup for test cases * * @return void */ public function setup() { $GLOBALS['server'] = 1; $GLOBALS['cfg']['ServerDefault'] = 1; $GLOBALS['cfg']['PDFPageSizes'] = array('A3', 'A4'); $GLOBALS['cfg']['PDFDefaultPageSize'] = 'A4'; $GLOBALS['cfg']['Schema']['pdf_orientation'] = 'L'; $GLOBALS['cfg']['Schema']['pdf_paper'] = 'A4'; $_SESSION = array( 'relation' => array( '1' => array( 'PMA_VERSION' => PMA_VERSION, 'db' => 'pmadb', 'pdf_pages' => 'pdf_pages', 'pdfwork' => true ) ), ' PMA_token ' => 'token' ); } /** * Mocks database interaction for tests. * * @param string $db database name * * @return void */ private function _mockDatabaseInteraction($db) { $dbi = $this->getMockBuilder('PMA\libraries\DatabaseInterface') ->disableOriginalConstructor() ->getMock(); $dbi->expects($this->at(0)) ->method('tryQuery') ->with( "SELECT `page_nr`, `page_descr` FROM `pmadb`.`pdf_pages`" . " WHERE db_name = '" . $db . "' ORDER BY `page_descr`", 2, PMA\libraries\DatabaseInterface::QUERY_STORE, false ) ->will($this->returnValue('dummyRS')); $dbi->expects($this->at(1)) ->method('fetchAssoc') ->with('dummyRS') ->will( $this->returnValue(array('page_nr' => '1', 'page_descr' => 'page1')) ); $dbi->expects($this->at(2)) ->method('fetchAssoc') ->with('dummyRS') ->will( $this->returnValue(array('page_nr' => '2', 'page_descr' => 'page2')) ); $dbi->expects($this->at(3)) ->method('fetchAssoc') ->with('dummyRS') ->will($this->returnValue(false)); $GLOBALS['dbi'] = $dbi; } /** * Test for PMA_getPageIdsAndNames() * * @return void */ public function testGetPageIdsAndNames() { $db = 'db'; $this->_mockDatabaseInteraction($db); $result = PMA_getPageIdsAndNames($db); $this->assertEquals( array( '1' => 'page1', '2' => 'page2' ), $result ); } /** * Test for PMA_getHtmlForEditOrDeletePages() * * @return void */ public function testGetHtmlForEditOrDeletePages() { $db = 'db'; $operation = 'edit'; $this->_mockDatabaseInteraction($db); $result = PMA_getHtmlForEditOrDeletePages($db, $operation); $this->assertContains( '<input type="hidden" name="operation" value="' . $operation . '" />', $result ); $this->assertContains( '<select name="selected_page" id="selected_page">', $result ); $this->assertContains('<option value="0">', $result); $this->assertContains('<option value="1">', $result); $this->assertContains('page1', $result); $this->assertContains('<option value="2">', $result); $this->assertContains('page2', $result); } /** * Test for PMA_getHtmlForPageSaveAs() * * @return void */ public function testGetHtmlForPageSaveAs() { $db = 'db'; $this->_mockDatabaseInteraction($db); $result = PMA_getHtmlForPageSaveAs($db); $this->assertContains( '<input type="hidden" name="operation" value="savePage" />', $result ); $this->assertContains( '<select name="selected_page" id="selected_page">', $result ); $this->assertContains('<option value="0">', $result); $this->assertContains('<option value="1">', $result); $this->assertContains('page1', $result); $this->assertContains('<option value="2">', $result); $this->assertContains('page2', $result); $this->assertContains( '<input type="radio" name="save_page" id="save_page_same" value="same"' . ' checked="checked" />', $result ); $this->assertContains( '<input type="radio" name="save_page" id="save_page_new" value="new" />', $result ); $this->assertContains( '<input type="text" name="selected_value" id="selected_value" />', $result ); } /** * Test for PMA_getHtmlForSchemaExport() * * @return void */ public function testGetHtmlForSchemaExport() { $db = 'db'; $page = 2; $result = PMA_getHtmlForSchemaExport($db, $page); // export type $this->assertContains( '<select id="plugins" name="export_type">', $result ); // hidden field $this->assertContains( '<input type="hidden" name="page_number" value="' . $page . '" />', $result ); // orientation $this->assertContains( '<select name="pdf_orientation" id="select_pdf_orientation">', $result ); $this->assertContains( '<option value="L" selected="selected">Landscape</option>', $result ); $this->assertContains('<option value="P">Portrait</option>', $result); // paper size $this->assertContains( '<select name="pdf_paper" id="select_pdf_paper">', $result ); $this->assertContains('<option value="A3">A3</option>', $result); $this->assertContains( '<option value="A4" selected="selected">A4</option>', $result ); } }