From 5282b838ce927ff084a5a531c701206b09d87478 Mon Sep 17 00:00:00 2001 From: xmujay Date: Mon, 15 Jul 2013 22:07:14 +0800 Subject: [PATCH 1/3] UTs for PMA_server_status_advisor --- .../PMA_server_status_advisor_test.php | 187 ++++++++++++++++++ 1 file changed, 187 insertions(+) create mode 100644 test/libraries/PMA_server_status_advisor_test.php diff --git a/test/libraries/PMA_server_status_advisor_test.php b/test/libraries/PMA_server_status_advisor_test.php new file mode 100644 index 0000000000..04c494a322 --- /dev/null +++ b/test/libraries/PMA_server_status_advisor_test.php @@ -0,0 +1,187 @@ +getMockBuilder('PMA_DatabaseInterface') + ->disableOriginalConstructor() + ->getMock(); + + //this data is needed when PMA_ServerStatusData constructs + $server_status = array( + "Aborted_clients" => "0", + "Aborted_connects" => "0", + "Com_delete_multi" => "0", + "Com_create_function" => "0", + "Com_empty_query" => "0", + ); + + $server_variables= array( + "auto_increment_increment" => "1", + "auto_increment_offset" => "1", + "automatic_sp_privileges" => "ON", + "back_log" => "50", + "big_tables" => "OFF", + ); + + $fetchResult = array( + array( + "SHOW GLOBAL STATUS", + 0, + 1, + null, + 0, + $server_status + ), + array( + "SHOW GLOBAL VARIABLES", + 0, + 1, + null, + 0, + $server_variables + ), + array( + "SELECT concat('Com_', variable_name), variable_value " + . "FROM data_dictionary.GLOBAL_STATEMENTS", + 0, + 1, + null, + 0, + $server_status + ), + ); + + $dbi->expects($this->any())->method('fetchResult') + ->will($this->returnValueMap($fetchResult)); + + $GLOBALS['dbi'] = $dbi; + + $this->ServerStatusData = new PMA_ServerStatusData(); + } + + /** + * Test for PMA_getHTMLForAdvisor + * + * @return void + */ + public function testPMAGetHTMLForAdvisor() + { + //Call the test function + $html = PMA_getHTMLForAdvisor(); + + //validate 1: Advisor Instructions + $this->assertContains( + '', + $html + ); + $this->assertContains( + '
assertContains( + 'The Advisor system can provide recommendations', + $html + ); + $this->assertContains( + 'Do note however that this system provides recommendations', + $html + ); + + //Advisor datas, we just validate that the Advisor Array is right + //Advisor logic related with OS should be validate on class Advisor + $this->assertContains( + '