aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2013-06-03 21:30:13 +0200
committerMarc Alexander <admin@m-a-styles.de>2013-06-03 21:30:13 +0200
commit11678678b810c26376728166cf334550cbc30124 (patch)
tree4811af80294223ca68195ee0d27e99be2761ff9a
parentc2bc82ebfd54cebba03bd04dccaf5a8e317844ae (diff)
downloadforums-11678678b810c26376728166cf334550cbc30124.tar
forums-11678678b810c26376728166cf334550cbc30124.tar.gz
forums-11678678b810c26376728166cf334550cbc30124.tar.bz2
forums-11678678b810c26376728166cf334550cbc30124.tar.xz
forums-11678678b810c26376728166cf334550cbc30124.zip
[ticket/11579] Rework calls to validate_data_helper
PHPBB3-11579
-rw-r--r--tests/functions/validate_data_helper.php18
-rw-r--r--tests/functions/validate_date_test.php90
-rw-r--r--tests/functions/validate_email_test.php62
-rw-r--r--tests/functions/validate_jabber_test.php86
-rw-r--r--tests/functions/validate_lang_iso_test.php38
-rw-r--r--tests/functions/validate_match_test.php38
-rw-r--r--tests/functions/validate_num_test.php54
-rw-r--r--tests/functions/validate_password_test.php39
-rw-r--r--tests/functions/validate_string_test.php70
-rw-r--r--tests/functions/validate_username_test.php81
10 files changed, 344 insertions, 232 deletions
diff --git a/tests/functions/validate_data_helper.php b/tests/functions/validate_data_helper.php
index b8e8bfded3..94ddf60429 100644
--- a/tests/functions/validate_data_helper.php
+++ b/tests/functions/validate_data_helper.php
@@ -20,19 +20,17 @@ class phpbb_functions_validate_data_helper extends PHPUnit_Framework_TestCase
* Test provided input data with supplied checks and compare to expected
* results
*
- * @param array $expected Array containing the expected results. Either
- * an array containing the error message or the an empty
- * array if input is correct
- * @param array $input Input data with specific array keys that need to
- * be matched by the ones in the other 2 params
- * @param array $validate_check Array containing validate_data check
- * settings, i.e. array('foobar' => array('string'))
+ * @param array $data Array containing one or more subarrays with the
+ * test data. The first element of a subarray is the
+ * expected result, the second one is the input, and the
+ * third is the data that should be passed to the function
+ * validate_data().
*/
- public function assert_validate_data($expected, $input, $validate_check)
+ public function assert_valid_data($data)
{
- foreach ($input as $key => $data)
+ foreach ($data as $key => $test)
{
- $this->test_case->assertEquals($expected[$key], validate_data(array($data), array($validate_check[$key])));
+ $this->test_case->assertEquals($test[0], validate_data(array($test[1]), array($test[2])));
}
}
}
diff --git a/tests/functions/validate_date_test.php b/tests/functions/validate_date_test.php
index e7a279879c..1dcd1361a2 100644
--- a/tests/functions/validate_date_test.php
+++ b/tests/functions/validate_date_test.php
@@ -23,44 +23,60 @@ class phpbb_functions_validate_date_test extends phpbb_test_case
public function test_validate_date()
{
- $this->helper->assert_validate_data(array(
- 'empty' => array('INVALID'),
- 'empty_opt' => array(),
- 'double_single' => array(),
- 'single_single' => array(),
- 'double_double' => array(),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ array('INVALID'),
+ '',
+ array('date'),
+ ),
+ 'empty_opt' => array(
+ array(),
+ '',
+ array('date', true),
+ ),
+ 'double_single' => array(
+ array(),
+ '17-06-1990',
+ array('date'),
+ ),
+ 'single_single' => array(
+ array(),
+ '05-05-2009',
+ array('date'),
+ ),
+ 'double_double' => array(
+ array(),
+ '17-12-1990',
+ array('date'),
+ ),
+ 'month_high' => array(
+ array('INVALID'),
+ '17-17-1990',
+ array('date'),
+ ),
+ 'month_low' => array(
+ array('INVALID'),
+ '01-00-1990',
+ array('date'),
+ ),
+ 'day_high' => array(
+ array('INVALID'),
+ '64-01-1990',
+ array('date'),
+ ),
+ 'day_low' => array(
+ array('INVALID'),
+ '00-12-1990',
+ array('date'),
+ ),
// Currently fails
- //'zero_year' => array(),
- 'month_high' => array('INVALID'),
- 'month_low' => array('INVALID'),
- 'day_high' => array('INVALID'),
- 'day_low' => array('INVALID'),
- ),
- array(
- 'empty' => '',
- 'empty_opt' => '',
- 'double_single' => '17-06-1990',
- 'single_single' => '05-05-2009',
- 'double_double' => '17-12-1990',
- // Currently fails
- //'zero_year' => '01-01-0000',
- 'month_high' => '17-17-1990',
- 'month_low' => '01-00-1990',
- 'day_high' => '64-01-1990',
- 'day_low' => '00-12-1990',
- ),
- array(
- 'empty' => array('date'),
- 'empty_opt' => array('date', true),
- 'double_single' => array('date'),
- 'single_single' => array('date'),
- 'double_double' => array('date'),
- // Currently fails
- //'zero_year' => array('date'),
- 'month_high' => array('date'),
- 'month_low' => array('date'),
- 'day_high' => array('date'),
- 'day_low' => array('date'),
+ /*
+ 'zero_year' => array(
+ array(),
+ '01-01-0000',
+ array('date'),
+ ),
+ */
));
}
}
diff --git a/tests/functions/validate_email_test.php b/tests/functions/validate_email_test.php
index 2e81d3277e..93b5ba0896 100644
--- a/tests/functions/validate_email_test.php
+++ b/tests/functions/validate_email_test.php
@@ -41,32 +41,42 @@ class phpbb_functions_validate_email_test extends phpbb_database_test_case
$user = $this->user;
$user->optionset('banned_users', array('banned@example.com'));
- $this->helper->assert_validate_data(array(
- 'empty' => array(),
- 'allowed' => array(),
- 'invalid' => array('EMAIL_INVALID'),
- 'valid_complex' => array(),
- 'taken' => array('EMAIL_TAKEN'),
- 'banned' => array('EMAIL_BANNED'),
- 'no_mx' => array('DOMAIN_NO_MX_RECORD'),
- ),
- array(
- 'empty' => '',
- 'allowed' => 'foobar@example.com',
- 'invalid' => 'fööbar@example.com',
- 'valid_complex' => "'%$~test@example.com",
- 'taken' => 'admin@example.com',
- 'banned' => 'banned@example.com',
- 'no_mx' => 'test@wwrrrhhghgghgh.ttv',
- ),
- array(
- 'empty' => array('email'),
- 'allowed' => array('email', 'foobar@example.com'),
- 'invalid' => array('email'),
- 'valid_complex' => array('email'),
- 'taken' => array('email'),
- 'banned' => array('email'),
- 'no_mx' => array('email'),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ array(),
+ '',
+ array('email'),
+ ),
+ 'allowed' => array(
+ array(),
+ 'foobar@example.com',
+ array('email', 'foobar@example.com'),
+ ),
+ 'invalid' => array(
+ array('EMAIL_INVALID'),
+ 'fööbar@example.com',
+ array('email'),
+ ),
+ 'valid_complex' => array(
+ array(),
+ "'%$~test@example.com",
+ array('email'),
+ ),
+ 'taken' => array(
+ array('EMAIL_TAKEN'),
+ 'admin@example.com',
+ array('email'),
+ ),
+ 'banned' => array(
+ array('EMAIL_BANNED'),
+ 'banned@example.com',
+ array('email'),
+ ),
+ 'no_mx' => array(
+ array('DOMAIN_NO_MX_RECORD'),
+ 'test@wwrrrhhghgghgh.ttv',
+ array('email'),
+ ),
));
}
}
diff --git a/tests/functions/validate_jabber_test.php b/tests/functions/validate_jabber_test.php
index 551b243f81..5a53c963bd 100644
--- a/tests/functions/validate_jabber_test.php
+++ b/tests/functions/validate_jabber_test.php
@@ -23,41 +23,57 @@ class phpbb_functions_validate_jabber_test extends phpbb_test_case
public function test_validate_jabber()
{
- $this->helper->assert_validate_data(array(
- 'empty' => array(),
- 'no_seperator' => array('WRONG_DATA'),
- 'no_user' => array('WRONG_DATA'),
- 'no_realm' => array('WRONG_DATA'),
- 'dot_realm' => array('WRONG_DATA'),
- '-realm' => array('WRONG_DATA'),
- 'realm-' => array('WRONG_DATA'),
- 'correct' => array(),
- 'prohibited' => array('WRONG_DATA'),
- 'prohibited_char' => array('WRONG_DATA'),
- ),
- array(
- 'empty' => '',
- 'no_seperator' => 'testjabber.ccc',
- 'no_user' => '@jabber.ccc',
- 'no_realm' => 'user@',
- 'dot_realm' => 'user@.....',
- '-realm' => 'user@-jabber.ccc',
- 'realm-' => 'user@jabber.ccc-',
- 'correct' => 'user@jabber.09A-z.org',
- 'prohibited' => 'u@ser@jabber.ccc.org',
- 'prohibited_char' => 'u<s>er@jabber.ccc.org',
- ),
- array(
- 'empty' => array('jabber'),
- 'no_seperator' => array('jabber'),
- 'no_user' => array('jabber'),
- 'no_realm' => array('jabber'),
- 'dot_realm' => array('jabber'),
- '-realm' => array('jabber'),
- 'realm-' => array('jabber'),
- 'correct' => array('jabber'),
- 'prohibited' => array('jabber'),
- 'prohibited_char' => array('jabber'),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ array(),
+ '',
+ array('jabber'),
+ ),
+ 'no_seperator' => array(
+ array('WRONG_DATA'),
+ 'testjabber.ccc',
+ array('jabber'),
+ ),
+ 'no_user' => array(
+ array('WRONG_DATA'),
+ '@jabber.ccc',
+ array('jabber'),
+ ),
+ 'no_realm' => array(
+ array('WRONG_DATA'),
+ 'user@',
+ array('jabber'),
+ ),
+ 'dot_realm' => array(
+ array('WRONG_DATA'),
+ 'user@.....',
+ array('jabber'),
+ ),
+ '-realm' => array(
+ array('WRONG_DATA'),
+ 'user@-jabber.ccc',
+ array('jabber'),
+ ),
+ 'realm-' => array(
+ array('WRONG_DATA'),
+ 'user@jabber.ccc-',
+ array('jabber'),
+ ),
+ 'correct' => array(
+ array(),
+ 'user@jabber.09A-z.org',
+ array('jabber'),
+ ),
+ 'prohibited' => array(
+ array('WRONG_DATA'),
+ 'u@ser@jabber.ccc.org',
+ array('jabber'),
+ ),
+ 'prohibited_char' => array(
+ array('WRONG_DATA'),
+ 'u<s>er@jabber.ccc.org',
+ array('jabber'),
+ ),
));
}
}
diff --git a/tests/functions/validate_lang_iso_test.php b/tests/functions/validate_lang_iso_test.php
index baf75108b7..c8a5b71021 100644
--- a/tests/functions/validate_lang_iso_test.php
+++ b/tests/functions/validate_lang_iso_test.php
@@ -34,23 +34,27 @@ class phpbb_functions_validate_lang_iso_test extends phpbb_database_test_case
$db = $this->db;
- $this->helper->assert_validate_data(array(
- 'empty' => array('WRONG_DATA'),
- 'en' => array(),
- 'cs' => array(),
- 'de' => array('WRONG_DATA'),
- ),
- array(
- 'empty' => '',
- 'en' => 'en',
- 'cs' => 'cs',
- 'de' => 'de',
- ),
- array(
- 'empty' => array('language_iso_name'),
- 'en' => array('language_iso_name'),
- 'cs' => array('language_iso_name'),
- 'de' => array('language_iso_name'),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ array('WRONG_DATA'),
+ '',
+ array('language_iso_name'),
+ ),
+ 'en' => array(
+ array(),
+ 'en',
+ array('language_iso_name'),
+ ),
+ 'cs' => array(
+ array(),
+ 'cs',
+ array('language_iso_name'),
+ ),
+ 'de' => array(
+ array('WRONG_DATA'),
+ 'de',
+ array('language_iso_name'),
+ ),
));
}
}
diff --git a/tests/functions/validate_match_test.php b/tests/functions/validate_match_test.php
index 5d44f1e00b..73a363e003 100644
--- a/tests/functions/validate_match_test.php
+++ b/tests/functions/validate_match_test.php
@@ -23,23 +23,27 @@ class phpbb_functions_validate_match_test extends phpbb_test_case
public function test_validate_match()
{
- $this->helper->assert_validate_data(array(
- 'empty_opt' => array(),
- 'empty_empty_match' => array(),
- 'foobar' => array(),
- 'foobar_fail' => array('WRONG_DATA'),
- ),
- array(
- 'empty_opt' => '',
- 'empty_empty_match' => '',
- 'foobar' => 'foobar',
- 'foobar_fail' => 'foobar123',
- ),
- array(
- 'empty_opt' => array('match', true, '/[a-z]$/'),
- 'empty_empty_match' => array('match'),
- 'foobar' => array('match', false, '/[a-z]$/'),
- 'foobar_fail' => array('match', false, '/[a-z]$/'),
+ $this->helper->assert_valid_data(array(
+ 'empty_opt' => array(
+ array(),
+ '',
+ array('match', true, '/[a-z]$/'),
+ ),
+ 'empty_empty_match' => array(
+ array(),
+ '',
+ array('match'),
+ ),
+ 'foobar' => array(
+ array(),
+ 'foobar',
+ array('match', false, '/[a-z]$/'),
+ ),
+ 'foobar_fail' => array(
+ array('WRONG_DATA'),
+ 'foobar123',
+ array('match', false, '/[a-z]$/'),
+ ),
));
}
}
diff --git a/tests/functions/validate_num_test.php b/tests/functions/validate_num_test.php
index 4e210ba29a..4deac02ebc 100644
--- a/tests/functions/validate_num_test.php
+++ b/tests/functions/validate_num_test.php
@@ -23,29 +23,37 @@ class phpbb_functions_validate_num_test extends phpbb_test_case
public function test_validate_num()
{
- $this->helper->assert_validate_data(array(
- 'empty' => array(),
- 'zero' => array(),
- 'five_minmax_correct' => array(),
- 'five_minmax_short' => array('TOO_SMALL'),
- 'five_minmax_long' => array('TOO_LARGE'),
- 'string' => array(),
- ),
- array(
- 'empty' => '',
- 'zero' => 0,
- 'five_minmax_correct' => 5,
- 'five_minmax_short' => 5,
- 'five_minmax_long' => 5,
- 'string' => 'foobar',
- ),
- array(
- 'empty' => array('num'),
- 'zero' => array('num'),
- 'five_minmax_correct' => array('num', false, 2, 6),
- 'five_minmax_short' => array('num', false, 7, 10),
- 'five_minmax_long' => array('num', false, 2, 3),
- 'string' => array('num'),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ array(),
+ '',
+ array('num'),
+ ),
+ 'zero' => array(
+ array(),
+ '0',
+ array('num'),
+ ),
+ 'five_minmax_correct' => array(
+ array(),
+ '5',
+ array('num', false, 2, 6),
+ ),
+ 'five_minmax_short' => array(
+ array('TOO_SMALL'),
+ '5',
+ array('num', false, 7, 10),
+ ),
+ 'five_minmax_long' => array(
+ array('TOO_LARGE'),
+ '5',
+ array('num', false, 2, 3),
+ ),
+ 'string' => array(
+ array(),
+ 'foobar',
+ array('num'),
+ ),
));
}
}
diff --git a/tests/functions/validate_password_test.php b/tests/functions/validate_password_test.php
index e8dc7e0dea..4639f6cc89 100644
--- a/tests/functions/validate_password_test.php
+++ b/tests/functions/validate_password_test.php
@@ -65,19 +65,32 @@ class phpbb_functions_validate_password_test extends phpbb_test_case
// Set complexity to mixed case letters, numbers and symbols
$config['pass_complex'] = $pass_complexity;
- $this->helper->assert_validate_data($expected, array(
- 'empty' => '',
- 'foobar_any' => 'foobar',
- 'foobar_mixed' => 'FooBar',
- 'foobar_alpha' => 'F00bar',
- 'foobar_symbol' => 'fooBar123*',
- ),
- array(
- 'empty' => array('password'),
- 'foobar_any' => array('password'),
- 'foobar_mixed' => array('password'),
- 'foobar_alpha' => array('password'),
- 'foobar_symbol' => array('password'),
+ $this->helper->assert_valid_data(array(
+ 'empty' => array(
+ $expected['empty'],
+ '',
+ array('password'),
+ ),
+ 'foobar_any' => array(
+ $expected['foobar_any'],
+ 'foobar',
+ array('password'),
+ ),
+ 'foobar_mixed' => array(
+ $expected['foobar_mixed'],
+ 'FooBar',
+ array('password'),
+ ),
+ 'foobar_alpha' => array(
+ $expected['foobar_alpha'],
+ 'F00bar',
+ array('password'),
+ ),
+ 'foobar_symbol' => array(
+ $expected['foobar_symbol'],
+ 'fooBar123*',
+ array('password'),
+ ),
));
}
}
diff --git a/tests/functions/validate_string_test.php b/tests/functions/validate_string_test.php
index 2b4f7321a6..ab44c28541 100644
--- a/tests/functions/validate_string_test.php
+++ b/tests/functions/validate_string_test.php
@@ -24,35 +24,47 @@ class phpbb_functions_validate_string_test extends phpbb_test_case
public function test_validate_string()
{
- $this->helper->assert_validate_data(array(
- 'empty_opt' => array(),
- 'empty' => array(),
- 'foo' => array(),
- 'foo_minmax_correct' => array(),
- 'foo_minmax_short' => array('TOO_SHORT'),
- 'foo_minmax_long' => array('TOO_LONG'),
- 'empty_short' => array('TOO_SHORT'),
- 'empty_length_opt' => array(),
- ),
- array(
- 'empty_opt' => '',
- 'empty' => '',
- 'foo' => 'foobar',
- 'foo_minmax_correct' => 'foobar',
- 'foo_minmax_short' => 'foobar',
- 'foo_minmax_long' => 'foobar',
- 'empty_short' => '',
- 'empty_length_opt' => '',
- ),
- array(
- 'empty_opt' => array('string', true),
- 'empty' => array('string'),
- 'foo' => array('string'),
- 'foo_minmax_correct' => array('string', false, 2, 6),
- 'foo_minmax_short' => array('string', false, 7, 9),
- 'foo_minmax_long' => array('string', false, 2, 5),
- 'empty_short' => array('string', false, 1, 6),
- 'empty_length_opt' => array('string', true, 1, 6),
+ $this->helper->assert_valid_data(array(
+ 'empty_opt' => array(
+ array(),
+ '',
+ array('string', true),
+ ),
+ 'empty' => array(
+ array(),
+ '',
+ array('string'),
+ ),
+ 'foo' => array(
+ array(),
+ 'foobar',
+ array('string'),
+ ),
+ 'foo_minmax_correct' => array(
+ array(),
+ 'foobar',
+ array('string', false, 2, 6),
+ ),
+ 'foo_minmax_short' => array(
+ array('TOO_SHORT'),
+ 'foobar',
+ array('string', false, 7, 9),
+ ),
+ 'foo_minmax_long' => array(
+ array('TOO_LONG'),
+ 'foobar',
+ array('string', false, 2, 5),
+ ),
+ 'empty_short' => array(
+ array('TOO_SHORT'),
+ '',
+ array('string', false, 1, 6),
+ ),
+ 'empty_length_opt' => array(
+ array(),
+ '',
+ array('string', true, 1, 6),
+ ),
));
}
}
diff --git a/tests/functions/validate_username_test.php b/tests/functions/validate_username_test.php
index 92c5ba6ee1..9adfb63812 100644
--- a/tests/functions/validate_username_test.php
+++ b/tests/functions/validate_username_test.php
@@ -129,31 +129,62 @@ class phpbb_functions_validate_data_test extends phpbb_database_test_case
$config['allow_name_chars'] = $allow_name_chars;
- $this->helper->assert_validate_data($expected, array(
- 'foobar_allow' => 'foobar',
- 'foobar_ascii' => 'foobar',
- 'foobar_any' => 'f*~*^=oo_bar1',
- 'foobar_alpha' => 'fo0Bar',
- 'foobar_alpha_spacers' => 'Fo0-[B]_a+ R',
- 'foobar_letter_num' => 'fo0Bar0',
- 'foobar_letter_num_sp' => 'Fö0-[B]_a+ R',
- 'foobar_quot' => '"foobar"',
- 'barfoo_disallow' => 'barfoo',
- 'admin_taken' => 'admin',
- 'group_taken' => 'foobar_group',
- ),
- array(
- 'foobar_allow' => array('username', 'foobar'),
- 'foobar_ascii' => array('username'),
- 'foobar_any' => array('username'),
- 'foobar_alpha' => array('username'),
- 'foobar_alpha_spacers' => array('username'),
- 'foobar_letter_num' => array('username'),
- 'foobar_letter_num_sp' => array('username'),
- 'foobar_quot' => array('username'),
- 'barfoo_disallow' => array('username'),
- 'admin_taken' => array('username'),
- 'group_taken' => array('username'),
+ $this->helper->assert_valid_data(array(
+ 'foobar_allow' => array(
+ $expected['foobar_allow'],
+ 'foobar',
+ array('username', 'foobar'),
+ ),
+ 'foobar_ascii' => array(
+ $expected['foobar_ascii'],
+ 'foobar',
+ array('username'),
+ ),
+ 'foobar_any' => array(
+ $expected['foobar_any'],
+ 'f*~*^=oo_bar1',
+ array('username'),
+ ),
+ 'foobar_alpha' => array(
+ $expected['foobar_alpha'],
+ 'fo0Bar',
+ array('username'),
+ ),
+ 'foobar_alpha_spacers' => array(
+ $expected['foobar_alpha_spacers'],
+ 'Fo0-[B]_a+ R',
+ array('username'),
+ ),
+ 'foobar_letter_num' => array(
+ $expected['foobar_letter_num'],
+ 'fo0Bar0',
+ array('username'),
+ ),
+ 'foobar_letter_num_sp' => array(
+ $expected['foobar_letter_num_sp'],
+ 'Fö0-[B]_a+ R',
+ array('username'),
+ ),
+ 'foobar_quot' => array(
+ $expected['foobar_quot'],
+ '"foobar"',
+ array('username'),
+ ),
+ 'barfoo_disallow' => array(
+ $expected['barfoo_disallow'],
+ 'barfoo',
+ array('username'),
+ ),
+ 'admin_taken' => array(
+ $expected['admin_taken'],
+ 'admin',
+ array('username'),
+ ),
+ 'group_taken' => array(
+ $expected['group_taken'],
+ 'foobar_group',
+ array('username'),
+ ),
));
}
}