Merge pull request #520 from adamgsoc2013/UT_plu_parse

add test case for PMA_SQL_parser
This commit is contained in:
Michal Čihař 2013-07-18 23:34:27 -07:00
commit 4ef0d4a916
2 changed files with 52 additions and 1 deletions

View File

@ -155,7 +155,7 @@ function PMA_SQP_bug($message, $sql)
{
global $SQP_errorString;
$debugstr = 'ERROR: ' . $message . "\n";
$debugstr .= 'MySQL: '.PMA_MYSQL_STR_VERSION . "\n";
$debugstr .= 'MySQL: ' . PMA_MYSQL_STR_VERSION . "\n";
$debugstr .= 'USR OS, AGENT, VER: ' . PMA_USR_OS . ' ';
$debugstr .= PMA_USR_BROWSER_AGENT . ' ' . PMA_USR_BROWSER_VER . "\n";
$debugstr .= 'PMA: ' . PMA_VERSION . "\n";

View File

@ -61,8 +61,59 @@ class PMA_SQLParser_Test extends PHPUnit_Framework_TestCase
$this->assertTrue(PMA_SQP_isKeyWord("accessible"));
$this->assertTrue(PMA_SQP_isKeyWord("ASC"));
$this->assertFalse(PMA_SQP_isKeyWord("hello"));
}
/**
* Test PMA_SQP_typeCheck
*
* @return void
*/
public function testPMA_SQP_typeCheck()
{
$this->assertTrue(
PMA_SQP_typeCheck("VARCHAR", "VARCHAR")
);
$this->assertFalse(
PMA_SQP_typeCheck("VARCHAR", "VARCHAR_INT")
);
$this->assertTrue(
PMA_SQP_typeCheck("VARCHAR_INT", "VARCHAR")
);
$this->assertFalse(
PMA_SQP_typeCheck("TIME_INT", "VARCHAR")
);
}
/**
* Test PMA_SQP_throwError
*
* @return void
*/
public function testPMA_SQP_throwError()
{
global $SQP_errorString;
$message = "error from testPMA_SQP_throwError";
$sql = "select * from PMA.PMABookmark";
PMA_SQP_throwError($message, $sql);
$this->assertContains(
"There seems to be an error in your SQL query.",
$SQP_errorString
);
$this->assertContains(
'ERROR: ' . $message,
$SQP_errorString
);
$this->assertContains(
'SQL: ' . htmlspecialchars($sql),
$SQP_errorString
);
}
/**
* Data provider for parser testing