From 25d9aa935195ffab4f4baf5f81184d3698177a20 Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Sat, 29 Mar 2008 20:52:13 +0100 Subject: Updates to unit tests for FS#1350 patch darcs-hash:20080329195213-f07c6-e3899c9ea9a3d6b238a4bae1c57babc7251873bc.gz --- _test/cases/inc/parser/xhtml_htmlphp.test.php | 94 ++++++++++++++++++++++++--- 1 file changed, 86 insertions(+), 8 deletions(-) (limited to '_test/cases/inc/parser/xhtml_htmlphp.test.php') diff --git a/_test/cases/inc/parser/xhtml_htmlphp.test.php b/_test/cases/inc/parser/xhtml_htmlphp.test.php index acd3bbf92..3493bab4d 100644 --- a/_test/cases/inc/parser/xhtml_htmlphp.test.php +++ b/_test/cases/inc/parser/xhtml_htmlphp.test.php @@ -1,14 +1,31 @@ preformatted($text); - } +/* + changes to these tests remove the need to redefine any xhtml methods + class left for future use + */ } @@ -19,6 +36,67 @@ class Doku_Renderer_tester extends Doku_Renderer_xhtml { 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) { @@ -37,7 +115,7 @@ class xhtml_htmlphp_test extends TestOfDoku_Parser { } function test_html_off(){ - $test = array('bold','

<b>bold</b>

'); + $test = array('bold','

<b>bold</b>

'); global $conf; $conf['htmlok'] = 0; @@ -59,7 +137,7 @@ class xhtml_htmlphp_test extends TestOfDoku_Parser { } function test_htmlblock_off(){ - $test = array('bold','
<b>bold</b>
'); + $test = array('bold','
<b>bold</b>
'); global $conf; $conf['htmlok'] = 0; @@ -81,7 +159,7 @@ class xhtml_htmlphp_test extends TestOfDoku_Parser { } function test_php_off(){ - $test = array('echo(1+1);','

echo(1+1);

'); + $test = array('echo(1+1);','

echo(1+1);

'); global $conf; $conf['phpok'] = 0; @@ -103,7 +181,7 @@ class xhtml_htmlphp_test extends TestOfDoku_Parser { } function test_phpblock_off(){ - $test = array('echo(1+1);','
echo(1+1);
'); + $test = array('echo(1+1);','
echo(1+1);
'); global $conf; $conf['phpok'] = 0; -- cgit v1.2.3