aboutsummaryrefslogtreecommitdiffstats
path: root/tests/functional/forum_password_test.php
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2014-02-02 06:26:35 -0800
committerNils Adermann <naderman@naderman.de>2014-02-02 06:26:35 -0800
commitf8d6a07392f73bc7b85418a60047d761661a7657 (patch)
treecfefda4a9dab1019c9e6fad96c8055cec5b03c9e /tests/functional/forum_password_test.php
parentcb04252fbd17ac718c09ecc44dab4c7627a98b35 (diff)
parentb094c7999660703370566018bf449a9280148b8d (diff)
downloadforums-f8d6a07392f73bc7b85418a60047d761661a7657.tar
forums-f8d6a07392f73bc7b85418a60047d761661a7657.tar.gz
forums-f8d6a07392f73bc7b85418a60047d761661a7657.tar.bz2
forums-f8d6a07392f73bc7b85418a60047d761661a7657.tar.xz
forums-f8d6a07392f73bc7b85418a60047d761661a7657.zip
Merge pull request #1716 from marc1706/feature/passwords
[feature/passwords] Add password hashing manager with support for newer hashing algorithms
Diffstat (limited to 'tests/functional/forum_password_test.php')
-rw-r--r--tests/functional/forum_password_test.php55
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/functional/forum_password_test.php b/tests/functional/forum_password_test.php
new file mode 100644
index 0000000000..40a8059ad1
--- /dev/null
+++ b/tests/functional/forum_password_test.php
@@ -0,0 +1,55 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2013 phpBB Group
+* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+*
+*/
+
+/**
+* @group functional
+*/
+class phpbb_functional_forum_password_test extends phpbb_functional_test_case
+{
+ public function test_setup_forum_with_password()
+ {
+ $this->login();
+ $this->admin_login();
+
+ $crawler = self::request('GET', "adm/index.php?i=acp_forums&mode=manage&sid={$this->sid}");
+ $form = $crawler->selectButton('addforum')->form(array(
+ 'forum_name' => 'Password protected',
+ ));
+ $crawler = self::submit($form);
+ $form = $crawler->selectButton('update')->form(array(
+ 'forum_perm_from' => 2,
+ 'forum_password' => 'foobar',
+ 'forum_password_confirm' => 'foobar',
+ ));
+ $crawler = self::submit($form);
+ }
+
+ public function data_enter_forum_with_password()
+ {
+ return array(
+ array('foowrong', 'WRONG_PASSWORD'),
+ array('foobar', 'NO_TOPICS'),
+ );
+ }
+
+ /**
+ * @dataProvider data_enter_forum_with_password
+ */
+ public function test_enter_forum_with_password($password, $message)
+ {
+ $crawler = self::request('GET', "index.php?sid={$this->sid}");
+ preg_match('/.?f=([0-9])/', $crawler->selectLink('Password protected')->link()->getUri(), $match);
+ $crawler = self::request('GET', "viewforum.php?f={$match[1]}&sid={$this->sid}");
+ $form = $crawler->selectButton('login')->form(array(
+ 'password' => $password,
+ ));
+ $crawler = self::submit($form);
+ $this->assertContainsLang($message, $crawler->text());
+ }
+}