1f8369d7dSTobias Sarnowski<?php 236dc94bbSAndreas Gohr 3*be906b56SAndreas Gohruse dokuwiki\Parsing\ParserMode\Eol; 4*be906b56SAndreas Gohruse dokuwiki\Parsing\ParserMode\Quote; 536dc94bbSAndreas Gohr 6f8369d7dSTobias Sarnowskirequire_once 'parser.inc.php'; 7f8369d7dSTobias Sarnowski 8f8369d7dSTobias Sarnowskiclass TestOfDoku_Parser_Quote extends TestOfDoku_Parser { 9f8369d7dSTobias Sarnowski 10f8369d7dSTobias Sarnowski function testQuote() { 1136dc94bbSAndreas Gohr $this->P->addMode('quote',new Quote()); 12f8369d7dSTobias Sarnowski $this->P->parse("abc\n> def\n>>ghi\nklm"); 13f8369d7dSTobias Sarnowski $calls = array ( 14f8369d7dSTobias Sarnowski array('document_start',array()), 15f8369d7dSTobias Sarnowski array('p_open',array()), 16f8369d7dSTobias Sarnowski array('cdata',array("\nabc")), 17f8369d7dSTobias Sarnowski array('p_close',array()), 18f8369d7dSTobias Sarnowski array('quote_open',array()), 19f8369d7dSTobias Sarnowski array('cdata',array(" def")), 20f8369d7dSTobias Sarnowski array('quote_open',array()), 21f8369d7dSTobias Sarnowski array('cdata',array("ghi")), 22f8369d7dSTobias Sarnowski array('quote_close',array()), 23f8369d7dSTobias Sarnowski array('quote_close',array()), 24f8369d7dSTobias Sarnowski array('p_open',array()), 25f8369d7dSTobias Sarnowski array('cdata',array("klm")), 26f8369d7dSTobias Sarnowski array('p_close',array()), 27f8369d7dSTobias Sarnowski array('document_end',array()), 28f8369d7dSTobias Sarnowski 29f8369d7dSTobias Sarnowski ); 30f8369d7dSTobias Sarnowski $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); 31f8369d7dSTobias Sarnowski } 32f8369d7dSTobias Sarnowski 33f8369d7dSTobias Sarnowski function testQuoteWinCr() { 3436dc94bbSAndreas Gohr $this->P->addMode('quote',new Quote()); 35f8369d7dSTobias Sarnowski $this->P->parse("abc\r\n> def\r\n>>ghi\r\nklm"); 36f8369d7dSTobias Sarnowski $calls = array ( 37f8369d7dSTobias Sarnowski array('document_start',array()), 38f8369d7dSTobias Sarnowski array('p_open',array()), 39f8369d7dSTobias Sarnowski array('cdata',array("\nabc")), 40f8369d7dSTobias Sarnowski array('p_close',array()), 41f8369d7dSTobias Sarnowski array('quote_open',array()), 42f8369d7dSTobias Sarnowski array('cdata',array(" def")), 43f8369d7dSTobias Sarnowski array('quote_open',array()), 44f8369d7dSTobias Sarnowski array('cdata',array("ghi")), 45f8369d7dSTobias Sarnowski array('quote_close',array()), 46f8369d7dSTobias Sarnowski array('quote_close',array()), 47f8369d7dSTobias Sarnowski array('p_open',array()), 48f8369d7dSTobias Sarnowski array('cdata',array("klm")), 49f8369d7dSTobias Sarnowski array('p_close',array()), 50f8369d7dSTobias Sarnowski array('document_end',array()), 51f8369d7dSTobias Sarnowski 52f8369d7dSTobias Sarnowski ); 53f8369d7dSTobias Sarnowski $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); 54f8369d7dSTobias Sarnowski } 55f8369d7dSTobias Sarnowski 56f8369d7dSTobias Sarnowski function testQuoteMinumumContext() { 5736dc94bbSAndreas Gohr $this->P->addMode('quote',new Quote()); 58f8369d7dSTobias Sarnowski $this->P->parse("\n> def\n>>ghi\n "); 59f8369d7dSTobias Sarnowski $calls = array ( 60f8369d7dSTobias Sarnowski array('document_start',array()), 61f8369d7dSTobias Sarnowski array('quote_open',array()), 62f8369d7dSTobias Sarnowski array('cdata',array(" def")), 63f8369d7dSTobias Sarnowski array('quote_open',array()), 64f8369d7dSTobias Sarnowski array('cdata',array("ghi")), 65f8369d7dSTobias Sarnowski array('quote_close',array()), 66f8369d7dSTobias Sarnowski array('quote_close',array()), 67f8369d7dSTobias Sarnowski array('document_end',array()), 68f8369d7dSTobias Sarnowski 69f8369d7dSTobias Sarnowski ); 70f8369d7dSTobias Sarnowski $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); 71f8369d7dSTobias Sarnowski } 72f8369d7dSTobias Sarnowski 73f8369d7dSTobias Sarnowski function testQuoteEol() { 7436dc94bbSAndreas Gohr $this->P->addMode('quote',new Quote()); 7536dc94bbSAndreas Gohr $this->P->addMode('eol',new Eol()); 76f8369d7dSTobias Sarnowski $this->P->parse("abc\n> def\n>>ghi\nklm"); 77f8369d7dSTobias Sarnowski $calls = array ( 78f8369d7dSTobias Sarnowski array('document_start',array()), 79f8369d7dSTobias Sarnowski array('p_open',array()), 80f8369d7dSTobias Sarnowski array('cdata',array("abc")), 81f8369d7dSTobias Sarnowski array('p_close',array()), 82f8369d7dSTobias Sarnowski array('quote_open',array()), 83f8369d7dSTobias Sarnowski array('cdata',array(" def")), 84f8369d7dSTobias Sarnowski array('quote_open',array()), 85f8369d7dSTobias Sarnowski array('cdata',array("ghi")), 86f8369d7dSTobias Sarnowski array('quote_close',array()), 87f8369d7dSTobias Sarnowski array('quote_close',array()), 88f8369d7dSTobias Sarnowski array('p_open',array()), 89f8369d7dSTobias Sarnowski array('cdata',array("klm")), 90f8369d7dSTobias Sarnowski array('p_close',array()), 91f8369d7dSTobias Sarnowski array('document_end',array()), 92f8369d7dSTobias Sarnowski 93f8369d7dSTobias Sarnowski ); 94f8369d7dSTobias Sarnowski $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); 95f8369d7dSTobias Sarnowski } 96f8369d7dSTobias Sarnowski 97f8369d7dSTobias Sarnowski} 98f8369d7dSTobias Sarnowski 99