* @license GNU General Public License, version 2 (GPL-2.0) * * For full copyright and license information, please see * the docs/CREDITS.txt file. * */ class phpbb_text_processing_generate_text_for_edit_test extends phpbb_test_case { /** * @dataProvider get_legacy_tests */ public function test_legacy($original, $expected, $uid = '', $flags = 0) { global $cache, $user, $phpbb_dispatcher; $cache = new phpbb_mock_cache; $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $user = new phpbb_mock_user; $user->optionset('viewcensors', false); $return = generate_text_for_edit($original, $uid, $flags); $this->assertSame($expected, $return['text']); } public function get_legacy_tests() { return array( array( '', '' ), array( '0', '0' ), array( 'Hello [url=http://example.org:1f4coh9x]world[/url:1f4coh9x] :)', 'Hello [url=http://example.org]world[/url] :)', '1f4coh9x', 0 ), array( "&<>"'", "&<>"'" ) ); } /** * @dataProvider get_text_formatter_tests */ public function test_text_formatter($original, $expected) { global $phpbb_dispatcher; $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $this->get_test_case_helpers()->set_s9e_services(); $return = generate_text_for_edit($original, '', 0); $this->assertSame($expected, $return['text']); } public function get_text_formatter_tests() { return array( array( 'Plain text', 'Plain text' ), array( 'Hello [url=http://example.org]world[/url] :)', 'Hello [url=http://example.org]world[/url] :)' ), array( '&<>"\'', "&<>"'" ) ); } }