diff --git a/test/libraries/PMA_tbl_indexes_test.php b/test/libraries/PMA_tbl_indexes_test.php new file mode 100644 index 0000000000..41dbe350a7 --- /dev/null +++ b/test/libraries/PMA_tbl_indexes_test.php @@ -0,0 +1,169 @@ +getMockBuilder('PMA_DatabaseInterface') + ->disableOriginalConstructor() + ->getMock(); + + $GLOBALS['dbi'] = $dbi; + + //$_SESSION + $_SESSION['PMA_Theme'] = PMA_Theme::load('./themes/pmahomme'); + $_SESSION['PMA_Theme'] = new PMA_Theme(); + } + + /** + * Tests for PMA_getSqlQueryForIndexCreateOrEdit() method. + * + * @return void + * @test + */ + public function testPMAGetSqlQueryForIndexCreateOrEdit() + { + $db = "pma_db"; + $table = "pma_table"; + $index = new PMA_Index(); + $error = false; + + $_REQUEST['old_index'] = "PRIMARY"; + + $sql = PMA_getSqlQueryForIndexCreateOrEdit( + $db, $table, $index, $error + ); + + $this->assertEquals( + "ALTER TABLE `pma_db`.`pma_table` DROP PRIMARY KEY,COMMENT '';", + $sql + ); + } + + /** + * Tests for PMA_getNumberOfFieldsForForm() method. + * + * @return void + * @test + */ + public function testPMAGetNumberOfFieldsForForm() + { + $index = new PMA_Index(); + $error = false; + + $add_fields = PMA_getNumberOfFieldsForForm($index); + + $this->assertEquals( + 1, + $add_fields + ); + + $_REQUEST['create_index'] = true; + $_REQUEST['added_fields'] = 2; + $add_fields = PMA_getNumberOfFieldsForForm($index); + $this->assertEquals( + $_REQUEST['added_fields'], + $add_fields + ); + } + + /** + * Tests for PMA_getFormParameters() method. + * + * @return void + * @test + */ + public function testPMAGetFormParameters() + { + $db = "pma_db"; + $table = "pma_table"; + + $form_params = PMA_getFormParameters($db, $table); + $expect = array( + 'db' => $db, + 'table' => $table, + ); + $this->assertEquals( + $expect, + $form_params + ); + + $_REQUEST['index'] = "index"; + $form_params = PMA_getFormParameters($db, $table); + $expect = array( + 'db' => $db, + 'table' => $table, + 'old_index' => $_REQUEST['index'], + ); + $this->assertEquals( + $expect, + $form_params + ); + + $_REQUEST['old_index'] = "old_index"; + $form_params = PMA_getFormParameters($db, $table); + $expect = array( + 'db' => $db, + 'table' => $table, + 'old_index' => $_REQUEST['old_index'], + ); + $this->assertEquals( + $expect, + $form_params + ); + + $_REQUEST['create_index'] = "create_index"; + $form_params = PMA_getFormParameters($db, $table); + $expect = array( + 'db' => $db, + 'table' => $table, + 'create_index' => 1, + ); + $this->assertEquals( + $expect, + $form_params + ); + } +} +?>