aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/functions/validate_data_helper.php (renamed from tests/functions/common_validate_data.php)19
-rw-r--r--tests/functions/validate_data_simple_test.php119
-rw-r--r--tests/functions/validate_email_test.php26
-rw-r--r--tests/functions/validate_lang_iso_test.php20
-rw-r--r--tests/functions/validate_username_test.php11
5 files changed, 100 insertions, 95 deletions
diff --git a/tests/functions/common_validate_data.php b/tests/functions/validate_data_helper.php
index 64c9499ac3..b8e8bfded3 100644
--- a/tests/functions/common_validate_data.php
+++ b/tests/functions/validate_data_helper.php
@@ -7,25 +7,32 @@
*
*/
-class phpbb_functions_common_validate_data extends phpbb_test_case
+class phpbb_functions_validate_data_helper extends PHPUnit_Framework_TestCase
{
+ protected $test_case;
+
+ public function __construct($test_case)
+ {
+ $this->test_case = $test_case;
+ }
+
/**
* 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 $expected Array containing the expected results. Either
- * an array containing the error message or the an empty
- * array if input is correct
*/
- public function validate_data_check($input, $validate_check, $expected)
+ public function assert_validate_data($expected, $input, $validate_check)
{
foreach ($input as $key => $data)
{
- $this->assertEquals($expected[$key], validate_data(array($data), array($validate_check[$key])));
+ $this->test_case->assertEquals($expected[$key], validate_data(array($data), array($validate_check[$key])));
}
}
}
diff --git a/tests/functions/validate_data_simple_test.php b/tests/functions/validate_data_simple_test.php
index 002b1f2298..db4f218eed 100644
--- a/tests/functions/validate_data_simple_test.php
+++ b/tests/functions/validate_data_simple_test.php
@@ -9,22 +9,32 @@
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_user.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/utf/utf_tools.php';
-require_once dirname(__FILE__) . '/common_validate_data.php';
+require_once dirname(__FILE__) . '/validate_data_helper.php';
class phpbb_functions_validate_data_simple_test extends phpbb_test_case
{
- protected $common;
+ protected $helper;
protected function setUp()
{
parent::setUp();
- $this->common = new phpbb_functions_common_validate_data;
+ $this->helper = new phpbb_functions_validate_data_helper($this);
}
public function test_validate_string()
{
- $this->common->validate_data_check(array(
+ $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',
@@ -43,22 +53,20 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'foo_minmax_long' => array('string', false, 2, 5),
'empty_short' => array('string', false, 1, 6),
'empty_length_opt' => array('string', true, 1, 6),
- ),
- 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(),
));
}
public function test_validate_num()
{
- $this->common->validate_data_check(array(
+ $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,
@@ -73,20 +81,25 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'five_minmax_short' => array('num', false, 7, 10),
'five_minmax_long' => array('num', false, 2, 3),
'string' => array('num'),
- ),
- array(
- 'empty' => array(),
- 'zero' => array(),
- 'five_minmax_correct' => array(),
- 'five_minmax_short' => array('TOO_SMALL'),
- 'five_minmax_long' => array('TOO_LARGE'),
- 'string' => array(),
));
}
public function test_validate_date()
{
- $this->common->validate_data_check(array(
+ $this->helper->assert_validate_data(array(
+ 'empty' => array('INVALID'),
+ 'empty_opt' => array(),
+ 'double_single' => array(),
+ 'single_single' => array(),
+ 'double_double' => array(),
+ // 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',
@@ -111,25 +124,18 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'month_low' => array('date'),
'day_high' => array('date'),
'day_low' => array('date'),
- ),
- array(
- 'empty' => array('INVALID'),
- 'empty_opt' => array(),
- 'double_single' => array(),
- 'single_single' => array(),
- 'double_double' => array(),
- // Currently fails
- //'zero_year' => array(),
- 'month_high' => array('INVALID'),
- 'month_low' => array('INVALID'),
- 'day_high' => array('INVALID'),
- 'day_low' => array('INVALID'),
));
}
public function test_validate_match()
{
- $this->common->validate_data_check(array(
+ $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',
@@ -140,12 +146,6 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'empty_empty_match' => array('match'),
'foobar' => array('match', false, '/[a-z]$/'),
'foobar_fail' => array('match', false, '/[a-z]$/'),
- ),
- array(
- 'empty_opt' => array(),
- 'empty_empty_match' => array(),
- 'foobar' => array(),
- 'foobar_fail' => array('WRONG_DATA'),
));
}
@@ -193,7 +193,7 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
// Set complexity to mixed case letters, numbers and symbols
$config['pass_complex'] = $pass_complexity;
- $this->common->validate_data_check(array(
+ $this->helper->assert_validate_data($expected, array(
'empty' => '',
'foobar_any' => 'foobar',
'foobar_mixed' => 'FooBar',
@@ -206,13 +206,24 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'foobar_mixed' => array('password'),
'foobar_alpha' => array('password'),
'foobar_symbol' => array('password'),
- ),
- $expected);
+ ));
}
public function test_validate_jabber()
{
- $this->common->validate_data_check(array(
+ $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',
@@ -235,18 +246,6 @@ class phpbb_functions_validate_data_simple_test extends phpbb_test_case
'correct' => array('jabber'),
'prohibited' => array('jabber'),
'prohibited_char' => array('jabber'),
- ),
- 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'),
));
}
}
diff --git a/tests/functions/validate_email_test.php b/tests/functions/validate_email_test.php
index 47aa37e11f..2e81d3277e 100644
--- a/tests/functions/validate_email_test.php
+++ b/tests/functions/validate_email_test.php
@@ -10,13 +10,13 @@
require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_user.php';
require_once dirname(__FILE__) . '/../mock/user.php';
-require_once dirname(__FILE__) . '/common_validate_data.php';
+require_once dirname(__FILE__) . '/validate_data_helper.php';
class phpbb_functions_validate_email_test extends phpbb_database_test_case
{
protected $db;
protected $user;
- protected $common;
+ protected $helper;
public function getDataSet()
{
@@ -29,7 +29,7 @@ class phpbb_functions_validate_email_test extends phpbb_database_test_case
$this->db = $this->new_dbal();
$this->user = new phpbb_mock_user;
- $this->common = new phpbb_functions_common_validate_data;
+ $this->helper = new phpbb_functions_validate_data_helper($this);
}
public function test_validate_email()
@@ -41,7 +41,16 @@ class phpbb_functions_validate_email_test extends phpbb_database_test_case
$user = $this->user;
$user->optionset('banned_users', array('banned@example.com'));
- $this->common->validate_data_check(array(
+ $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',
@@ -58,15 +67,6 @@ class phpbb_functions_validate_email_test extends phpbb_database_test_case
'taken' => array('email'),
'banned' => array('email'),
'no_mx' => array('email'),
- ),
- 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'),
));
}
}
diff --git a/tests/functions/validate_lang_iso_test.php b/tests/functions/validate_lang_iso_test.php
index b8a1827432..baf75108b7 100644
--- a/tests/functions/validate_lang_iso_test.php
+++ b/tests/functions/validate_lang_iso_test.php
@@ -8,12 +8,12 @@
*/
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_user.php';
-require_once dirname(__FILE__) . '/common_validate_data.php';
+require_once dirname(__FILE__) . '/validate_data_helper.php';
class phpbb_functions_validate_lang_iso_test extends phpbb_database_test_case
{
protected $db;
- protected $common;
+ protected $helper;
public function getDataSet()
{
@@ -25,7 +25,7 @@ class phpbb_functions_validate_lang_iso_test extends phpbb_database_test_case
parent::setUp();
$this->db = $this->new_dbal();
- $this->common = new phpbb_functions_common_validate_data;
+ $this->helper = new phpbb_functions_validate_data_helper($this);
}
public function test_validate_lang_iso()
@@ -34,7 +34,13 @@ class phpbb_functions_validate_lang_iso_test extends phpbb_database_test_case
$db = $this->db;
- $this->common->validate_data_check(array(
+ $this->helper->assert_validate_data(array(
+ 'empty' => array('WRONG_DATA'),
+ 'en' => array(),
+ 'cs' => array(),
+ 'de' => array('WRONG_DATA'),
+ ),
+ array(
'empty' => '',
'en' => 'en',
'cs' => 'cs',
@@ -45,12 +51,6 @@ class phpbb_functions_validate_lang_iso_test extends phpbb_database_test_case
'en' => array('language_iso_name'),
'cs' => array('language_iso_name'),
'de' => array('language_iso_name'),
- ),
- array(
- 'empty' => array('WRONG_DATA'),
- 'en' => array(),
- 'cs' => array(),
- 'de' => array('WRONG_DATA'),
));
}
}
diff --git a/tests/functions/validate_username_test.php b/tests/functions/validate_username_test.php
index 656248cec3..92c5ba6ee1 100644
--- a/tests/functions/validate_username_test.php
+++ b/tests/functions/validate_username_test.php
@@ -10,13 +10,13 @@
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_user.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/utf/utf_tools.php';
require_once dirname(__FILE__) . '/../mock/cache.php';
-require_once dirname(__FILE__) . '/common_validate_data.php';
+require_once dirname(__FILE__) . '/validate_data_helper.php';
class phpbb_functions_validate_data_test extends phpbb_database_test_case
{
protected $db;
protected $cache;
- protected $common;
+ protected $helper;
public function getDataSet()
{
@@ -29,7 +29,7 @@ class phpbb_functions_validate_data_test extends phpbb_database_test_case
$this->db = $this->new_dbal();
$this->cache = new phpbb_mock_cache;
- $this->common = new phpbb_functions_common_validate_data;
+ $this->helper = new phpbb_functions_validate_data_helper($this);
}
public function validate_username_data()
@@ -129,7 +129,7 @@ class phpbb_functions_validate_data_test extends phpbb_database_test_case
$config['allow_name_chars'] = $allow_name_chars;
- $this->common->validate_data_check(array(
+ $this->helper->assert_validate_data($expected, array(
'foobar_allow' => 'foobar',
'foobar_ascii' => 'foobar',
'foobar_any' => 'f*~*^=oo_bar1',
@@ -154,7 +154,6 @@ class phpbb_functions_validate_data_test extends phpbb_database_test_case
'barfoo_disallow' => array('username'),
'admin_taken' => array('username'),
'group_taken' => array('username'),
- ),
- $expected);
+ ));
}
}