diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2015-04-06 11:09:20 +0200 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2015-04-06 11:09:20 +0200 |
commit | 3af61075a8f7a82d00bd98b508a48d1396ab76de (patch) | |
tree | 1600ebb5bb037d2bc49f8e5fb99deb80ea6dc6f8 /tests | |
parent | 197369e3f9c5d8468add1e8f22a53c1976dac61e (diff) | |
parent | 009a8cb2d594f170a46cba1a1937c2da20e1825e (diff) | |
download | forums-3af61075a8f7a82d00bd98b508a48d1396ab76de.tar forums-3af61075a8f7a82d00bd98b508a48d1396ab76de.tar.gz forums-3af61075a8f7a82d00bd98b508a48d1396ab76de.tar.bz2 forums-3af61075a8f7a82d00bd98b508a48d1396ab76de.tar.xz forums-3af61075a8f7a82d00bd98b508a48d1396ab76de.zip |
Merge branch '3.1.x'
Conflicts:
phpBB/phpbb/captcha/plugins/qa.php
Diffstat (limited to 'tests')
-rw-r--r-- | tests/captcha/qa_test.php | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/tests/captcha/qa_test.php b/tests/captcha/qa_test.php new file mode 100644 index 0000000000..1f2f9f3070 --- /dev/null +++ b/tests/captcha/qa_test.php @@ -0,0 +1,94 @@ +<?php +/** + * + * This file is part of the phpBB Forum Software package. + * + * @copyright (c) phpBB Limited <https://www.phpbb.com> + * @license GNU General Public License, version 2 (GPL-2.0) + * + * For full copyright and license information, please see + * the docs/CREDITS.txt file. + * + */ + +require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php'; + +class phpbb_captcha_qa_test extends \phpbb_database_test_case +{ + protected $request; + + /** @var \phpbb\captcha\plugins\qa */ + protected $qa; + + public function getDataSet() + { + return $this->createXMLDataSet(dirname(__FILE__) . '/../fixtures/empty.xml'); + } + + public function setUp() + { + global $db; + + $db = $this->new_dbal(); + + parent::setUp(); + + $this->request = new \phpbb_mock_request(); + request_var(false, false, false, false, $this->request); + $this->qa = new \phpbb\captcha\plugins\qa('phpbb_captcha_questions', 'phpbb_captcha_answers', 'phpbb_qa_confirm'); + } + + public function test_is_installed() + { + $this->assertFalse($this->qa->is_installed()); + + $this->qa->install(); + + $this->assertTrue($this->qa->is_installed()); + } + + public function test_set_get_name() + { + $this->assertNull($this->qa->get_service_name()); + $this->qa->set_name('foobar'); + $this->assertSame('foobar', $this->qa->get_service_name()); + } + + public function data_acp_get_question_input() + { + return array( + array("foobar\ntest\nyes", array( + 'question_text' => '', + 'strict' => false, + 'lang_iso' => '', + 'answers' => array('foobar', 'test', 'yes') + )), + array("foobar\ntest\n \nyes", array( + 'question_text' => '', + 'strict' => false, + 'lang_iso' => '', + 'answers' => array( + 0 => 'foobar', + 1 => 'test', + 3 => 'yes', + ) + )), + array('', array( + 'question_text' => '', + 'strict' => false, + 'lang_iso' => '', + 'answers' => '', + )), + ); + } + + /** + * @dataProvider data_acp_get_question_input + */ + public function test_acp_get_question_input($value, $expected) + { + $this->request->overwrite('answers', $value); + + $this->assertEquals($expected, $this->qa->acp_get_question_input()); + } +} |