aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshyPHP <s9e.dev@gmail.com>2015-03-23 21:34:49 +0100
committerJoshyPHP <s9e.dev@gmail.com>2015-04-02 19:16:04 +0200
commit37fedc656fbdeb36b098375201042eed4c7e7229 (patch)
tree16ad1ad23c38c89801ac8a1c09bc305e8b0844c4
parent5b2d3fddfda75bcc212c8b9c88ab0d9ccc28b1d5 (diff)
downloadforums-37fedc656fbdeb36b098375201042eed4c7e7229.tar
forums-37fedc656fbdeb36b098375201042eed4c7e7229.tar.gz
forums-37fedc656fbdeb36b098375201042eed4c7e7229.tar.bz2
forums-37fedc656fbdeb36b098375201042eed4c7e7229.tar.xz
forums-37fedc656fbdeb36b098375201042eed4c7e7229.zip
[ticket/11768] Updated the text_formatter.s9e.utils service
Made it use s9e\TextFormatter\Utils. Refactored some tests to make them more readable. PHPBB3-11768
-rw-r--r--phpBB/phpbb/textformatter/s9e/utils.php17
-rw-r--r--tests/text_formatter/s9e/utils_test.php37
2 files changed, 16 insertions, 38 deletions
diff --git a/phpBB/phpbb/textformatter/s9e/utils.php b/phpBB/phpbb/textformatter/s9e/utils.php
index df4ae4b9ec..29dcfcdf58 100644
--- a/phpBB/phpbb/textformatter/s9e/utils.php
+++ b/phpBB/phpbb/textformatter/s9e/utils.php
@@ -26,7 +26,7 @@ class utils implements \phpbb\textformatter\utils_interface
// Insert a space before <s> and <e> then remove formatting
$text = preg_replace('#<[es]>#', ' $0', $text);
- return \s9e\TextFormatter\Unparser::removeFormatting($text);
+ return \s9e\TextFormatter\Utils::removeFormatting($text);
}
/**
@@ -34,18 +34,7 @@ class utils implements \phpbb\textformatter\utils_interface
*/
public function remove_bbcode($text, $bbcode_name, $depth = 0)
{
- $dom = new \DOMDocument;
- $dom->loadXML($text);
-
- $xpath = new \DOMXPath($dom);
- $nodes = $xpath->query(str_repeat('//' . strtoupper($bbcode_name), 1 + $depth));
-
- foreach ($nodes as $node)
- {
- $node->parentNode->removeChild($node);
- }
-
- return $dom->saveXML($dom->documentElement);
+ return \s9e\TextFormatter\Utils::removeTag($text, strtoupper($bbcode_name), $depth);
}
/**
@@ -53,7 +42,7 @@ class utils implements \phpbb\textformatter\utils_interface
*/
public function remove_formatting($text)
{
- return \s9e\TextFormatter\Unparser::removeFormatting($text);
+ return \s9e\TextFormatter\Utils::removeFormatting($text);
}
/**
diff --git a/tests/text_formatter/s9e/utils_test.php b/tests/text_formatter/s9e/utils_test.php
index 3de9b707c5..6f0ef54182 100644
--- a/tests/text_formatter/s9e/utils_test.php
+++ b/tests/text_formatter/s9e/utils_test.php
@@ -109,52 +109,41 @@ class phpbb_textformatter_s9e_utils_test extends phpbb_test_case
public function test_remove_bbcode($original, $name, $depth, $expected)
{
$container = $this->get_test_case_helpers()->set_s9e_services();
+ $parser = $container->get('text_formatter.parser');
$utils = $container->get('text_formatter.utils');
- $this->assertSame($expected, $utils->remove_bbcode($original, $name, $depth));
+ $parsed = $parser->parse($original);
+ $actual = $utils->unparse($utils->remove_bbcode($parsed, $name, $depth));
+
+ $this->assertSame($expected, $actual);
}
public function get_remove_bbcode_tests()
{
return array(
array(
- '<t>Plain text</t>',
+ 'Plain text',
'b',
1,
- '<t>Plain text</t>'
+ 'Plain text'
),
array(
- '<r><QUOTE author="u0"><s>[quote="u0"]</s><QUOTE author="u1"><s>[quote="u1"]</s><QUOTE author="u2"><s>[quote="u2"]</s>q2<e>[/quote]</e></QUOTE>
-q1<e>[/quote]</e></QUOTE>
-q0<e>[/quote]</e></QUOTE>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>',
+ '[quote="u0"][quote="u1"][quote="u2"]q2[/quote]q1[/quote]q0[/quote][b]bold[/b]',
'quote',
0,
- '<r>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>'
+ '[b]bold[/b]',
),
array(
- '<r><QUOTE author="u0"><s>[quote="u0"]</s><QUOTE author="u1"><s>[quote="u1"]</s><QUOTE author="u2"><s>[quote="u2"]</s>q2<e>[/quote]</e></QUOTE>
-q1<e>[/quote]</e></QUOTE>
-q0<e>[/quote]</e></QUOTE>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>',
+ '[quote="u0"][quote="u1"][quote="u2"]q2[/quote]q1[/quote]q0[/quote][b]bold[/b]',
'quote',
1,
- '<r><QUOTE author="u0"><s>[quote="u0"]</s>
-q0<e>[/quote]</e></QUOTE>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>'
+ '[quote="u0"]q0[/quote][b]bold[/b]',
),
array(
- '<r><QUOTE author="u0"><s>[quote="u0"]</s><QUOTE author="u1"><s>[quote="u1"]</s><QUOTE author="u2"><s>[quote="u2"]</s>q2<e>[/quote]</e></QUOTE>
-q1<e>[/quote]</e></QUOTE>
-q0<e>[/quote]</e></QUOTE>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>',
+ '[quote="u0"][quote="u1"][quote="u2"]q2[/quote]q1[/quote]q0[/quote][b]bold[/b]',
'quote',
2,
- '<r><QUOTE author="u0"><s>[quote="u0"]</s><QUOTE author="u1"><s>[quote="u1"]</s>
-q1<e>[/quote]</e></QUOTE>
-q0<e>[/quote]</e></QUOTE>
-<B><s>[b]</s>bold<e>[/b]</e></B></r>'
+ '[quote="u0"][quote="u1"]q1[/quote]q0[/quote][b]bold[/b]',
),
);
}