diff options
author | JoshyPHP <s9e.dev@gmail.com> | 2015-05-01 05:15:56 +0200 |
---|---|---|
committer | JoshyPHP <s9e.dev@gmail.com> | 2015-05-30 17:26:00 +0200 |
commit | de52580a78bcab47a2311f3993fd9952f963d563 (patch) | |
tree | 1d06c842d581994789109b090f54ce5f59ee2dd3 /tests/text_reparser | |
parent | 073f3e6fdc5af190db85b6cdefd418af4312af9f (diff) | |
download | forums-de52580a78bcab47a2311f3993fd9952f963d563.tar forums-de52580a78bcab47a2311f3993fd9952f963d563.tar.gz forums-de52580a78bcab47a2311f3993fd9952f963d563.tar.bz2 forums-de52580a78bcab47a2311f3993fd9952f963d563.tar.xz forums-de52580a78bcab47a2311f3993fd9952f963d563.zip |
[ticket/13803] WIP implementation
PHPBB3-13803
Diffstat (limited to 'tests/text_reparser')
-rw-r--r-- | tests/text_reparser/fixtures/posts.xml | 19 | ||||
-rw-r--r-- | tests/text_reparser/posttext_test.php | 67 |
2 files changed, 86 insertions, 0 deletions
diff --git a/tests/text_reparser/fixtures/posts.xml b/tests/text_reparser/fixtures/posts.xml new file mode 100644 index 0000000000..6485293361 --- /dev/null +++ b/tests/text_reparser/fixtures/posts.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<dataset> + <table name="phpbb_posts"> + <column>post_id</column> + <column>enable_bbcode</column> + <column>enable_smilies</column> + <column>enable_magic_url</column> + <column>post_text</column> + <column>bbcode_uid</column> + <row> + <value>1</value> + <value>1</value> + <value>1</value> + <value>1</value> + <value>Plain text</value> + <value>abcd1234</value> + </row> + </table> +</dataset> diff --git a/tests/text_reparser/posttext_test.php b/tests/text_reparser/posttext_test.php new file mode 100644 index 0000000000..4dec53dc63 --- /dev/null +++ b/tests/text_reparser/posttext_test.php @@ -0,0 +1,67 @@ +<?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 __DIR__ . '/../../phpBB/includes/functions.php'; +require_once __DIR__ . '/../../phpBB/includes/functions_content.php'; +require_once __DIR__ . '/../test_framework/phpbb_database_test_case.php'; + +class phpbb_textreparser_posttext_test extends phpbb_database_test_case +{ + public function setUp() + { + global $config; + if (!isset($config)) + { + $config = new \phpbb\config\config(array()); + } + $this->get_test_case_helpers()->set_s9e_services(); + parent::setUp(); + } + + public function getDataSet() + { + return $this->createXMLDataSet(__DIR__ . '/fixtures/posts.xml'); + } + + /** + * @dataProvider getReparseTests + */ + public function testReparse($min_id, $max_id, $expected) + { + $db = $this->new_dbal(); + $reparser = new \phpbb\textreparser\posttext($db); + $reparser->reparse_range($min_id, $max_id); + $sql = 'SELECT post_id, post_text + FROM ' . POSTS_TABLE . " + WHERE post_id BETWEEN $min_id AND $max_id"; + $result = $db->sql_query($sql); + $rows = $db->sql_fetchrowset($result); + $db->sql_freeresult($result); + $this->assertEquals($expected, $rows); + } + + public function getReparseTests() + { + return array( + array( + 1, + 1, + array( + array( + 'post_id' => 1, + 'post_text' => '<t>Plain text</t>' + ) + ) + ), + ); + } +} |