diff options
Diffstat (limited to '_test/cases/inc/parser')
-rw-r--r-- | _test/cases/inc/parser/parser_replacements.test.php | 66 |
1 files changed, 55 insertions, 11 deletions
diff --git a/_test/cases/inc/parser/parser_replacements.test.php b/_test/cases/inc/parser/parser_replacements.test.php index efd20f397..1534f9ce8 100644 --- a/_test/cases/inc/parser/parser_replacements.test.php +++ b/_test/cases/inc/parser/parser_replacements.test.php @@ -59,18 +59,32 @@ class TestOfDoku_Parser_Replacements extends TestOfDoku_Parser { $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); } - // - function testSingleSmiley() { + function testSingleSmileyFail() { $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-)'))); $this->P->parse('abc:-)xyz'); $calls = array ( array('document_start',array()), array('p_open',array()), - array('cdata',array("\n".'abc')), + array('cdata',array("\nabc:-)xyz\n")), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); + } + + function testSingleSmiley() { + $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-)'))); + $this->P->parse('abc :-) xyz'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n".'abc ')), array('smiley',array(':-)')), - array('cdata',array('xyz'."\n")), + array('cdata',array(' xyz'."\n")), array('p_close',array()), array('document_end',array()), ); @@ -78,37 +92,67 @@ class TestOfDoku_Parser_Replacements extends TestOfDoku_Parser { $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); } - function testMultipleSmileys() { + function testMultipleSmileysFail() { $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-)','^_^'))); $this->P->parse('abc:-)x^_^yz'); $calls = array ( array('document_start',array()), array('p_open',array()), - array('cdata',array("\n".'abc')), + array('cdata',array("\nabc:-)x^_^yz\n")), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); + } + + function testMultipleSmileys() { + $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-)','^_^'))); + $this->P->parse('abc :-) x ^_^ yz'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n".'abc ')), array('smiley',array(':-)')), - array('cdata',array('x')), + array('cdata',array(' x ')), array('smiley',array('^_^')), - array('cdata',array('yz'."\n")), + array('cdata',array(' yz'."\n")), array('p_close',array()), array('document_end',array()), ); $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); + } + + function testBackslashSmileyFail() { + // This smiley is really :-\\ but escaping makes like interesting + $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-\\\\'))); + $this->P->parse('abc:-\\\xyz'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\nabc".':-\\\\'."xyz\n")), + array('p_close',array()), + array('document_end',array()), + ); + $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); } function testBackslashSmiley() { // This smiley is really :-\\ but escaping makes like interesting $this->P->addMode('smiley',new Doku_Parser_Mode_Smiley(array(':-\\\\'))); - $this->P->parse('abc:-\\\xyz'); + $this->P->parse('abc :-\\\ xyz'); $calls = array ( array('document_start',array()), array('p_open',array()), - array('cdata',array("\n".'abc')), + array('cdata',array("\n".'abc ')), array('smiley',array(':-\\\\')), - array('cdata',array('xyz'."\n")), + array('cdata',array(' xyz'."\n")), array('p_close',array()), array('document_end',array()), ); |