summaryrefslogtreecommitdiff
path: root/_test/cases/inc/parser
diff options
context:
space:
mode:
Diffstat (limited to '_test/cases/inc/parser')
-rw-r--r--_test/cases/inc/parser/lexer.group.php21
-rw-r--r--_test/cases/inc/parser/lexer.test.php625
-rw-r--r--_test/cases/inc/parser/parser.group.php34
-rw-r--r--_test/cases/inc/parser/parser.inc.php53
-rw-r--r--_test/cases/inc/parser/parser_eol.test.php100
-rw-r--r--_test/cases/inc/parser/parser_footnote.test.php392
-rw-r--r--_test/cases/inc/parser/parser_formatting.test.php434
-rw-r--r--_test/cases/inc/parser/parser_headers.test.php286
-rw-r--r--_test/cases/inc/parser/parser_i18n.test.php166
-rw-r--r--_test/cases/inc/parser/parser_links.test.php698
-rw-r--r--_test/cases/inc/parser/parser_lists.test.php397
-rw-r--r--_test/cases/inc/parser/parser_preformatted.test.php235
-rw-r--r--_test/cases/inc/parser/parser_quote.test.php98
-rw-r--r--_test/cases/inc/parser/parser_quotes.test.php273
-rw-r--r--_test/cases/inc/parser/parser_replacements.test.php384
-rw-r--r--_test/cases/inc/parser/parser_table.test.php576
-rw-r--r--_test/cases/inc/parser/parser_unformatted.test.php42
-rw-r--r--_test/cases/inc/parser/xhtml_htmlphp.test.php203
-rw-r--r--_test/cases/inc/parser/xhtml_links.test.php239
19 files changed, 0 insertions, 5256 deletions
diff --git a/_test/cases/inc/parser/lexer.group.php b/_test/cases/inc/parser/lexer.group.php
deleted file mode 100644
index 6e9ef0742..000000000
--- a/_test/cases/inc/parser/lexer.group.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-/**
-* @version $Id: lexer.group.php,v 1.2 2005/03/25 21:00:22 harryf Exp $
-* @package JPSpan
-* @subpackage Tests
-*/
-
-/**
-* @package JPSpan
-* @subpackage Tests
-*/
-class LexerGroupTest extends GroupTest {
-
- function LexerGroupTest() {
- $this->GroupTest('LexerGroupTest');
- $this->addTestFile(dirname(__FILE__).'/lexer.test.php');
- }
-
-}
-
-?>
diff --git a/_test/cases/inc/parser/lexer.test.php b/_test/cases/inc/parser/lexer.test.php
deleted file mode 100644
index e802277f1..000000000
--- a/_test/cases/inc/parser/lexer.test.php
+++ /dev/null
@@ -1,625 +0,0 @@
-<?php
-/**
-* @version $Id: lexer.test.php,v 1.2 2005/03/25 21:00:22 harryf Exp $
-* @package Doku
-* @subpackage Tests
-*/
-
-/**
-* Includes
-*/
-require_once DOKU_INC . 'inc/parser/lexer.php';
-
-/**
-* @package Doku
-* @subpackage Tests
-*/
-class TestOfLexerParallelRegex extends UnitTestCase {
- function TestOfLexerParallelRegex() {
- $this->UnitTestCase();
- }
- function testNoPatterns() {
- $regex = new Doku_LexerParallelRegex(false);
- $this->assertFalse($regex->match("Hello", $match));
- $this->assertEqual($match, "");
- }
- function testNoSubject() {
- $regex = new Doku_LexerParallelRegex(false);
- $regex->addPattern(".*");
- $this->assertTrue($regex->match("", $match));
- $this->assertEqual($match, "");
- }
- function testMatchAll() {
- $regex = new Doku_LexerParallelRegex(false);
- $regex->addPattern(".*");
- $this->assertTrue($regex->match("Hello", $match));
- $this->assertEqual($match, "Hello");
- }
- function testCaseSensitive() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("abc");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "abc");
- }
- function testCaseInsensitive() {
- $regex = new Doku_LexerParallelRegex(false);
- $regex->addPattern("abc");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "ABC");
- }
- function testMatchMultiple() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("abc");
- $regex->addPattern("ABC");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "ABC");
- $this->assertFalse($regex->match("Hello", $match));
- }
- function testPatternLabels() {
- $regex = new Doku_LexerParallelRegex(false);
- $regex->addPattern("abc", "letter");
- $regex->addPattern("123", "number");
- $this->assertIdentical($regex->match("abcdef", $match), "letter");
- $this->assertEqual($match, "abc");
- $this->assertIdentical($regex->match("0123456789", $match), "number");
- $this->assertEqual($match, "123");
- }
- function testMatchMultipleWithLookaheadNot() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("abc");
- $regex->addPattern("ABC");
- $regex->addPattern("a(?!\n).{1}");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "ABC");
- $this->assertTrue($regex->match("a\nab", $match));
- $this->assertEqual($match, "ab");
- $this->assertFalse($regex->match("Hello", $match));
- }
- function testMatchSetOptionCaseless() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("a(?i)b(?i)c");
- $this->assertTrue($regex->match("aBc", $match));
- $this->assertEqual($match, "aBc");
- }
- function testMatchSetOptionUngreedy() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("(?U)\w+");
- $this->assertTrue($regex->match("aaaaaa", $match));
- $this->assertEqual($match, "a");
- }
- function testMatchLookaheadEqual() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("\w(?=c)");
- $this->assertTrue($regex->match("xbyczd", $match));
- $this->assertEqual($match, "y");
- }
- function testMatchLookaheadNot() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("\w(?!b|c)");
- $this->assertTrue($regex->match("xbyczd", $match));
- $this->assertEqual($match, "b");
- }
- function testMatchLookbehindEqual() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("(?<=c)\w");
- $this->assertTrue($regex->match("xbyczd", $match));
- $this->assertEqual($match, "z");
- }
- function testMatchLookbehindNot() {
- $regex = new Doku_LexerParallelRegex(true);
- $regex->addPattern("(?<!\A|x|b)\w");
- $this->assertTrue($regex->match("xbyczd", $match));
- $this->assertEqual($match, "c");
- }
-}
-
-
-class TestOfLexerStateStack extends UnitTestCase {
- function TestOfLexerStateStack() {
- $this->UnitTestCase();
- }
- function testStartState() {
- $stack = new Doku_LexerStateStack("one");
- $this->assertEqual($stack->getCurrent(), "one");
- }
- function testExhaustion() {
- $stack = new Doku_LexerStateStack("one");
- $this->assertFalse($stack->leave());
- }
- function testStateMoves() {
- $stack = new Doku_LexerStateStack("one");
- $stack->enter("two");
- $this->assertEqual($stack->getCurrent(), "two");
- $stack->enter("three");
- $this->assertEqual($stack->getCurrent(), "three");
- $this->assertTrue($stack->leave());
- $this->assertEqual($stack->getCurrent(), "two");
- $stack->enter("third");
- $this->assertEqual($stack->getCurrent(), "third");
- $this->assertTrue($stack->leave());
- $this->assertTrue($stack->leave());
- $this->assertEqual($stack->getCurrent(), "one");
- }
-}
-
-class TestParser {
- function TestParser() {
- }
- function accept() {
- }
- function a() {
- }
- function b() {
- }
-}
-Mock::generate('TestParser');
-
-class TestOfLexer extends UnitTestCase {
- function TestOfLexer() {
- $this->UnitTestCase();
- }
- function testNoPatterns() {
- $handler = new MockTestParser($this);
- $handler->expectNever("accept");
- $handler->setReturnValue("accept", true);
- $lexer = new Doku_Lexer($handler);
- $this->assertFalse($lexer->parse("abcdef"));
- }
- function testEmptyPage() {
- $handler = new MockTestParser($this);
- $handler->expectNever("accept");
- $handler->setReturnValue("accept", true);
- $handler->expectNever("accept");
- $handler->setReturnValue("accept", true);
- $lexer = new Doku_Lexer($handler);
- $lexer->addPattern("a+");
- $this->assertTrue($lexer->parse(""));
- }
- function testSinglePattern() {
- $handler = new MockTestParser($this);
- $handler->expectArgumentsAt(0, "accept", array("aaa", DOKU_LEXER_MATCHED, 0));
- $handler->expectArgumentsAt(1, "accept", array("x", DOKU_LEXER_UNMATCHED, 3));
- $handler->expectArgumentsAt(2, "accept", array("a", DOKU_LEXER_MATCHED, 4));
- $handler->expectArgumentsAt(3, "accept", array("yyy", DOKU_LEXER_UNMATCHED, 5));
- $handler->expectArgumentsAt(4, "accept", array("a", DOKU_LEXER_MATCHED, 8));
- $handler->expectArgumentsAt(5, "accept", array("x", DOKU_LEXER_UNMATCHED, 9));
- $handler->expectArgumentsAt(6, "accept", array("aaa", DOKU_LEXER_MATCHED, 10));
- $handler->expectArgumentsAt(7, "accept", array("z", DOKU_LEXER_UNMATCHED, 13));
- $handler->expectCallCount("accept", 8);
- $handler->setReturnValue("accept", true);
- $lexer = new Doku_Lexer($handler);
- $lexer->addPattern("a+");
- $this->assertTrue($lexer->parse("aaaxayyyaxaaaz"));
- $handler->tally();
- }
- function testMultiplePattern() {
- $handler = new MockTestParser($this);
- $target = array("a", "b", "a", "bb", "x", "b", "a", "xxxxxx", "a", "x");
- $positions = array(0,1,2,3,5,6,7,8,14,15);
- for ($i = 0; $i < count($target); $i++) {
- $handler->expectArgumentsAt($i, "accept", array($target[$i], '*', $positions[$i]));
- }
- $handler->expectCallCount("accept", count($target));
- $handler->setReturnValue("accept", true);
- $lexer = new Doku_Lexer($handler);
- $lexer->addPattern("a+");
- $lexer->addPattern("b+");
- $this->assertTrue($lexer->parse("ababbxbaxxxxxxax"));
- $handler->tally();
- }
-}
-
-class TestOfLexerModes extends UnitTestCase {
- function TestOfLexerModes() {
- $this->UnitTestCase();
- }
- function testIsolatedPattern() {
- $handler = new MockTestParser($this);
- $handler->expectArgumentsAt(0, "a", array("a", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array("b", DOKU_LEXER_UNMATCHED,1));
- $handler->expectArgumentsAt(2, "a", array("aa", DOKU_LEXER_MATCHED,2));
- $handler->expectArgumentsAt(3, "a", array("bxb", DOKU_LEXER_UNMATCHED,4));
- $handler->expectArgumentsAt(4, "a", array("aaa", DOKU_LEXER_MATCHED,7));
- $handler->expectArgumentsAt(5, "a", array("x", DOKU_LEXER_UNMATCHED,10));
- $handler->expectArgumentsAt(6, "a", array("aaaa", DOKU_LEXER_MATCHED,11));
- $handler->expectArgumentsAt(7, "a", array("x", DOKU_LEXER_UNMATCHED,15));
- $handler->expectCallCount("a", 8);
- $handler->setReturnValue("a", true);
- $lexer = new Doku_Lexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addPattern("b+", "b");
- $this->assertTrue($lexer->parse("abaabxbaaaxaaaax"));
- $handler->tally();
- }
- function testModeChange() {
- $handler = new MockTestParser($this);
- $handler->expectArgumentsAt(0, "a", array("a", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array("b", DOKU_LEXER_UNMATCHED,1));
- $handler->expectArgumentsAt(2, "a", array("aa", DOKU_LEXER_MATCHED,2));
- $handler->expectArgumentsAt(3, "a", array("b", DOKU_LEXER_UNMATCHED,4));
- $handler->expectArgumentsAt(4, "a", array("aaa", DOKU_LEXER_MATCHED,5));
- $handler->expectArgumentsAt(0, "b", array(":", DOKU_LEXER_ENTER,8));
- $handler->expectArgumentsAt(1, "b", array("a", DOKU_LEXER_UNMATCHED,9));
- $handler->expectArgumentsAt(2, "b", array("b", DOKU_LEXER_MATCHED, 10));
- $handler->expectArgumentsAt(3, "b", array("a", DOKU_LEXER_UNMATCHED,11));
- $handler->expectArgumentsAt(4, "b", array("bb", DOKU_LEXER_MATCHED,12));
- $handler->expectArgumentsAt(5, "b", array("a", DOKU_LEXER_UNMATCHED,14));
- $handler->expectArgumentsAt(6, "b", array("bbb", DOKU_LEXER_MATCHED,15));
- $handler->expectArgumentsAt(7, "b", array("a", DOKU_LEXER_UNMATCHED,18));
- $handler->expectCallCount("a", 5);
- $handler->expectCallCount("b", 8);
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $lexer = new Doku_Lexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addEntryPattern(":", "a", "b");
- $lexer->addPattern("b+", "b");
- $this->assertTrue($lexer->parse("abaabaaa:ababbabbba"));
- $handler->tally();
- }
- function testNesting() {
- $handler = new MockTestParser($this);
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $handler->expectArgumentsAt(0, "a", array("aa", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array("b", DOKU_LEXER_UNMATCHED,2));
- $handler->expectArgumentsAt(2, "a", array("aa", DOKU_LEXER_MATCHED,3));
- $handler->expectArgumentsAt(3, "a", array("b", DOKU_LEXER_UNMATCHED,5));
- $handler->expectArgumentsAt(0, "b", array("(", DOKU_LEXER_ENTER,6));
- $handler->expectArgumentsAt(1, "b", array("bb", DOKU_LEXER_MATCHED,7));
- $handler->expectArgumentsAt(2, "b", array("a", DOKU_LEXER_UNMATCHED,9));
- $handler->expectArgumentsAt(3, "b", array("bb", DOKU_LEXER_MATCHED,10));
- $handler->expectArgumentsAt(4, "b", array(")", DOKU_LEXER_EXIT,12));
- $handler->expectArgumentsAt(4, "a", array("aa", DOKU_LEXER_MATCHED,13));
- $handler->expectArgumentsAt(5, "a", array("b", DOKU_LEXER_UNMATCHED,15));
- $handler->expectCallCount("a", 6);
- $handler->expectCallCount("b", 5);
- $lexer = new Doku_Lexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addEntryPattern("(", "a", "b");
- $lexer->addPattern("b+", "b");
- $lexer->addExitPattern(")", "b");
- $this->assertTrue($lexer->parse("aabaab(bbabb)aab"));
- $handler->tally();
- }
- function testSingular() {
- $handler = new MockTestParser($this);
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $handler->expectArgumentsAt(0, "a", array("aa", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array("aa", DOKU_LEXER_MATCHED,3));
- $handler->expectArgumentsAt(2, "a", array("xx", DOKU_LEXER_UNMATCHED,5));
- $handler->expectArgumentsAt(3, "a", array("xx", DOKU_LEXER_UNMATCHED,10));
- $handler->expectArgumentsAt(0, "b", array("b", DOKU_LEXER_SPECIAL,2));
- $handler->expectArgumentsAt(1, "b", array("bbb", DOKU_LEXER_SPECIAL,7));
- $handler->expectCallCount("a", 4);
- $handler->expectCallCount("b", 2);
- $lexer = new Doku_Lexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addSpecialPattern("b+", "a", "b");
- $this->assertTrue($lexer->parse("aabaaxxbbbxx"));
- $handler->tally();
- }
- function testUnwindTooFar() {
- $handler = new MockTestParser($this);
- $handler->setReturnValue("a", true);
- $handler->expectArgumentsAt(0, "a", array("aa", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array(")", DOKU_LEXER_EXIT,2));
- $handler->expectCallCount("a", 2);
- $lexer = new Doku_Lexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addExitPattern(")", "a");
- $this->assertFalse($lexer->parse("aa)aa"));
- $handler->tally();
- }
-}
-
-class TestOfLexerHandlers extends UnitTestCase {
- function TestOfLexerHandlers() {
- $this->UnitTestCase();
- }
- function testModeMapping() {
- $handler = new MockTestParser($this);
- $handler->setReturnValue("a", true);
- $handler->expectArgumentsAt(0, "a", array("aa", DOKU_LEXER_MATCHED,0));
- $handler->expectArgumentsAt(1, "a", array("(", DOKU_LEXER_ENTER,2));
- $handler->expectArgumentsAt(2, "a", array("bb", DOKU_LEXER_MATCHED,3));
- $handler->expectArgumentsAt(3, "a", array("a", DOKU_LEXER_UNMATCHED,5));
- $handler->expectArgumentsAt(4, "a", array("bb", DOKU_LEXER_MATCHED,6));
- $handler->expectArgumentsAt(5, "a", array(")", DOKU_LEXER_EXIT,8));
- $handler->expectArgumentsAt(6, "a", array("b", DOKU_LEXER_UNMATCHED,9));
- $handler->expectCallCount("a", 7);
- $lexer = new Doku_Lexer($handler, "mode_a");
- $lexer->addPattern("a+", "mode_a");
- $lexer->addEntryPattern("(", "mode_a", "mode_b");
- $lexer->addPattern("b+", "mode_b");
- $lexer->addExitPattern(")", "mode_b");
- $lexer->mapHandler("mode_a", "a");
- $lexer->mapHandler("mode_b", "a");
- $this->assertTrue($lexer->parse("aa(bbabb)b"));
- $handler->tally();
- }
-}
-
-class TestParserByteIndex {
-
- function TestParserByteIndex() {}
-
- function ignore() {}
-
- function caught() {}
-}
-
-Mock::generate('TestParserByteIndex');
-
-class TestOfLexerByteIndices extends UnitTestCase {
-
- function TestOfLexerByteIndices() {
- $this->UnitTestCase();
- }
-
- function testIndex() {
- $doc = "aaa<file>bcd</file>eee";
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("<file>", DOKU_LEXER_ENTER, strpos($doc,'<file>'))
- );
- $handler->expectArgumentsAt(
- 1,
- "caught",
- array("b", DOKU_LEXER_SPECIAL, strpos($doc,'b'))
- );
- $handler->expectArgumentsAt(
- 2,
- "caught",
- array("c", DOKU_LEXER_MATCHED, strpos($doc,'c'))
- );
- $handler->expectArgumentsAt(
- 3,
- "caught",
- array("d", DOKU_LEXER_UNMATCHED, strpos($doc,'d'))
- );
- $handler->expectArgumentsAt(
- 4,
- "caught",
- array("</file>", DOKU_LEXER_EXIT, strpos($doc,'</file>'))
- );
- $handler->expectCallCount("caught", 5);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addEntryPattern("<file>", "ignore", "caught");
- $lexer->addExitPattern("</file>", "caught");
- $lexer->addSpecialPattern('b','caught','special');
- $lexer->mapHandler('special','caught');
- $lexer->addPattern('c','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
- function testIndexLookaheadEqual() {
- $doc = "aaa<file>bcd</file>eee";
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("<file>", DOKU_LEXER_ENTER, strpos($doc,'<file>'))
- );
- $handler->expectArgumentsAt(
- 1,
- "caught",
- array("b", DOKU_LEXER_SPECIAL, strpos($doc,'b'))
- );
- $handler->expectArgumentsAt(
- 2,
- "caught",
- array("c", DOKU_LEXER_MATCHED, strpos($doc,'c'))
- );
- $handler->expectArgumentsAt(
- 3,
- "caught",
- array("d", DOKU_LEXER_UNMATCHED, strpos($doc,'d'))
- );
- $handler->expectArgumentsAt(
- 4,
- "caught",
- array("</file>", DOKU_LEXER_EXIT, strpos($doc,'</file>'))
- );
- $handler->expectCallCount("caught", 5);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addEntryPattern('<file>(?=.*</file>)', "ignore", "caught");
- $lexer->addExitPattern("</file>", "caught");
- $lexer->addSpecialPattern('b','caught','special');
- $lexer->mapHandler('special','caught');
- $lexer->addPattern('c','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
- function testIndexLookaheadNotEqual() {
- $doc = "aaa<file>bcd</file>eee";
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("<file>", DOKU_LEXER_ENTER, strpos($doc,'<file>'))
- );
- $handler->expectArgumentsAt(
- 1,
- "caught",
- array("b", DOKU_LEXER_SPECIAL, strpos($doc,'b'))
- );
- $handler->expectArgumentsAt(
- 2,
- "caught",
- array("c", DOKU_LEXER_MATCHED, strpos($doc,'c'))
- );
- $handler->expectArgumentsAt(
- 3,
- "caught",
- array("d", DOKU_LEXER_UNMATCHED, strpos($doc,'d'))
- );
- $handler->expectArgumentsAt(
- 4,
- "caught",
- array("</file>", DOKU_LEXER_EXIT, strpos($doc,'</file>'))
- );
- $handler->expectCallCount("caught", 5);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addEntryPattern('<file>(?!foo)', "ignore", "caught");
- $lexer->addExitPattern("</file>", "caught");
- $lexer->addSpecialPattern('b','caught','special');
- $lexer->mapHandler('special','caught');
- $lexer->addPattern('c','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
- function testIndexLookbehindEqual() {
- $doc = "aaa<file>bcd</file>eee";
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("<file>", DOKU_LEXER_ENTER, strpos($doc,'<file>'))
- );
- $handler->expectArgumentsAt(
- 1,
- "caught",
- array("b", DOKU_LEXER_SPECIAL, strpos($doc,'b'))
- );
- $handler->expectArgumentsAt(
- 2,
- "caught",
- array("c", DOKU_LEXER_MATCHED, strpos($doc,'c'))
- );
- $handler->expectArgumentsAt(
- 3,
- "caught",
- array("d", DOKU_LEXER_UNMATCHED, strpos($doc,'d'))
- );
- $handler->expectArgumentsAt(
- 4,
- "caught",
- array("</file>", DOKU_LEXER_EXIT, strpos($doc,'</file>'))
- );
- $handler->expectCallCount("caught", 5);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addEntryPattern('<file>', "ignore", "caught");
- $lexer->addExitPattern("(?<=d)</file>", "caught");
- $lexer->addSpecialPattern('b','caught','special');
- $lexer->mapHandler('special','caught');
- $lexer->addPattern('c','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
- function testIndexLookbehindNotEqual() {
- $doc = "aaa<file>bcd</file>eee";
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("<file>", DOKU_LEXER_ENTER, strpos($doc,'<file>'))
- );
- $handler->expectArgumentsAt(
- 1,
- "caught",
- array("b", DOKU_LEXER_SPECIAL, strpos($doc,'b'))
- );
- $handler->expectArgumentsAt(
- 2,
- "caught",
- array("c", DOKU_LEXER_MATCHED, strpos($doc,'c'))
- );
- $handler->expectArgumentsAt(
- 3,
- "caught",
- array("d", DOKU_LEXER_UNMATCHED, strpos($doc,'d'))
- );
- $handler->expectArgumentsAt(
- 4,
- "caught",
- array("</file>", DOKU_LEXER_EXIT, strpos($doc,'</file>'))
- );
- $handler->expectCallCount("caught", 5);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addEntryPattern('<file>', "ignore", "caught");
- $lexer->addExitPattern("(?<!c)</file>", "caught");
- $lexer->addSpecialPattern('b','caught','special');
- $lexer->mapHandler('special','caught');
- $lexer->addPattern('c','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
- /**
- * This test is primarily to ensure the correct match is chosen
- * when there are non-captured elements in the pattern.
- */
- function testIndexSelectCorrectMatch() {
- $doc = "ALL FOOLS ARE FOO";
- $pattern = '\bFOO\b';
-
- $handler = new MockTestParserByteIndex($this);
- $handler->setReturnValue("ignore", true);
- $handler->setReturnValue("caught", true);
-
- $matches = array();
- preg_match('/'.$pattern.'/',$doc,$matches,PREG_OFFSET_CAPTURE);
-
- $handler->expectArgumentsAt(
- 0,
- "caught",
- array("FOO", DOKU_LEXER_SPECIAL, $matches[0][1])
- );
- $handler->expectCallCount("caught", 1);
-
- $lexer = new Doku_Lexer($handler, "ignore");
- $lexer->addSpecialPattern($pattern,'ignore','caught');
-
- $this->assertTrue($lexer->parse($doc));
- $handler->tally();
- }
-
-}
-
-?>
diff --git a/_test/cases/inc/parser/parser.group.php b/_test/cases/inc/parser/parser.group.php
deleted file mode 100644
index ed7fce76e..000000000
--- a/_test/cases/inc/parser/parser.group.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
-* @version $Id: parser.group.php,v 1.3 2005/03/30 13:42:10 harryf Exp $
-* @package Dokuwiki
-* @subpackage Tests
-*/
-
-/**
-* @package Dokuwiki
-* @subpackage Tests
-*/
-class ParserGroupTest extends GroupTest {
-
- function ParserGroupTest() {
- $dir = dirname(__FILE__).'/';
- $this->GroupTest('ParserGroupTest');
- $this->addTestFile($dir . 'parser_eol.test.php');
- $this->addTestFile($dir . 'parser_footnote.test.php');
- $this->addTestFile($dir .'parser_formatting.test.php');
- $this->addTestFile($dir .'parser_headers.test.php');
- $this->addTestFile($dir .'parser_i18n.test.php');
- $this->addTestFile($dir .'parser_links.test.php');
- $this->addTestFile($dir .'parser_lists.test.php');
- $this->addTestFile($dir .'parser_preformatted.test.php');
- $this->addTestFile($dir .'parser_quote.test.php');
- $this->addTestFile($dir .'parser_replacements.test.php');
- $this->addTestFile($dir .'parser_table.test.php');
-# $this->addTestFile($dir .'parser_tocsections.test.php');
- $this->addTestFile($dir .'parser_unformatted.test.php');
- }
-
-}
-
-?>
diff --git a/_test/cases/inc/parser/parser.inc.php b/_test/cases/inc/parser/parser.inc.php
deleted file mode 100644
index 74d956f43..000000000
--- a/_test/cases/inc/parser/parser.inc.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
-* @version $Id: parser.inc.php,v 1.2 2005/03/25 21:00:22 harryf Exp $
-* @package Doku
-* @subpackage Tests
-*/
-
-/**
-* Includes
-*/
-require_once DOKU_INC . 'inc/init.php';
-require_once DOKU_INC . 'inc/confutils.php';
-require_once DOKU_INC . 'inc/parser/parser.php';
-require_once DOKU_INC . 'inc/parser/handler.php';
-require_once DOKU_INC . 'inc/events.php';
-require_once DOKU_INC . 'inc/mail.php';
-
-//require_once DOKU . 'parser/renderer.php';
-
-//Mock::generate('Doku_Renderer');
-
-/**
-* @package Doku
-* @subpackage Tests
-*/
-class TestOfDoku_Parser extends UnitTestCase {
-
- var $P;
- var $H;
-
- function TestOfDoku_Parser() {
- $this->UnitTestCase('TestOfDoku_Parser');
- }
-
- function setup() {
- $this->P = new Doku_Parser();
- $this->H = new Doku_Handler();
- $this->P->Handler = & $this->H;
- }
-
- function tearDown() {
- unset($this->P);
- unset($this->H);
- }
-}
-
-function stripByteIndex($call) {
- unset($call[2]);
- if ($call[0] == "nest") {
- $call[1][0] = array_map('stripByteIndex',$call[1][0]);
- }
- return $call;
-}
diff --git a/_test/cases/inc/parser/parser_eol.test.php b/_test/cases/inc/parser/parser_eol.test.php
deleted file mode 100644
index 692882c6c..000000000
--- a/_test/cases/inc/parser/parser_eol.test.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Eol extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Eol() {
- $this->UnitTestCase('TestOfDoku_Parser_Eol');
- }
-
- function testEol() {
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo\nBar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("Foo".DOKU_PARSER_EOL."Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testEolMultiple() {
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo\n\nbar\nFoo");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("Foo")),
- array('p_close',array()),
- array('p_open',array()),
- array('cdata',array("bar".DOKU_PARSER_EOL."Foo")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testWinEol() {
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo\r\nBar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("Foo".DOKU_PARSER_EOL."Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testLinebreak() {
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->parse('Foo\\\\ Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo")),
- array('linebreak',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testLinebreakPlusEol() {
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse('Foo\\\\'."\n\n".'Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("Foo")),
- array('linebreak',array()),
- array('p_close',array()),
- array('p_open',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testLinebreakInvalid() {
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->parse('Foo\\\\Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo\\\\Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-}
-
diff --git a/_test/cases/inc/parser/parser_footnote.test.php b/_test/cases/inc/parser/parser_footnote.test.php
deleted file mode 100644
index e3571d8e7..000000000
--- a/_test/cases/inc/parser/parser_footnote.test.php
+++ /dev/null
@@ -1,392 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Footnote extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Footnote() {
- $this->UnitTestCase('TestOfDoku_Parser_Footnote');
- }
-
- function setup() {
- parent::setup();
- $this->P->addMode('footnote',new Doku_Parser_Mode_Footnote());
- }
-
- function testFootnote() {
- $this->P->parse('Foo (( testing )) Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' testing ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotAFootnote() {
- $this->P->parse("Foo (( testing\n Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo (( testing\n Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteLinefeed() {
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo (( testing\ntesting )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(" testing\ntesting ")),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteNested() {
- $this->P->parse('Foo (( x((y))z )) Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' x((y')),
- array('footnote_close',array()),
- ))),
- array('cdata',array('z )) Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteEol() {
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo \nX(( test\ning ))Y\n Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('Foo '.DOKU_PARSER_EOL.'X')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(" test\ning ")),
- array('footnote_close',array()),
- ))),
- array('cdata',array('Y'.DOKU_PARSER_EOL.' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteStrong() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('Foo (( **testing** )) Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('strong_open',array()),
- array('cdata',array('testing')),
- array('strong_close',array()),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteHr() {
- $this->P->addMode('hr',new Doku_Parser_Mode_HR());
- $this->P->parse("Foo (( \n ---- \n )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('hr',array()),
- array('cdata',array("\n ")),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteCode() {
- $this->P->addMode('code',new Doku_Parser_Mode_Code());
- $this->P->parse("Foo (( <code>Test</code> )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('code',array('Test',null,null)),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnotePreformatted() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->parse("Foo (( \n Test\n )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('preformatted',array('Test')),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnotePreformattedEol() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("Foo (( \n Test\n )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('preformatted',array('Test')),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteUnformatted() {
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse("Foo (( <nowiki>Test</nowiki> )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' ')),
- array('unformatted',array('Test')),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteNotHeader() {
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse("Foo (( \n====Test====\n )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(" \n====Test====\n ")),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteTable() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse("Foo ((
-| Row 0 Col 1 | Row 0 Col 2 | Row 0 Col 3 |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
- )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('table_open',array(3, 2, 8)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(123)),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteList() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse("Foo ((
- *A
- * B
- * C
- )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteQuote() {
- $this->P->addMode('quote',new Doku_Parser_Mode_Quote());
- $this->P->parse("Foo ((
-> def
->>ghi
- )) Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('quote_open',array()),
- array('cdata',array(" def")),
- array('quote_open',array()),
- array('cdata',array("ghi")),
- array('quote_close',array()),
- array('quote_close',array()),
- array('cdata',array(' ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testFootnoteNesting() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse("(( a ** (( b )) ** c ))");
-
- $calls = array(
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n")),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array(' a ')),
- array('strong_open',array()),
- array('cdata',array(' (( b ')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(" ")),
- array('strong_close',array()),
- array('cdata',array(" c ))")),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_formatting.test.php b/_test/cases/inc/parser/parser_formatting.test.php
deleted file mode 100644
index 69c57dfb5..000000000
--- a/_test/cases/inc/parser/parser_formatting.test.php
+++ /dev/null
@@ -1,434 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Formatting extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Formatting() {
- $this->UnitTestCase('TestOfDoku_Parser_Formatting');
- }
-
- function testStrong() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('abc **bar** def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('strong_open',array()),
- array('cdata',array('bar')),
- array('strong_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotStrong() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('abc **bar def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc **bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEm() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //bar// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('emphasis_open',array()),
- array('cdata',array('bar')),
- array('emphasis_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmColon() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //Тест: // def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('emphasis_open',array()),
- array('cdata',array('Тест: ')),
- array('emphasis_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmSingleChar() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //b// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('emphasis_open',array()),
- array('cdata',array('b')),
- array('emphasis_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmWithUnknownSchema() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //foo:// bar// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('emphasis_open',array()),
- array('cdata',array('foo:')),
- array('emphasis_close',array()),
- array('cdata',array(' bar// def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmWithKnownSchema() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse('abc //foo http://www.google.com bar// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('emphasis_open',array()),
- array('cdata',array('foo ')),
- array('externallink',array('http://www.google.com', NULL)),
- array('cdata',array(' bar')),
- array('emphasis_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotEm() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //bar def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc //bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotEmSchemaAtOpen() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc foo://bar// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc foo:')),
- array('emphasis_open',array()),
- array('cdata',array('bar')),
- array('emphasis_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotEmSchemaAtClose() {
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc //http:// def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc //http:// def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmWithMultiOccurence() {
- // Case from #763
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('//text:// Blablabla Blablabla
-
-//text:// another Blablabla Blablabla');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n")),
- array('emphasis_open',array()),
- array('cdata',array('text:')),
- array('emphasis_close',array()),
- array('cdata',array(" Blablabla Blablabla\n\n")),
- array('emphasis_open',array()),
- array('cdata',array('text:')),
- array('emphasis_close',array()),
- array('cdata',array(" another Blablabla Blablabla")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmWithUnicode() {
- // Case from #1468
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('//Тест://');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n")),
- array('emphasis_open',array()),
- array('cdata',array('Тест:')),
- array('emphasis_close',array()),
- array('cdata', array('')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNoEmWithInvalidURL() {
- // Case from #1629
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('http://<CertificateServerName>/certsrv/certcarc.asp');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('http://<CertificateServerName>/certsrv/certcarc.asp')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNoEmWithUnknownURL() {
- // Case from #1640
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('svn://example.com/foo/bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('svn://example.com/foo/bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnderline() {
- $this->P->addMode('underline',new Doku_Parser_Mode_Formatting('underline'));
- $this->P->parse('abc __bar__ def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('underline_open',array()),
- array('cdata',array('bar')),
- array('underline_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotUnderline() {
- $this->P->addMode('underline',new Doku_Parser_Mode_Formatting('underline'));
- $this->P->parse('abc __bar def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc __bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMonospace() {
- $this->P->addMode('monospace',new Doku_Parser_Mode_Formatting('monospace'));
- $this->P->parse("abc ''bar'' def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('monospace_open',array()),
- array('cdata',array('bar')),
- array('monospace_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotMonospace() {
- $this->P->addMode('monospace',new Doku_Parser_Mode_Formatting('monospace'));
- $this->P->parse("abc ''bar def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc ''bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSubscript() {
- $this->P->addMode('subscript',new Doku_Parser_Mode_Formatting('subscript'));
- $this->P->parse('abc <sub>bar</sub> def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('subscript_open',array()),
- array('cdata',array('bar')),
- array('subscript_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotSubscript() {
- $this->P->addMode('subscript',new Doku_Parser_Mode_Formatting('subscript'));
- $this->P->parse('abc <sub>bar def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc <sub>bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSuperscript() {
- $this->P->addMode('superscript',new Doku_Parser_Mode_Formatting('superscript'));
- $this->P->parse("abc <sup>bar</sup> def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('superscript_open',array()),
- array('cdata',array('bar')),
- array('superscript_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotSuperscript() {
- $this->P->addMode('superscript',new Doku_Parser_Mode_Formatting('superscript'));
- $this->P->parse("abc <sup>bar def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc <sup>bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDeleted() {
- $this->P->addMode('deleted',new Doku_Parser_Mode_Formatting('deleted'));
- $this->P->parse('abc <del>bar</del> def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('deleted_open',array()),
- array('cdata',array('bar')),
- array('deleted_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotDeleted() {
- $this->P->addMode('deleted',new Doku_Parser_Mode_Formatting('deleted'));
- $this->P->parse('abc <del>bar def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc <del>bar def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNestedFormatting() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->addMode('emphasis',new Doku_Parser_Mode_Formatting('emphasis'));
- $this->P->parse('abc **a//b//c** def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('strong_open',array()),
- array('cdata',array('a')),
- array('emphasis_open',array()),
- array('cdata',array('b')),
- array('emphasis_close',array()),
- array('cdata',array('c')),
- array('strong_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testIllegalNestedFormatting() {
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('abc **a**b**c** def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('strong_open',array()),
- array('cdata',array('a')),
- array('strong_close',array()),
- array('cdata',array('b')),
- array('strong_open',array()),
- array('cdata',array('c')),
- array('strong_close',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_headers.test.php b/_test/cases/inc/parser/parser_headers.test.php
deleted file mode 100644
index 688bac2eb..000000000
--- a/_test/cases/inc/parser/parser_headers.test.php
+++ /dev/null
@@ -1,286 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Headers extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Headers() {
- $this->UnitTestCase('TestOfDoku_Parser_Headers');
- }
-
- function testHeader1() {
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',1,6)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeader2() {
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',2,6)),
- array('section_open',array(2)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeader3() {
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',3,6)),
- array('section_open',array(3)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeader4() {
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',4,6)),
- array('section_open',array(4)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeader5() {
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',5,6)),
- array('section_open',array(5)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- 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 ")),
- array('p_close',array()),
- array('header',array('Header',2,6)),
- array('section_open',array(2)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $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 ")),
- array('p_close',array()),
- array('header',array('Header',2,6)),
- array('section_open',array(2)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- 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());
- $this->P->parse("abc \n ======= Header ======= \n def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc ")),
- array('p_close',array()),
- array('header',array('Header',1,6)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeaderSmall() {
- $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= Header =\n def")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-
- function testHeader1Mixed() {
- $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 ")),
- array('p_close',array()),
- array('header',array('== Header ==',1,6)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeader5Mixed() {
- $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 ")),
- array('p_close',array()),
- array('header',array('====== Header ======',5,6)),
- array('section_open',array(5)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testHeaderMultiline() {
- $this->P->addMode('header',new Doku_Parser_Mode_Header());
- $this->P->parse("abc \n== ====== Header\n ====== ==\n def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc \n== ====== Header")),
- array('p_close',array()),
- array('header',array('',1,23)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-# function testNoToc() {
-# $this->P->addMode('notoc',new Doku_Parser_Mode_NoToc());
-# $this->P->parse('abc ~~NOTOC~~ def');
-# $this->assertFalse($this->H->meta['toc']);
-# }
-
- function testHeader1Eol() {
- $this->P->addMode('header',new Doku_Parser_Mode_Header());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("abc \n ====== Header ====== \n def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array('abc ')),
- array('p_close',array()),
- array('header',array('Header',1, 6)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array(' def')),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
-
- }
-
- function testHeaderMulti2() {
- $this->P->addMode('header',new Doku_Parser_Mode_Header());
- $this->P->parse("abc \n ====== Header ====== \n def abc \n ===== Header2 ===== \n def");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc ")),
- array('p_close',array()),
- array('header',array('Header',1,6)),
- array('section_open',array(1)),
- array('p_open',array()),
- array('cdata',array("\n def abc ")),
- array('p_close',array()),
- array('section_close',array()),
- array('header',array('Header2',2,39)),
- array('section_open',array(2)),
- array('p_open',array()),
- array('cdata',array("\n def")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array())
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-}
-
diff --git a/_test/cases/inc/parser/parser_i18n.test.php b/_test/cases/inc/parser/parser_i18n.test.php
deleted file mode 100644
index 27ec3c78b..000000000
--- a/_test/cases/inc/parser/parser_i18n.test.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_i18n extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_i18n() {
- $this->UnitTestCase('TestOfDoku_Parser_i18n');
- }
-
- function testFormatting() {
- $formats = array (
- 'strong', 'emphasis', 'underline', 'monospace',
- 'subscript', 'superscript', 'deleted',
- );
- foreach ( $formats as $format ) {
- $this->P->addMode($format,new Doku_Parser_Mode_Formatting($format));
- }
- $this->P->parse("I**ñ**t__ë__r//n//â<sup>t</sup>i<sub>ô</sub>n''à''liz<del>æ</del>tiøn");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nI")),
- array('strong_open',array()),
- array('cdata',array('ñ')),
- array('strong_close',array()),
- array('cdata',array('t')),
- array('underline_open',array()),
- array('cdata',array('ë')),
- array('underline_close',array()),
- array('cdata',array('r')),
- array('emphasis_open',array()),
- array('cdata',array('n')),
- array('emphasis_close',array()),
- array('cdata',array('â')),
- array('superscript_open',array()),
- array('cdata',array('t')),
- array('superscript_close',array()),
- array('cdata',array('i')),
- array('subscript_open',array()),
- array('cdata',array('ô')),
- array('subscript_close',array()),
- array('cdata',array('n')),
- array('monospace_open',array()),
- array('cdata',array('à')),
- array('monospace_close',array()),
- array('cdata',array('liz')),
- array('deleted_open',array()),
- array('cdata',array('æ')),
- array('deleted_close',array()),
- array('cdata',array("tiøn")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testHeader() {
- $this->P->addMode('header',new Doku_Parser_Mode_Header());
- $this->P->parse("Foo\n ==== Iñtërnâtiônàlizætiøn ==== \n Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo")),
- array('p_close',array()),
- array('header',array('Iñtërnâtiônàlizætiøn',3,5)),
- array('section_open',array(3)),
- array('p_open',array()),
- array('cdata',array("\n Bar")),
- array('p_close',array()),
- array('section_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testTable() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-| Row 0 Col 1 | Iñtërnâtiônàlizætiøn | Row 0 Col 3 |
-| Row 1 Col 1 | Iñtërnâtiônàlizætiøn | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Iñtërnâtiônàlizætiøn ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Iñtërnâtiônàlizætiøn ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(153)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testAcronym() {
- $t = array('Iñtërnâtiônàlizætiøn');
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym($t));
- $this->P->parse("Foo Iñtërnâtiônàlizætiøn Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo ")),
- array('acronym',array('Iñtërnâtiônàlizætiøn')),
- array('cdata',array(" Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testInterwiki() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[wp>Iñtërnâtiônàlizætiøn|Iñtërnâtiônàlizætiøn]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('interwikilink',array('wp>Iñtërnâtiônàlizætiøn','Iñtërnâtiônàlizætiøn','wp','Iñtërnâtiônàlizætiøn')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInternalLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[x:Iñtërnâtiônàlizætiøn:y:foo_bar:z|Iñtërnâtiônàlizætiøn]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('x:Iñtërnâtiônàlizætiøn:y:foo_bar:z','Iñtërnâtiônàlizætiøn')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_links.test.php b/_test/cases/inc/parser/parser_links.test.php
deleted file mode 100644
index d0fb19570..000000000
--- a/_test/cases/inc/parser/parser_links.test.php
+++ /dev/null
@@ -1,698 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Links extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Links() {
- $this->UnitTestCase('TestOfDoku_Parser_Links');
- }
-
-
- function testExternalLinkSimple() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo http://www.google.com Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('http://www.google.com', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalLinkCase() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo HTTP://WWW.GOOGLE.COM Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('HTTP://WWW.GOOGLE.COM', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalIPv4() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo http://123.123.3.21/foo Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('http://123.123.3.21/foo', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalIPv6() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo http://[3ffe:2a00:100:7031::1]/foo Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('http://[3ffe:2a00:100:7031::1]/foo', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalMulti(){
- $this->teardown();
-
- $links = array(
- 'http://www.google.com',
- 'HTTP://WWW.GOOGLE.COM',
- 'http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html',
- 'http://[1080:0:0:0:8:800:200C:417A]/index.html',
- 'http://[3ffe:2a00:100:7031::1]',
- 'http://[1080::8:800:200C:417A]/foo',
- 'http://[::192.9.5.5]/ipng',
- 'http://[::FFFF:129.144.52.38]:80/index.html',
- 'http://[2010:836B:4179::836B:4179]',
- );
- $titles = array(false,null,'foo bar');
- foreach($links as $link){
- foreach($titles as $title){
- if($title === false){
- $source = $link;
- $name = null;
- }elseif($title === null){
- $source = "[[$link]]";
- $name = null;
- }else{
- $source = "[[$link|$title]]";
- $name = $title;
- }
- $this->signal('failinfo',$source);
-
- $this->setup();
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo $source Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array($link, $name)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- $this->teardown();
- }
- }
-
- $this->setup();
- }
-
- function testExternalLinkJavascript() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo javascript:alert('XSS'); Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo javascript:alert('XSS'); Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalWWWLink() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo www.google.com Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('http://www.google.com', 'www.google.com')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalFTPLink() {
- $this->P->addMode('externallink',new Doku_Parser_Mode_ExternalLink());
- $this->P->parse("Foo ftp.sunsite.com Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('ftp://ftp.sunsite.com', 'ftp.sunsite.com')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
- function testEmail() {
- $this->P->addMode('emaillink',new Doku_Parser_Mode_Emaillink());
- $this->P->parse("Foo <bugs@php.net> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('emaillink',array('bugs@php.net', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testEmailRFC2822() {
- $this->P->addMode('emaillink',new Doku_Parser_Mode_Emaillink());
- $this->P->parse("Foo <~fix+bug's.for/ev{e}r@php.net> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('emaillink',array("~fix+bug's.for/ev{e}r@php.net", NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testEmailCase() {
- $this->P->addMode('emaillink',new Doku_Parser_Mode_Emaillink());
- $this->P->parse("Foo <bugs@pHp.net> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('emaillink',array('bugs@pHp.net', NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-
- function testInternalLinkOneChar() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[l]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('l',NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInternalLinkNoChar() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('',NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInternalLinkNamespaceNoTitle() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[foo:bar]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('foo:bar',NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInternalLinkNamespace() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[x:1:y:foo_bar:z|Test]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('x:1:y:foo_bar:z','Test')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInternalLinkSectionRef() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[wiki:syntax#internal|Syntax]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('wiki:syntax#internal','Syntax')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testExternalInInternalLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[http://www.google.com|Google]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('http://www.google.com','Google')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInterwikiLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[iw>somepage|Some Page]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('interwikilink',array('iw>somepage','Some Page','iw','somepage')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInterwikiLinkCase() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[IW>somepage|Some Page]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('interwikilink',array('IW>somepage','Some Page','iw','somepage')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testInterwikiPedia() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[wp>Callback_(computer_science)|callbacks]] Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('interwikilink',array('wp>Callback_(computer_science)','callbacks','wp','Callback_(computer_science)')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testCamelCase() {
- $this->P->addMode('camelcaselink',new Doku_Parser_Mode_CamelCaseLink());
- $this->P->parse("Foo FooBar Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('camelcaselink',array('FooBar')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testFileLink() {
- $this->P->addMode('filelink',new Doku_Parser_Mode_FileLink());
- $this->P->parse('Foo file://temp/file.txt Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('filelink',array('file://temp/file.txt ',NULL)),
- array('cdata',array('Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testFileLinkInternal() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse('Foo [[file://temp/file.txt|Some File]] Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externallink',array('file://temp/file.txt','Some File')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testWindowsShareLink() {
- $this->P->addMode('windowssharelink',new Doku_Parser_Mode_WindowsShareLink());
- $this->P->parse('Foo \\\server\share Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('windowssharelink',array('\\\server\share',NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testWindowsShareLinkHyphen() {
- $this->P->addMode('windowssharelink',new Doku_Parser_Mode_WindowsShareLink());
- $this->P->parse('Foo \\\server\share-hyphen Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('windowssharelink',array('\\\server\share-hyphen',NULL)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testWindowsShareLinkInternal() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse('Foo [[\\\server\share|My Documents]] Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('windowssharelink',array('\\\server\share','My Documents')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternal() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,NULL,NULL,NULL,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalLinkOnly() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif?linkonly}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,NULL,NULL,NULL,'cache','linkonly')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaNotImage() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{foo.txt?10x10|Some File}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('foo.txt','Some File',null,10,10,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalLAlign() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif }} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,'left',NULL,NULL,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalRAlign() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{ img.gif}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,'right',NULL,NULL,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalCenter() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{ img.gif }} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,'center',NULL,NULL,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalParams() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif?50x100nocache}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif',NULL,NULL,'50','100','nocache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInternalTitle() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif?50x100|Some Image}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',array('img.gif','Some Image',NULL,'50','100','cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaExternal() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{http://www.google.com/img.gif}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externalmedia',array('http://www.google.com/img.gif',NULL,NULL,NULL,NULL,'cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaExternalParams() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{http://www.google.com/img.gif?50x100nocache}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externalmedia',array('http://www.google.com/img.gif',NULL,NULL,'50','100','nocache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaExternalTitle() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{http://www.google.com/img.gif?50x100|Some Image}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('externalmedia',
- array('http://www.google.com/img.gif','Some Image',NULL,'50','100','cache','details')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInInternalLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[x:1:y:foo_bar:z|{{img.gif?10x20nocache|Some Image}}]] Bar");
-
- $image = array(
- 'type'=>'internalmedia',
- 'src'=>'img.gif',
- 'title'=>'Some Image',
- 'align'=>NULL,
- 'width'=>10,
- 'height'=>20,
- 'cache'=>'nocache',
- 'linking'=>'details',
- );
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('x:1:y:foo_bar:z',$image)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaNoImageInInternalLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[x:1:y:foo_bar:z|{{foo.txt?10x20nocache|Some Image}}]] Bar");
-
- $image = array(
- 'type'=>'internalmedia',
- 'src'=>'foo.txt',
- 'title'=>'Some Image',
- 'align'=>NULL,
- 'width'=>10,
- 'height'=>20,
- 'cache'=>'nocache',
- 'linking'=>'details',
- );
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internallink',array('x:1:y:foo_bar:z',$image)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testMediaInEmailLink() {
- $this->P->addMode('internallink',new Doku_Parser_Mode_InternalLink());
- $this->P->parse("Foo [[foo@example.com|{{img.gif?10x20nocache|Some Image}}]] Bar");
-
- $image = array(
- 'type'=>'internalmedia',
- 'src'=>'img.gif',
- 'title'=>'Some Image',
- 'align'=>NULL,
- 'width'=>10,
- 'height'=>20,
- 'cache'=>'nocache',
- 'linking'=>'details',
- );
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('emaillink',array('foo@example.com',$image)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
- function testNestedMedia() {
- $this->P->addMode('media',new Doku_Parser_Mode_Media());
- $this->P->parse('Foo {{img.gif|{{foo.gif|{{bar.gif|Bar}}}}}} Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('internalmedia',
- array('img.gif','{{foo.gif|{{bar.gif|Bar',NULL,NULL,NULL,'cache','details')),
- array('cdata',array('}}}} Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-
-}
-
diff --git a/_test/cases/inc/parser/parser_lists.test.php b/_test/cases/inc/parser/parser_lists.test.php
deleted file mode 100644
index 6e61da1a1..000000000
--- a/_test/cases/inc/parser/parser_lists.test.php
+++ /dev/null
@@ -1,397 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Lists extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Lists() {
- $this->UnitTestCase('TestOfDoku_Parser_Lists');
- }
-
- function testUnorderedList() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse('
- *A
- * B
- * C
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testOrderedList() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse('
- -A
- - B
- - C
-');
- $calls = array (
- array('document_start',array()),
- array('listo_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listo_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
-
- function testMixedList() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse('
- -A
- * B
- - C
-');
- $calls = array (
- array('document_start',array()),
- array('listo_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnorderedListWinEOL() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse("\r\n *A\r\n * B\r\n * C\r\n");
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testOrderedListWinEOL() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse("\r\n -A\r\n - B\r\n - C\r\n");
- $calls = array (
- array('document_start',array()),
- array('listo_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listo_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testNotAList() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse("Foo -bar *foo Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nFoo -bar *foo Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnorderedListParagraph() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse('Foo
- *A
- * B
- * C
-Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("Foo")),
- array('p_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('p_open',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // This is really a failing test - formatting able to spread across list items
- // Problem is fixing it would mean a major rewrite of lists
- function testUnorderedListStrong() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('
- ***A**
- *** B
- * C**
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('strong_open',array()),
- array('cdata',array("A")),
- array('strong_close',array()),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('strong_open',array()),
- array('cdata',array(" B\n * C")),
- array('strong_close',array()),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // This is really a failing test - unformatted able to spread across list items
- // Problem is fixing it would mean a major rewrite of lists
- function testUnorderedListUnformatted() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse('
- *%%A%%
- *%% B
- * C%%
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('unformatted',array("A")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('unformatted',array(" B\n * C")),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnorderedListLinebreak() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->parse('
- *A\\\\ D
- * B
- * C
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('linebreak',array()),
- array('cdata',array("D")),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' C')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnorderedListLinebreak2() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->parse('
- *A\\\\
- * B
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array("A")),
- array('linebreak',array()),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(' B')),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testUnorderedListFootnote() {
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->addMode('footnote',new Doku_Parser_Mode_Footnote());
- $this->P->parse('
- *((A))
- *(( B
- * C ))
-
-');
- $calls = array (
- array('document_start',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('nest', array( array(
- array('footnote_open',array()),
- array('cdata',array("A")),
- array('footnote_close',array())
- ))),
- array('listcontent_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(2)),
- array('listcontent_open',array()),
- array('nest', array( array(
- array('footnote_open',array()),
- array('cdata',array(" B")),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(" C )) ")),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('cdata',array("\n\n")),
- array('footnote_close',array())
- ))),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('document_end',array())
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_preformatted.test.php b/_test/cases/inc/parser/parser_preformatted.test.php
deleted file mode 100644
index 7a00f3599..000000000
--- a/_test/cases/inc/parser/parser_preformatted.test.php
+++ /dev/null
@@ -1,235 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Preformatted extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Preformatted() {
- $this->UnitTestCase('TestOfDoku_Parser_Preformatted');
- }
-
- function testFile() {
- $this->P->addMode('file',new Doku_Parser_Mode_File());
- $this->P->parse('Foo <file>testing</file> Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('file',array('testing',null,null)),
- array('p_open',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCode() {
- $this->P->addMode('code',new Doku_Parser_Mode_Code());
- $this->P->parse('Foo <code>testing</code> Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('code',array('testing', null, null)),
- array('p_open',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCodeWhitespace() {
- $this->P->addMode('code',new Doku_Parser_Mode_Code());
- $this->P->parse("Foo <code \n>testing</code> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('code',array('testing', null, null)),
- array('p_open',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCodeLang() {
- $this->P->addMode('code',new Doku_Parser_Mode_Code());
- $this->P->parse("Foo <code php>testing</code> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('code',array('testing', 'php', null)),
- array('p_open',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPreformatted() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->parse("F oo\n x \n y \nBar\n");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nF oo")),
- array('p_close',array()),
- array('preformatted',array("x \n y ")),
- array('p_open',array()),
- array('cdata',array('Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPreformattedWinEOL() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->parse("F oo\r\n x \r\n y \r\nBar\r\n");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nF oo")),
- array('p_close',array()),
- array('preformatted',array("x \n y ")),
- array('p_open',array()),
- array('cdata',array('Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPreformattedTab() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->parse("F oo\n\tx\t\n\t\ty\t\nBar\n");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nF oo")),
- array('p_close',array()),
- array('preformatted',array("x\t\n\ty\t")),
- array('p_open',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPreformattedTabWinEOL() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->parse("F oo\r\n\tx\t\r\n\t\ty\t\r\nBar\r\n");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nF oo")),
- array('p_close',array()),
- array('preformatted',array("x\t\n\ty\t")),
- array('p_open',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPreformattedList() {
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->addMode('listblock',new Doku_Parser_Mode_ListBlock());
- $this->P->parse(" - x \n * y \nF oo\n x \n y \n -X\n *Y\nBar\n");
- $calls = array (
- array('document_start',array()),
- array('listo_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(" x ")),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listo_close',array()),
- array('listu_open',array()),
- array('listitem_open',array(1)),
- array('listcontent_open',array()),
- array('cdata',array(" y ")),
- array('listcontent_close',array()),
- array('listitem_close',array()),
- array('listu_close',array()),
- array('p_open',array()),
- array('cdata',array("F oo")),
- array('p_close',array()),
- array('preformatted',array("x \n y \n-X\n*Y")),
- array('p_open',array()),
- array('cdata',array("Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // test for php
- function testPHP() {
-
- $this->P->addMode('php',new Doku_Parser_Mode_PHP());
- $this->P->parse('Foo <php>testing</php> Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('php',array('testing')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // test with for HTML
- function testHTML() {
-
- $this->P->addMode('html',new Doku_Parser_Mode_HTML());
- $this->P->parse('Foo <html>testing</html> Bar');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('html',array('testing')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
-
-
- function testPreformattedPlusHeaderAndEol() {
- // Note that EOL must come after preformatted!
- $this->P->addMode('preformatted',new Doku_Parser_Mode_Preformatted());
- $this->P->addMode('header',new Doku_Parser_Mode_Header());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("F oo\n ==Test==\n y \nBar\n");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("F oo")),
- array('p_close',array()),
- array('preformatted',array("==Test==\n y ")),
- array('p_open',array()),
- array('cdata',array('Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_quote.test.php b/_test/cases/inc/parser/parser_quote.test.php
deleted file mode 100644
index ebc5da604..000000000
--- a/_test/cases/inc/parser/parser_quote.test.php
+++ /dev/null
@@ -1,98 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Quote extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Quote() {
- $this->UnitTestCase('TestOfDoku_Parser_Quote');
- }
-
- function testQuote() {
- $this->P->addMode('quote',new Doku_Parser_Mode_Quote());
- $this->P->parse("abc\n> def\n>>ghi\nklm");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc")),
- array('p_close',array()),
- array('quote_open',array()),
- array('cdata',array(" def")),
- array('quote_open',array()),
- array('cdata',array("ghi")),
- array('quote_close',array()),
- array('quote_close',array()),
- array('p_open',array()),
- array('cdata',array("klm")),
- array('p_close',array()),
- array('document_end',array()),
-
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testQuoteWinCr() {
- $this->P->addMode('quote',new Doku_Parser_Mode_Quote());
- $this->P->parse("abc\r\n> def\r\n>>ghi\r\nklm");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\nabc")),
- array('p_close',array()),
- array('quote_open',array()),
- array('cdata',array(" def")),
- array('quote_open',array()),
- array('cdata',array("ghi")),
- array('quote_close',array()),
- array('quote_close',array()),
- array('p_open',array()),
- array('cdata',array("klm")),
- array('p_close',array()),
- array('document_end',array()),
-
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testQuoteMinumumContext() {
- $this->P->addMode('quote',new Doku_Parser_Mode_Quote());
- $this->P->parse("\n> def\n>>ghi\n ");
- $calls = array (
- array('document_start',array()),
- array('quote_open',array()),
- array('cdata',array(" def")),
- array('quote_open',array()),
- array('cdata',array("ghi")),
- array('quote_close',array()),
- array('quote_close',array()),
- array('document_end',array()),
-
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testQuoteEol() {
- $this->P->addMode('quote',new Doku_Parser_Mode_Quote());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse("abc\n> def\n>>ghi\nklm");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("abc")),
- array('p_close',array()),
- array('quote_open',array()),
- array('cdata',array(" def")),
- array('quote_open',array()),
- array('cdata',array("ghi")),
- array('quote_close',array()),
- array('quote_close',array()),
- array('p_open',array()),
- array('cdata',array("klm")),
- array('p_close',array()),
- array('document_end',array()),
-
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
-}
-
diff --git a/_test/cases/inc/parser/parser_quotes.test.php b/_test/cases/inc/parser/parser_quotes.test.php
deleted file mode 100644
index 77e323799..000000000
--- a/_test/cases/inc/parser/parser_quotes.test.php
+++ /dev/null
@@ -1,273 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser {
-
- function setup() {
- parent::setup();
- global $conf;
- $conf['typography'] = 2;
- }
-
- function TestOfDoku_Parser_Quotes() {
- $this->UnitTestCase('TestOfDoku_Parser_Quotes');
- }
-
- function testSingleQuoteOpening() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo 'hello Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('singlequoteopening',array()),
- array('cdata',array('hello Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleQuoteOpeningSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo said:'hello Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo said:')),
- array('singlequoteopening',array()),
- array('cdata',array('hello Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleQuoteClosing() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo hello' Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo hello')),
- array('singlequoteclosing',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleQuoteClosingSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo hello') Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo hello')),
- array('singlequoteclosing',array()),
- array('cdata',array(') Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleQuotes() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo 'hello' Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('singlequoteopening',array()),
- array('cdata',array('hello')),
- array('singlequoteclosing',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testApostrophe() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("hey it's fine weather today");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'hey it')),
- array('apostrophe',array()),
- array('cdata',array('s fine weather today')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
-
- function testSingleQuotesSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse("Foo ('hello') Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo (')),
- array('singlequoteopening',array()),
- array('cdata',array('hello')),
- array('singlequoteclosing',array()),
- array('cdata',array(') Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuoteOpening() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo "hello Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('doublequoteopening',array()),
- array('cdata',array('hello Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuoteOpeningSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo said:"hello Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo said:')),
- array('doublequoteopening',array()),
- array('cdata',array('hello Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuoteClosing() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo hello" Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo hello')),
- array('doublequoteclosing',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuoteClosingSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo hello") Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo hello')),
- array('doublequoteclosing',array()),
- array('cdata',array(') Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuotes() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo "hello" Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('doublequoteopening',array()),
- array('cdata',array('hello')),
- array('doublequoteclosing',array()),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testDoubleQuotesSpecial() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('Foo ("hello") Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo (')),
- array('doublequoteopening',array()),
- array('cdata',array('hello')),
- array('doublequoteclosing',array()),
- array('cdata',array(') Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testAllQuotes() {
- $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes());
- $this->P->parse('There was written "He thought \'It\'s a man\'s world\'".');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'There was written ')),
- array('doublequoteopening',array()),
- array('cdata',array('He thought ')),
- array('singlequoteopening',array()),
- array('cdata',array('It')),
- array('apostrophe',array()),
- array('cdata',array('s a man')),
- array('apostrophe',array()),
- array('cdata',array('s world')),
- array('singlequoteclosing',array()),
- array('doublequoteclosing',array()),
- array('cdata',array(".")),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
-}
-
diff --git a/_test/cases/inc/parser/parser_replacements.test.php b/_test/cases/inc/parser/parser_replacements.test.php
deleted file mode 100644
index d277560c7..000000000
--- a/_test/cases/inc/parser/parser_replacements.test.php
+++ /dev/null
@@ -1,384 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Replacements extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Replacements() {
- $this->UnitTestCase('TestOfDoku_Parser_Replacements');
- }
-
-
- function testSingleAcronym() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('FOOBAR')));
- $this->P->parse('abc FOOBAR xyz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('acronym',array('FOOBAR')),
- array('cdata',array(' xyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testAlmostAnAcronym() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('FOOBAR')));
- $this->P->parse('abcFOOBARxyz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abcFOOBARxyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testPickAcronymCorrectly() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('FOO')));
- $this->P->parse('FOOBAR FOO');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'FOOBAR ')),
- array('acronym',array('FOO')),
- array('cdata',array('')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultipleAcronyms() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('FOO','BAR')));
- $this->P->parse('abc FOO def BAR xyz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('acronym',array('FOO')),
- array('cdata',array(' def ')),
- array('acronym',array('BAR')),
- array('cdata',array(' xyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
-
- }
-
- function testMultipleAcronymsWithSubset1() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('FOO','A.FOO','FOO.1','A.FOO.1')));
- $this->P->parse('FOO A.FOO FOO.1 A.FOO.1');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n")),
- array('acronym',array('FOO')),
- array('cdata',array(" ")),
- array('acronym',array('A.FOO')),
- array('cdata',array(" ")),
- array('acronym',array('FOO.1')),
- array('cdata',array(" ")),
- array('acronym',array('A.FOO.1')),
- array('cdata',array('')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultipleAcronymsWithSubset2() {
- $this->P->addMode('acronym',new Doku_Parser_Mode_Acronym(array('A.FOO.1','FOO.1','A.FOO','FOO')));
- $this->P->parse('FOO A.FOO FOO.1 A.FOO.1');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n")),
- array('acronym',array('FOO')),
- array('cdata',array(" ")),
- array('acronym',array('A.FOO')),
- array('cdata',array(" ")),
- array('acronym',array('FOO.1')),
- array('cdata',array(" ")),
- array('acronym',array('A.FOO.1')),
- array('cdata',array('')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- 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("\nabc:-)xyz")),
- 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')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- 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("\nabc:-)x^_^yz")),
- 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('smiley',array('^_^')),
- array('cdata',array(' yz')),
- 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")),
- 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');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('smiley',array(':-\\\\')),
- array('cdata',array(' xyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleWordblock() {
- $this->P->addMode('wordblock',new Doku_Parser_Mode_Wordblock(array('CAT')));
- $this->P->parse('abc CAT xyz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('wordblock',array('CAT')),
- array('cdata',array(' xyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testWordblockCase() {
- $this->P->addMode('wordblock',new Doku_Parser_Mode_Wordblock(array('CAT')));
- $this->P->parse('abc cat xyz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('wordblock',array('cat')),
- array('cdata',array(' xyz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultipleWordblock() {
- $this->P->addMode('wordblock',new Doku_Parser_Mode_Wordblock(array('CAT','dog')));
- $this->P->parse('abc cat x DOG yz');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'abc ')),
- array('wordblock',array('cat')),
- array('cdata',array(' x ')),
- array('wordblock',array('DOG')),
- array('cdata',array(' yz')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testSingleEntity() {
- $this->P->addMode('entity',new Doku_Parser_Mode_Entity(array('->')));
- $this->P->parse('x -> y');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'x ')),
- array('entity',array('->')),
- array('cdata',array(' y')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultipleEntities() {
- $this->P->addMode('entity',new Doku_Parser_Mode_Entity(array('->','<-')));
- $this->P->parse('x -> y <- z');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'x ')),
- array('entity',array('->')),
- array('cdata',array(' y ')),
- array('entity',array('<-')),
- array('cdata',array(' z')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultiplyEntity() {
- $this->P->addMode('multiplyentity',new Doku_Parser_Mode_MultiplyEntity());
- $this->P->parse('Foo 10x20 Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('multiplyentity',array(10,20)),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testMultiplyEntityHex() {
- // the multiply entity pattern should not match hex numbers, eg. 0x123
- $this->P->addMode('multiplyentity',new Doku_Parser_Mode_MultiplyEntity());
- $this->P->parse('Foo 0x123 Bar');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo 0x123 Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testHR() {
- $this->P->addMode('hr',new Doku_Parser_Mode_HR());
- $this->P->parse("Foo \n ---- \n Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('hr',array()),
- array('p_open',array()),
- array('cdata',array("\n Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testHREol() {
- $this->P->addMode('hr',new Doku_Parser_Mode_HR());
- $this->P->parse("Foo \n----\n Bar");
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('p_close',array()),
- array('hr',array()),
- array('p_open',array()),
- array('cdata',array("\n Bar")),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_table.test.php b/_test/cases/inc/parser/parser_table.test.php
deleted file mode 100644
index 12898860c..000000000
--- a/_test/cases/inc/parser/parser_table.test.php
+++ /dev/null
@@ -1,576 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Table extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Table() {
- $this->UnitTestCase('TestOfDoku_Parser_Table');
- }
-
- function testTable() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-| Row 0 Col 1 | Row 0 Col 2 | Row 0 Col 3 |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(121)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testTableWinEOL() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse("\r\nabc\r\n| Row 0 Col 1 | Row 0 Col 2 | Row 0 Col 3 |\r\n| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |\r\ndef");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(121)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testEmptyTable() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-|
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(0, 1, 6)),
- array('tablerow_open',array()),
- array('tablerow_close',array()),
- array('table_close',array(7)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testTableHeaders() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-^ X | Y ^ Z |
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 1, 6)),
- array('tablerow_open',array()),
- array('tableheader_open',array(1,NULL,1)),
- array('cdata',array(' X ')),
- array('tableheader_close',array()),
- array('tablecell_open',array(1,NULL,1)),
- array('cdata',array(' Y ')),
- array('tablecell_close',array()),
- array('tableheader_open',array(1,NULL,1)),
- array('cdata',array(' Z ')),
- array('tableheader_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(19)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
-
- }
-
- function testCellAlignment() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-| X | Y ^ Z |
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 1, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'right',1)),
- array('cdata',array(' X ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Y ')),
- array('tablecell_close',array()),
- array('tableheader_open',array(1,'center',1)),
- array('cdata',array(' Z ')),
- array('tableheader_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(23)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCellSpan() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-| d || e |
-| f ^ ^|
-||||
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 3, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(2,'right',1)),
- array('cdata',array(' d ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,NULL,1)),
- array('cdata',array(' e ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,NULL,1)),
- array('cdata',array(' f ')),
- array('tablecell_close',array()),
- array('tableheader_open',array(2,NULL,1)),
- array('cdata',array(' ')),
- array('tableheader_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablerow_close',array()),
- array('table_close',array(31)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCellRowSpan() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->parse('
-abc
-| a | c:::||
-|:::^ d | e|
-|b ^ ::: |:::f|
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 3, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,NULL,2)),
- array('cdata',array(' a ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(2,'right',1)),
- array('cdata',array(' c:::')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tableheader_open',array(1,'left',2)),
- array('cdata',array(' d ')),
- array('tableheader_close',array()),
- array('tablecell_open',array(1,NULL,1)),
- array('cdata',array(' e')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array('b ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,NULL,1)),
- array('cdata',array(':::f')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(51)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testCellAlignmentFormatting() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('
-abc
-| **X** | Y ^ Z |
-def');
-
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 1, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'right',1)),
- array('cdata',array(' ')),
- array('strong_open',array()),
- array('cdata',array('X')),
- array('strong_close',array()),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Y ')),
- array('tablecell_close',array()),
- array('tableheader_open',array(1,'center',1)),
- array('cdata',array(' Z ')),
- array('tableheader_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(27)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
-
- }
-
- function testTableEol() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('eol',new Doku_Parser_Mode_Eol());
- $this->P->parse('
-abc
-| Row 0 Col 1 | Row 0 Col 2 | Row 0 Col 3 |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("abc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(121)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // This is really a failing test - formatting able to spread across cols
- // Problem is fixing it would mean a major rewrite of table handling
- function testTableStrong() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong'));
- $this->P->parse('
-abc
-| **Row 0 Col 1** | **Row 0 Col 2 | Row 0 Col 3** |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('strong_open',array()),
- array('cdata',array('Row 0 Col 1')),
- array('strong_close',array()),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('strong_open',array()),
- array('cdata',array('Row 0 Col 2 | Row 0 Col 3')),
- array('strong_close',array()),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,null,1)),
- array('cdata',array('')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(129)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // This is really a failing test - unformatted able to spread across cols
- // Problem is fixing it would mean a major rewrite of table handling
- function testTableUnformatted() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse('
-abc
-| <nowiki>Row 0 Col 1</nowiki> | <nowiki>Row 0 Col 2 | Row 0 Col 3</nowiki> |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('unformatted',array('Row 0 Col 1')),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('unformatted',array('Row 0 Col 2 | Row 0 Col 3')),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,null,1)),
- array('cdata',array('')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(155)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- function testTableLinebreak() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('linebreak',new Doku_Parser_Mode_Linebreak());
- $this->P->parse('
-abc
-| Row 0\\\\ Col 1 | Row 0 Col 2 | Row 0 Col 3 |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0')),
- array('linebreak',array()),
- array('cdata',array('Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 0 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(123)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-
- // This is really a failing test - footnote able to spread across cols
- // Problem is fixing it would mean a major rewrite of table handling
- function testTableFootnote() {
- $this->P->addMode('table',new Doku_Parser_Mode_Table());
- $this->P->addMode('footnote',new Doku_Parser_Mode_Footnote());
- $this->P->parse('
-abc
-| ((Row 0 Col 1)) | ((Row 0 Col 2 | Row 0 Col 3)) |
-| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
-def');
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n\nabc")),
- array('p_close',array()),
- array('table_open',array(3, 2, 6)),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array('Row 0 Col 1')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' ')),
- array('nest', array ( array (
- array('footnote_open',array()),
- array('cdata',array('Row 0 Col 2 | Row 0 Col 3')),
- array('footnote_close',array()),
- ))),
- array('cdata',array(' ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,null,1)),
- array('cdata',array('')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('tablerow_open',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 1 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 2 ')),
- array('tablecell_close',array()),
- array('tablecell_open',array(1,'left',1)),
- array('cdata',array(' Row 1 Col 3 ')),
- array('tablecell_close',array()),
- array('tablerow_close',array()),
- array('table_close',array(129)),
- array('p_open',array()),
- array('cdata',array('def')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripbyteindex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/parser_unformatted.test.php b/_test/cases/inc/parser/parser_unformatted.test.php
deleted file mode 100644
index dd69564b4..000000000
--- a/_test/cases/inc/parser/parser_unformatted.test.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-require_once 'parser.inc.php';
-
-class TestOfDoku_Parser_Unformatted extends TestOfDoku_Parser {
-
- function TestOfDoku_Parser_Unformatted() {
- $this->UnitTestCase('TestOfDoku_Parser_Unformatted');
- }
-
- function testNowiki() {
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse("Foo <nowiki>testing</nowiki> Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('unformatted',array('testing')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
-
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
-
- }
-
- function testDoublePercent() {
- $this->P->addMode('unformatted',new Doku_Parser_Mode_Unformatted());
- $this->P->parse("Foo %%testing%% Bar");
- $calls = array (
- array('document_start',array()),
- array('p_open',array()),
- array('cdata',array("\n".'Foo ')),
- array('unformatted',array('testing')),
- array('cdata',array(' Bar')),
- array('p_close',array()),
- array('document_end',array()),
- );
- $this->assertEqual(array_map('stripByteIndex',$this->H->calls),$calls);
- }
-}
-
diff --git a/_test/cases/inc/parser/xhtml_htmlphp.test.php b/_test/cases/inc/parser/xhtml_htmlphp.test.php
deleted file mode 100644
index 65d64e579..000000000
--- a/_test/cases/inc/parser/xhtml_htmlphp.test.php
+++ /dev/null
@@ -1,203 +0,0 @@
-<?php
-if (!defined('DOKU_BASE')) define('DOKU_BASE','./');
-
-require_once 'parser.inc.php';
-require_once DOKU_INC.'inc/parser/xhtml.php';
-require_once DOKU_INC.'inc/geshi.php';
-
-if (!extension_loaded('runkit')) {
- SimpleTestOptions::ignore('xhtml_htmlphp_test');
- trigger_error('Skipping xhtml_htmlphp_test - http://www.php.net/runkit required');
-}
-
-function xhtml_htmlphp_test_io_makefiledir() {
- return;
-}
-function xhtml_htmlphp_test_io_savefile() {
- return true;
-}
-
-
-class Doku_Renderer_tester extends Doku_Renderer_xhtml {
-
-/*
- changes to these tests remove the need to redefine any xhtml methods
- class left for future use
- */
-
-}
-
-/*
- * test case for parser/xhtml.php _headertolink method
- * definition: function _headertolink($title,$create)
- */
-
-class xhtml_htmlphp_test extends TestOfDoku_Parser {
-
- var $purge;
- var $cachedir;
-
- function setup() {
- global $conf;
-
- // set purge to avoid trying to retrieve from cache
- $this->purge = isset($_REQUEST['purge']) ? $_REQUEST['purge'] : null;
- $_REQUEST['purge'] = 1;
-
- if (!isset($conf['cachedir'])) {
- $conf['cachedir'] = '';
- $this->cachedir = false;
- } else {
- $this->cachedir = true;
- }
-
- if (function_exists('io_makefiledir')) {
- runkit_function_rename('io_makefiledir', 'io_makefiledir_real');
- }
- runkit_function_rename('xhtml_htmlphp_test_io_makefiledir','io_makefiledir');
-
- if (function_exists('io_savefile')) {
- runkit_function_rename('io_savefile', 'io_savefile_real');
- }
- runkit_function_rename('xhtml_htmlphp_test_io_savefile','io_savefile');
-
- runkit_method_rename('GeSHi','parse_code','parse_code_real');
- runkit_method_add('GeSHi','parse_code','', '{ return hsc($this->source); }');
-
- parent::setup();
- }
-
- function teardown() {
- global $conf;
-
- // restore purge
- if (is_null($this->purge)) unset($_REQUEST['purge']);
- else $_REQUEST['purge'] = $this->purge;
-
- // restore $conf['cachedir'] if necessary
- if (!$this->cachedir) unset($conf['cachedir']);
-
- // restore io_functions
- runkit_function_rename('io_makefiledir','xhtml_htmlphp_test_io_makefiledir');
- if (function_exists('io_makefiledir_real')) {
- runkit_function_rename('io_makefiledir_real', 'io_makefiledir');
- }
-
- runkit_function_rename('io_savefile','xhtml_htmlphp_test_io_savefile');
- if (function_exists('io_savefile_real')) {
- runkit_function_rename('io_savefile_real', 'io_savefile');
- }
-
- // restore GeSHi::parse_code
- runkit_method_remove('GeSHi','parse_code');
- runkit_method_rename('GeSHi','parse_code_real','parse_code');
-
- parent::setup();
- }
-
- function _run_parser($modes,$data) {
-
- foreach ($modes as $mode => $name) {
- $class = 'Doku_Parser_Mode_'.$name;
- $this->P->addMode($mode,new $class());
- }
-
- $R = new Doku_Renderer_tester();
- $this->P->parse($data);
- foreach ( $this->H->calls as $instruction ) {
- // Execute the callback against the Renderer
- call_user_func_array(array(&$R, $instruction[0]),$instruction[1]);
- }
-
- return str_replace("\n",'',$R->doc);
- }
-
- function test_html_off(){
- $test = array('<html><b>bold</b></html>','<p><code class="code html4strict">&lt;b&gt;bold&lt;/b&gt;</code></p>');
-
- global $conf;
- $conf['htmlok'] = 0;
-
- $result = $this->_run_parser(array('html'=>'html'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_html_on(){
- $test = array('<html><b>bold</b></html>','<p><b>bold</b></p>');
-
- global $conf;
- $conf['htmlok'] = 1;
-
- $result = $this->_run_parser(array('html'=>'html'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_htmlblock_off(){
- $test = array('<HTML><b>bold</b></HTML>','<pre class="code html4strict">&lt;b&gt;bold&lt;/b&gt;</pre>');
-
- global $conf;
- $conf['htmlok'] = 0;
-
- $result = $this->_run_parser(array('html'=>'html'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_htmlblock_on(){
- $test = array('<HTML><b>bold</b></HTML>','<b>bold</b>');
-
- global $conf;
- $conf['htmlok'] = 1;
-
- $result = $this->_run_parser(array('html'=>'html'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_php_off(){
- $test = array('<php>echo(1+1);</php>','<p><code class="code php">echo(1+1);</code></p>');
-
- global $conf;
- $conf['phpok'] = 0;
-
- $result = $this->_run_parser(array('php'=>'php'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_php_on(){
- $test = array('<php>echo(1+1);</php>','<p>2</p>');
-
- global $conf;
- $conf['phpok'] = 1;
-
- $result = $this->_run_parser(array('php'=>'php'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_phpblock_off(){
- $test = array('<PHP>echo(1+1);</PHP>','<pre class="code php">echo(1+1);</pre>');
-
- global $conf;
- $conf['phpok'] = 0;
-
- $result = $this->_run_parser(array('php'=>'php'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
- function test_phpblock_on(){
- $test = array('<PHP>echo(1+1);</PHP>',"2");
-
- global $conf;
- $conf['phpok'] = 1;
-
- $result = $this->_run_parser(array('php'=>'php'),$test[0]);
-
- $this->assertEqual($result,$test[1]);
- }
-
-}
diff --git a/_test/cases/inc/parser/xhtml_links.test.php b/_test/cases/inc/parser/xhtml_links.test.php
deleted file mode 100644
index a9a6dfdbc..000000000
--- a/_test/cases/inc/parser/xhtml_links.test.php
+++ /dev/null
@@ -1,239 +0,0 @@
-<?php
-if (!defined('DOKU_BASE')) define('DOKU_BASE','./');
-require_once DOKU_INC.'inc/parser/xhtml.php';
-require_once DOKU_INC.'inc/pageutils.php';
-
-class xhtml_links_test extends UnitTestCase {
-
- function test_emaillink(){
- global $conf;
- $conf['mailguard'] = 'visible';
- $conf['userewrite'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->emaillink('foo@example.com','<script>alert(\'"alert"\');</script>');
-
- $expect = '<a href="mailto:foo%20%5Bat%5D%20example%20%5Bdot%5D%20com" class="mail" title="foo [at] example [dot] com">&lt;script&gt;alert(&#039;&quot;alert&quot;&#039;);&lt;/script&gt;</a>';
-
- $this->assertEqual($p->doc,$expect);
- }
-
- function test_emaillink_with_media(){
- global $conf;
- $conf['mailguard'] = 'visible';
- $conf['userewrite'] = 2;
-
- $image = array(
- 'type'=>'internalmedia',
- 'src'=>'img.gif',
- 'title'=>'Some Image',
- 'align'=>NULL,
- 'width'=>10,
- 'height'=>20,
- 'cache'=>'nocache',
- 'linking'=>'details',
- );
-
- $p = new Doku_Renderer_xhtml();
- $p->emaillink('foo@example.com',$image);
-
- $expect = '<a href="mailto:foo%20%5Bat%5D%20example%20%5Bdot%5D%20com" class="media" title="foo [at] example [dot] com"><img src="'.DOKU_BASE.'lib/exe/fetch.php/img.gif?w=10&amp;h=20&amp;cache=nocache" class="media" title="Some Image" alt="Some Image" width="10" height="20" /></a>';
-
- $this->assertEqual($p->doc,$expect);
- }
-
- /**
- * Produced by syntax like [[ ]]
- */
- function test_empty_internallink(){
- $page = 'my:space';
-
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['start'] = 'start';
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->internallink('');
-
-
- if (page_exists($page)) {
- $class = 'wikilink1';
- $rel = '';
- }
- else {
- $class = 'wikilink2';
- $rel = ' rel="nofollow"';
- }
-
- $parts = split(':', $page);
- $caption = $parts[count($parts)-1];
-
- $expect = '<span class="curid"><a href="/./doku.php?id='.$page.'" class="'.$class.'" title="'.$page.'"'.$rel.'>'.$caption.'</a></span>';
-
- $this->assertEqual($p->doc, $expect);
- }
-
- /**
- * Produced by syntax like [[ |my caption]]
- */
- function test_empty_internallink_with_caption(){
- $page = 'my:space';
- $caption = 'my caption';
-
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->internallink('', $caption);
-
- if (page_exists($page)) {
- $class = 'wikilink1';
- $rel = '';
- }
- else {
- $class = 'wikilink2';
- $rel = ' rel="nofollow"';
- }
-
- $expect = '<span class="curid"><a href="/./doku.php?id='.$page.'" class="'.$class.'" title="'.$page.'"'.$rel.'>'.$caption.'</a></span>';
-
- $this->assertEqual($p->doc, $expect);
- }
-
- /**
- * Produced by syntax like [[?do=index]]
- */
- function test_empty_internallink_index(){
- $page = 'my:space';
-
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['start'] = 'start';
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->internallink('?do=index');
-
- if (page_exists($page)) {
- $class = 'wikilink1';
- $rel = '';
- }
- else {
- $class = 'wikilink2';
- $rel = ' rel="nofollow"';
- }
-
- $parts = split(':', $page);
- $caption = $parts[count($parts)-1];
-
- $expect = '<span class="curid"><a href="/./doku.php?id='.$page.'&amp;do=index" class="'.$class.'" title="'.$page.'"'.$rel.'>'.$caption.'</a></span>';
-
- $this->assertEqual($p->doc, $expect);
- }
-
- /**
- * Produced by syntax like [[?do=index|my caption]]
- */
- function test_empty_internallink_index_with_caption(){
- $page = 'my:space';
- $caption = 'my caption';
-
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->internallink('?do=index', $caption);
-
- if (page_exists($page)) {
- $class = 'wikilink1';
- $rel = '';
- }
- else {
- $class = 'wikilink2';
- $rel = ' rel="nofollow"';
- }
-
- $expect = '<span class="curid"><a href="/./doku.php?id='.$page.'&amp;do=index" class="'.$class.'" title="'.$page.'"'.$rel.'>'.$caption.'</a></span>';
-
- $this->assertEqual($p->doc, $expect);
- }
-
- /**
- * Produced by syntax like [[#test]]
- */
- function test_empty_locallink(){
- $page = 'my:spacex';
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->locallink('test');
-
- $expect = '<a href="#test" title="'.$page.' &crarr;" class="wikilink1">test</a>';
-
- $this->assertEqual($p->doc, $expect);
- }
-
- /**
- * Produced by syntax like [[#test|my caption]]
- */
- function test_empty_locallink_with_caption(){
- $page = 'my:spacex';
- $caption = 'my caption';
-
- global $ID;
- $ID = $page;
-
- global $conf;
- $conf['basedir'] = '/';
- $conf['useheading'] = 0;
- $conf['userewrite'] = 0;
- $conf['useslash'] = 0;
- $conf['canonical'] = 0;
-
- $p = new Doku_Renderer_xhtml();
- $p->locallink('test', $caption);
-
- $expect = '<a href="#test" title="'.$page.' &crarr;" class="wikilink1">'.$caption.'</a>';
-
- $this->assertEqual($p->doc, $expect);
- }
-}