Merge pull request #495 from ayushchd/unit_testing

Validator names fix
This commit is contained in:
Madhura Jayaratne 2013-07-12 04:06:17 -07:00
commit 2dfcf17983
4 changed files with 39 additions and 37 deletions

View File

@ -198,41 +198,41 @@ $cfg_db['_overrides']['Servers/1/extension'] = extension_loaded('mysqli')
* Use only full paths and form ids
*/
$cfg_db['_validators'] = array(
'CharTextareaCols' => 'PMA_validatePositiveNumber',
'CharTextareaRows' => 'PMA_validatePositiveNumber',
'ExecTimeLimit' => 'PMA_validateNonNegativeNumber',
'Export/sql_max_query_size' => 'PMA_validatePositiveNumber',
'ForeignKeyMaxLimit' => 'PMA_validatePositiveNumber',
'Import/csv_enclosed' => array(array('PMA_validateByRegex', '/^.?$/')),
'Import/csv_escaped' => array(array('PMA_validateByRegex', '/^.$/')),
'Import/csv_terminated' => array(array('PMA_validateByRegex', '/^.$/')),
'Import/ldi_enclosed' => array(array('PMA_validateByRegex', '/^.?$/')),
'Import/ldi_escaped' => array(array('PMA_validateByRegex', '/^.$/')),
'Import/ldi_terminated' => array(array('PMA_validateByRegex', '/^.$/')),
'Import/skip_queries' => 'PMA_validateNonNegativeNumber',
'InsertRows' => 'PMA_validatePositiveNumber',
'NumRecentTables' => 'PMA_validateNonNegativeNumber',
'LimitChars' => 'PMA_validatePositiveNumber',
'LoginCookieValidity' => 'PMA_validatePositiveNumber',
'LoginCookieStore' => 'PMA_validateNonNegativeNumber',
'MaxDbList' => 'PMA_validatePositiveNumber',
'MaxNavigationItems' => 'PMA_validatePositiveNumber',
'MaxCharactersInDisplayedSQL' => 'PMA_validatePositiveNumber',
'MaxRows' => 'PMA_validatePositiveNumber',
'MaxTableList' => 'PMA_validatePositiveNumber',
'MemoryLimit' => array(array('PMA_validateByRegex', '/^\d+(?:[kmg])?$/i')),
'NavigationTreeTableLevel' => 'PMA_validatePositiveNumber',
'QueryHistoryMax' => 'PMA_validatePositiveNumber',
'QueryWindowWidth' => 'PMA_validatePositiveNumber',
'QueryWindowHeight' => 'PMA_validatePositiveNumber',
'RepeatCells' => 'PMA_validateNonNegativeNumber',
'Server' => 'PMA_validateServer',
'Server_pmadb' => 'PMA_validatePMAStorage',
'Servers/1/port' => 'PMA_validatePortNumber',
'Servers/1/hide_db' => 'PMA_validateRegex',
'TextareaCols' => 'PMA_validatePositiveNumber',
'TextareaRows' => 'PMA_validatePositiveNumber',
'TrustedProxies' => 'PMA_validateTrustedProxies');
'CharTextareaCols' => 'validatePositiveNumber',
'CharTextareaRows' => 'validatePositiveNumber',
'ExecTimeLimit' => 'validateNonNegativeNumber',
'Export/sql_max_query_size' => 'validatePositiveNumber',
'ForeignKeyMaxLimit' => 'validatePositiveNumber',
'Import/csv_enclosed' => array(array('validateByRegex', '/^.?$/')),
'Import/csv_escaped' => array(array('validateByRegex', '/^.$/')),
'Import/csv_terminated' => array(array('validateByRegex', '/^.$/')),
'Import/ldi_enclosed' => array(array('validateByRegex', '/^.?$/')),
'Import/ldi_escaped' => array(array('validateByRegex', '/^.$/')),
'Import/ldi_terminated' => array(array('validateByRegex', '/^.$/')),
'Import/skip_queries' => 'validateNonNegativeNumber',
'InsertRows' => 'validatePositiveNumber',
'NumRecentTables' => 'validateNonNegativeNumber',
'LimitChars' => 'validatePositiveNumber',
'LoginCookieValidity' => 'validatePositiveNumber',
'LoginCookieStore' => 'validateNonNegativeNumber',
'MaxDbList' => 'validatePositiveNumber',
'MaxNavigationItems' => 'validatePositiveNumber',
'MaxCharactersInDisplayedSQL' => 'validatePositiveNumber',
'MaxRows' => 'validatePositiveNumber',
'MaxTableList' => 'validatePositiveNumber',
'MemoryLimit' => array(array('validateByRegex', '/^\d+(?:[kmg])?$/i')),
'NavigationTreeTableLevel' => 'validatePositiveNumber',
'QueryHistoryMax' => 'validatePositiveNumber',
'QueryWindowWidth' => 'validatePositiveNumber',
'QueryWindowHeight' => 'validatePositiveNumber',
'RepeatCells' => 'validateNonNegativeNumber',
'Server' => 'validateServer',
'Server_pmadb' => 'validatePMAStorage',
'Servers/1/port' => 'validatePortNumber',
'Servers/1/hide_db' => 'validateRegex',
'TextareaCols' => 'validatePositiveNumber',
'TextareaRows' => 'validatePositiveNumber',
'TrustedProxies' => 'validateTrustedProxies');
/**
* Additional validators used for user preferences

View File

@ -447,6 +447,7 @@ function PMA_addJsValidate($field_id, $validators, &$js_array)
foreach ((array)$validators as $validator) {
$validator = (array)$validator;
$v_name = array_shift($validator);
$v_name = "PMA_" . $v_name;
$v_args = array();
foreach ($validator as $arg) {
$v_args[] = PMA_escapeJsString($arg);

View File

@ -109,6 +109,7 @@ class PMA_Validator
foreach ((array)$validators[$vid] as $validator) {
$vdef = (array) $validator;
$vname = array_shift($vdef);
$vname = "Validator::" . $vname;
$args = array_merge(array($vid, &$arguments), $vdef);
$r = call_user_func_array($vname, $args);

View File

@ -772,9 +772,9 @@ class PMA_FormDisplay_Tpl_Test extends PHPUnit_Framework_TestCase
$this->assertEquals(
array(
'validateField(\'testID\', \'\\\';\', true, [\'\\\\r\\\\n\\\\\\\'' .
'validateField(\'testID\', \'PMA_\\\';\', true, [\'\\\\r\\\\n\\\\\\\'' .
'<scrIpt></\\\' + \\\'script>\'])',
'validateField(\'testID\', \'\', true)'
'validateField(\'testID\', \'PMA_\', true)'
),
$js
);