diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2014-10-17 14:50:14 +0200 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2014-10-17 14:50:14 +0200 |
commit | f847a1a5677fed238a40156139468a5830d8b729 (patch) | |
tree | b31f5d47d1898b0160e529d8b370a92f95fbd11d /tests/session | |
parent | 55b97ffc2759c2cf2a38cff926d889953778e3dd (diff) | |
download | forums-f847a1a5677fed238a40156139468a5830d8b729.tar forums-f847a1a5677fed238a40156139468a5830d8b729.tar.gz forums-f847a1a5677fed238a40156139468a5830d8b729.tar.bz2 forums-f847a1a5677fed238a40156139468a5830d8b729.tar.xz forums-f847a1a5677fed238a40156139468a5830d8b729.zip |
[ticket/13138] Fix the session key tests
PHPBB3-13138
Diffstat (limited to 'tests/session')
-rw-r--r-- | tests/session/session_key_test.php | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/tests/session/session_key_test.php b/tests/session/session_key_test.php index 31a470615c..bf3dfcaa3c 100644 --- a/tests/session/session_key_test.php +++ b/tests/session/session_key_test.php @@ -11,6 +11,7 @@ * */ +require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php'; require_once dirname(__FILE__) . '/../test_framework/phpbb_session_test_case.php'; class phpbb_session_login_keys_test extends phpbb_session_test_case @@ -28,13 +29,14 @@ class phpbb_session_login_keys_test extends phpbb_session_test_case // With AutoLogin setup $this->session_factory->merge_config_data(array('allow_autologin' => true)); $session = $this->session_factory->get_session($this->db); + // Using a user_id and key that is already in the database $session->cookie_data['u'] = $this->user_id; $session->cookie_data['k'] = $this->key_id; - // Try to access session - $session->session_create($this->user_id, false, $this->user_id); - $this->assertEquals($this->user_id, $session->data['user_id'], "session should automatically login"); + // Try to access session with the session key + $session->session_create(false, false, false); + $this->assertEquals($this->user_id, $session->data['user_id'], 'User should be logged in by the session key'); } public function test_reset_keys() @@ -42,14 +44,19 @@ class phpbb_session_login_keys_test extends phpbb_session_test_case // With AutoLogin setup $this->session_factory->merge_config_data(array('allow_autologin' => true)); $session = $this->session_factory->get_session($this->db); + // Reset of the keys for this user $session->reset_login_keys($this->user_id); + // Using a user_id and key that was in the database (before reset) $session->cookie_data['u'] = $this->user_id; $session->cookie_data['k'] = $this->key_id; - // Try to access session - $session->session_create($this->user_id, false, $this->user_id); - $this->assertNotEquals($this->user_id, $session->data['user_id'], "session should be cleared"); + // Try to access session with the session key + $session->session_create(false, false, $this->user_id); + $this->assertNotEquals($this->user_id, $session->data['user_id'], 'User is not logged in because the session key is invalid'); + + $session->session_create($this->user_id, false, false); + $this->assertEquals($this->user_id, $session->data['user_id'], 'User should be logged in because we create a new session'); } } |