diff options
| author | Nathan Guse <nathaniel.guse@gmail.com> | 2013-06-24 13:49:29 -0500 |
|---|---|---|
| committer | Nathan Guse <nathaniel.guse@gmail.com> | 2013-06-24 13:49:29 -0500 |
| commit | ff84aed0b2e5bb2def73a1861e601ad9fb8856df (patch) | |
| tree | 22ffb4b331619cfb96002b526c6b45b3fc297332 /tests/functions/validate_password_test.php | |
| parent | 2dd58413e26434568bd768549e621e72b5ccb33c (diff) | |
| parent | a5c971176be81f854772919713da6db506fa7cd1 (diff) | |
| download | forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.gz forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.bz2 forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.xz forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.zip | |
Merge branch 'develop' of github.com:phpbb/phpbb3 into feature/twig
# By Dhruv (35) and others
# Via Andreas Fischer (15) and others
* 'develop' of github.com:phpbb/phpbb3: (75 commits)
[ticket/10776] update min php version 5.3.3 in readme
[ticket/11503] similar implementation for mssql_native and odbc
[ticket/11603] Fix out dated comment
[ticket/11603] Fix usage note
[ticket/11604] Skip installer step where config.php is created.
[ticket/11603] Throw RuntimeExceptions instead of using exit()
[ticket/11603] Avoid using cURL
[ticket/11604] Fix case where config.php is not generated by phpBB.
[ticket/11604] Use variables for config.php filesnames.
[ticket/11561] Specify used tables in notification fixture, so they are emptied
[ticket/11094] Add textbox for jabber while memberlist search
[ticket/10820] fix if condition to check for IE
[ticket/11603] Split api_request into two functions (query only vs. full url)
[ticket/11603] Fix spacing and add some comments
[ticket/10820] Add additional check for IE in condition
[ticket/11603] Fix github API calls
[ticket/11603] Rename network to forks and fix handling
[ticket/11603] Fix github api url and use curl with valid user agent
[ticket/10820] Fix function docblock
[ticket/10820] Inject IE version in function
...
Diffstat (limited to 'tests/functions/validate_password_test.php')
| -rw-r--r-- | tests/functions/validate_password_test.php | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/tests/functions/validate_password_test.php b/tests/functions/validate_password_test.php new file mode 100644 index 0000000000..4639f6cc89 --- /dev/null +++ b/tests/functions/validate_password_test.php @@ -0,0 +1,96 @@ +<?php +/** +* +* @package testing +* @copyright (c) 2013 phpBB Group +* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 +* +*/ + +require_once dirname(__FILE__) . '/../../phpBB/includes/functions_user.php'; +require_once dirname(__FILE__) . '/validate_data_helper.php'; + +class phpbb_functions_validate_password_test extends phpbb_test_case +{ + protected $helper; + + protected function setUp() + { + parent::setUp(); + + $this->helper = new phpbb_functions_validate_data_helper($this); + } + + public function validate_password_data() + { + return array( + array('PASS_TYPE_ANY', array( + 'empty' => array(), + 'foobar_any' => array(), + 'foobar_mixed' => array(), + 'foobar_alpha' => array(), + 'foobar_symbol' => array(), + )), + array('PASS_TYPE_CASE', array( + 'empty' => array(), + 'foobar_any' => array('INVALID_CHARS'), + 'foobar_mixed' => array(), + 'foobar_alpha' => array(), + 'foobar_symbol' => array(), + )), + array('PASS_TYPE_ALPHA', array( + 'empty' => array(), + 'foobar_any' => array('INVALID_CHARS'), + 'foobar_mixed' => array('INVALID_CHARS'), + 'foobar_alpha' => array(), + 'foobar_symbol' => array(), + )), + array('PASS_TYPE_SYMBOL', array( + 'empty' => array(), + 'foobar_any' => array('INVALID_CHARS'), + 'foobar_mixed' => array('INVALID_CHARS'), + 'foobar_alpha' => array('INVALID_CHARS'), + 'foobar_symbol' => array(), + )), + ); + } + + /** + * @dataProvider validate_password_data + */ + public function test_validate_password($pass_complexity, $expected) + { + global $config; + + // Set complexity to mixed case letters, numbers and symbols + $config['pass_complex'] = $pass_complexity; + + $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'), + ), + )); + } +} |
