From 467394f64fcb5840be550db8319252af35df7b93 Mon Sep 17 00:00:00 2001 From: Andreas Gohr <andi@splitbrain.org> Date: Sun, 23 Oct 2005 00:03:20 +0200 Subject: [PATCH] more test fixes (down to 55) darcs-hash:20051022220320-7ad00-ada9d82ad5fdc670cfecc0f3fbdc50f6ed7fc036.gz --- .../cases/inc/parser/parser_headers.test.php | 81 +++++++++++++------ .../inc/parser/parser_replacements.test.php | 6 +- inc/parser/handler.php | 3 +- 3 files changed, 62 insertions(+), 28 deletions(-) diff --git a/_test/cases/inc/parser/parser_headers.test.php b/_test/cases/inc/parser/parser_headers.test.php index b8de6983b..6a027de78 100644 --- a/_test/cases/inc/parser/parser_headers.test.php +++ b/_test/cases/inc/parser/parser_headers.test.php @@ -15,10 +15,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' Header ',1)), + array('header',array('Header',1,6)), array('section_open',array(1)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -34,10 +34,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' Header ',2)), + array('header',array('Header',2,6)), array('section_open',array(2)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -53,10 +53,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' Header ',3)), + array('header',array('Header',3,6)), array('section_open',array(3)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -72,10 +72,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' Header ',4)), + array('header',array('Header',4,6)), array('section_open',array(4)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -91,10 +91,29 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' Header ',5)), + array('header',array('Header',5,6)), array('section_open',array(5)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), + array('p_close',array()), + array('section_close',array()), + array('document_end',array()), + ); + $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls); + } + + function testHeader2UnevenSmaller() { + $this->P->addMode('header',new Doku_Parser_Mode_Header()); + $this->P->parse("abc \n ===== Header == \n def"); + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\nabc \n")), + array('p_close',array()), + array('header',array('Header',2,6)), + array('section_open',array(2)), + array('p_open',array()), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -102,6 +121,24 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls); } + function testHeader2UnevenBigger() { + $this->P->addMode('header',new Doku_Parser_Mode_Header()); + $this->P->parse("abc \n ===== Header =========== \n def"); + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\nabc \n")), + array('p_close',array()), + array('header',array('Header',2,6)), + array('section_open',array(2)), + array('p_open',array()), + array('cdata',array("\n def\n")), + array('p_close',array()), + array('section_close',array()), + array('document_end',array()), + ); + $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls); + } function testHeaderLarge() { $this->P->addMode('header',new Doku_Parser_Mode_Header()); @@ -111,10 +148,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array('= Header =',1)), + array('header',array('Header',1,6)), array('section_open',array(1)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -144,10 +181,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' == Header == ',1)), + array('header',array('== Header ==',1,6)), array('section_open',array(1)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -163,10 +200,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n")), array('p_close',array()), - array('header',array(' ====== Header ====== ',5)), + array('header',array('====== Header ======',5,6)), array('section_open',array(5)), array('p_open',array()), - array('cdata',array(' def'."\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -182,10 +219,10 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('p_open',array()), array('cdata',array("\nabc \n== ====== Header\n")), array('p_close',array()), - array('header',array('',1)), + array('header',array('',1,23)), array('section_open',array(1)), array('p_open',array()), - array('cdata',array(" def\n")), + array('cdata',array("\n def\n")), array('p_close',array()), array('section_close',array()), array('document_end',array()), @@ -207,15 +244,13 @@ class TestOfDoku_Parser_Headers extends TestOfDoku_Parser { array('document_start',array()), array('p_open',array()), array('cdata',array('abc ')), + array('cdata',array(' ')), array('p_close',array()), - array('p_open',array()), - array('p_close',array()), - array('header',array(' Header ',1)), + array('header',array('Header',1, 6)), array('section_open',array(1)), array('p_open',array()), array('cdata',array(' def')), - array('p_close',array()), - array('p_open',array()), + array('cdata',array(' ')), array('p_close',array()), array('section_close',array()), array('document_end',array()), diff --git a/_test/cases/inc/parser/parser_replacements.test.php b/_test/cases/inc/parser/parser_replacements.test.php index 0aae4496b..c026e2b19 100644 --- a/_test/cases/inc/parser/parser_replacements.test.php +++ b/_test/cases/inc/parser/parser_replacements.test.php @@ -339,11 +339,10 @@ class TestOfDoku_Parser_Replacements extends TestOfDoku_Parser { array('p_close',array()), array('hr',array()), array('p_open',array()), - array('cdata',array(' Bar'."\n")), + array('cdata',array("\n Bar\n")), array('p_close',array()), array('document_end',array()), ); - $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); } @@ -358,11 +357,10 @@ class TestOfDoku_Parser_Replacements extends TestOfDoku_Parser { array('p_close',array()), array('hr',array()), array('p_open',array()), - array('cdata',array(' Bar'."\n")), + array('cdata',array("\n Bar\n")), array('p_close',array()), array('document_end',array()), ); - $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls); } } diff --git a/inc/parser/handler.php b/inc/parser/handler.php index d2dc49a5d..805449ea5 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -104,7 +104,8 @@ class Doku_Handler { } // Strip markers and whitespaces - $title = trim($match,'= '); + $title = trim($match,'='); + $title = trim($title,' '); $this->_addCall('header',array($title,$level,$pos), $pos); $this->meta['section'] = TRUE; -- GitLab