diff options
| author | Nathaniel Guse <nathaniel.guse@gmail.com> | 2012-12-12 16:30:50 -0600 |
|---|---|---|
| committer | Nathaniel Guse <nathaniel.guse@gmail.com> | 2012-12-12 16:30:50 -0600 |
| commit | 7ae5b62fc68017b6bdd5e55c9641e92a86a1f487 (patch) | |
| tree | 54e156815f13c40e9b880712de32ae13728ffdae /tests/test_framework | |
| parent | 84284a9ccee7d5ccc658c3d1f751a5254b3b9175 (diff) | |
| parent | 9420647c43b300699afe6fe72f09d1746daf64a2 (diff) | |
| download | forums-7ae5b62fc68017b6bdd5e55c9641e92a86a1f487.tar forums-7ae5b62fc68017b6bdd5e55c9641e92a86a1f487.tar.gz forums-7ae5b62fc68017b6bdd5e55c9641e92a86a1f487.tar.bz2 forums-7ae5b62fc68017b6bdd5e55c9641e92a86a1f487.tar.xz forums-7ae5b62fc68017b6bdd5e55c9641e92a86a1f487.zip | |
Merge branch 'develop' of git://github.com/phpbb/phpbb3 into ticket/11103
Diffstat (limited to 'tests/test_framework')
| -rw-r--r-- | tests/test_framework/phpbb_functional_test_case.php | 60 |
1 files changed, 58 insertions, 2 deletions
diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 16e1ccaff9..6536ad8807 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -231,7 +231,61 @@ class phpbb_functional_test_case extends phpbb_test_case $db_conn_mgr->recreate_db(); } - protected function login() + /** + * Creates a new user with limited permissions + * + * @param string $username Also doubles up as the user's password + * @return int ID of created user + */ + protected function create_user($username) + { + // Required by unique_id + global $config; + + if (!is_array($config)) + { + $config = array(); + } + + $config['rand_seed'] = ''; + $config['rand_seed_last_update'] = time() + 600; + + // Required by user_add + global $db, $cache, $config, $phpbb_dispatcher; + $db = $this->get_db(); + if (!function_exists('phpbb_mock_null_cache')) + { + require_once(__DIR__ . '/../mock/null_cache.php'); + } + $cache = new phpbb_mock_null_cache; + + if (!function_exists('utf_clean_string')) + { + require_once(__DIR__ . '/../../phpBB/includes/utf/utf_tools.php'); + } + if (!function_exists('user_add')) + { + require_once(__DIR__ . '/../../phpBB/includes/functions_user.php'); + } + $config = new phpbb_config(array()); + set_config(null, null, null, $config); + set_config_count(null, null, null, $config); + $phpbb_dispatcher = new phpbb_mock_event_dispatcher(); + + $user_row = array( + 'username' => $username, + 'group_id' => 2, + 'user_email' => 'nobody@example.com', + 'user_type' => 0, + 'user_lang' => 'en', + 'user_timezone' => 0, + 'user_dateformat' => '', + 'user_password' => phpbb_hash($username), + ); + return user_add($user_row); + } + + protected function login($username = 'admin') { $this->add_lang('ucp'); @@ -239,7 +293,9 @@ class phpbb_functional_test_case extends phpbb_test_case $this->assertContains($this->lang('LOGIN_EXPLAIN_UCP'), $crawler->filter('html')->text()); $form = $crawler->selectButton($this->lang('LOGIN'))->form(); - $login = $this->client->submit($form, array('username' => 'admin', 'password' => 'admin')); + $crawler = $this->client->submit($form, array('username' => $username, 'password' => $username)); + $this->assert_response_success(); + $this->assertContains($this->lang('LOGIN_REDIRECT'), $crawler->filter('html')->text()); $cookies = $this->cookieJar->all(); |
