diff --git a/tests/UnitTests/A_Core/SmartyBC/SmartyBcTest.php b/tests/UnitTests/A_Core/SmartyBC/SmartyBcTest.php index 8933639b..988d1a4a 100644 --- a/tests/UnitTests/A_Core/SmartyBC/SmartyBcTest.php +++ b/tests/UnitTests/A_Core/SmartyBC/SmartyBcTest.php @@ -32,6 +32,6 @@ class SmartyBcTest extends PHPUnit_Smarty */ public function testSmartyPhpTag() { - $this->assertEquals('hello world', $this->smartyBC->fetch('eval:{php} echo "hello world"; {/php}')); + $this->assertEquals('hello world', $this->smartyBC->fetch('string:{php} echo "hello world"; {/php}')); } } diff --git a/tests/UnitTests/TemplateSource/Spacing/SpacingTest.php b/tests/UnitTests/TemplateSource/Spacing/SpacingTest.php index 91f398be..bfcb7495 100644 --- a/tests/UnitTests/TemplateSource/Spacing/SpacingTest.php +++ b/tests/UnitTests/TemplateSource/Spacing/SpacingTest.php @@ -10,7 +10,7 @@ * class for spacing test * * @runTestsInSeparateProcess - * @preserveGlobalState disabled + * @preserveGlobalState disabled * @backupStaticAttributes enabled */ class SpacingTest extends PHPUnit_Smarty @@ -18,92 +18,60 @@ class SpacingTest extends PHPUnit_Smarty public function setUp() { $this->setUpSmarty(dirname(__FILE__)); - $this->smarty->assign('foo', 'bar'); } - public function testInit() { $this->cleanDirs(); } - /** - * test variable output - */ - public function testVariableSpacing1() - { - $tpl = $this->smarty->createTemplate("eval:{\$foo}", null, null, $this->smarty); - $this->assertEquals("bar", $this->smarty->fetch($tpl)); - } - - public function testVariableSpacing2() - { - $tpl = $this->smarty->createTemplate("eval:{\$foo}{\$foo}", null, null, $this->smarty); - $this->assertEquals("barbar", $this->smarty->fetch($tpl)); - } - - public function testVariableSpacing3() - { - $tpl = $this->smarty->createTemplate("eval:{\$foo} {\$foo}", null, null, $this->smarty); - $this->assertEquals("bar bar", $this->smarty->fetch($tpl)); - } /** - * test variable text combinations + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess */ - public function testVariableText1() + public function testSpacing($code, $result, $testName, $testNumber) { - $tpl = $this->smarty->createTemplate("eval:A{\$foo}B", null, null, $this->smarty); - $this->assertEquals("AbarB", $this->smarty->fetch($tpl)); + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->template_dir = './templates_tmp'; + $this->smarty->assign('file', $file); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); } - public function testVariableText2() + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() { - $tpl = $this->smarty->createTemplate("eval:A {\$foo}B", null, null, $this->smarty); - $this->assertEquals("A barB", $this->smarty->fetch($tpl)); - } - - public function testVariableText3() - { - $tpl = $this->smarty->createTemplate("eval:A{\$foo} B", null, null, $this->smarty); - $this->assertEquals("Abar B", $this->smarty->fetch($tpl)); - } - - public function testVariableText4() - { - $tpl = $this->smarty->createTemplate("eval:A{\$foo}\nB", null, null, $this->smarty); - $this->assertEquals("Abar\nB", $this->smarty->fetch($tpl)); - } - - public function testVariableText5() - { - $tpl = $this->smarty->createTemplate("eval:A{\$foo}B\nC", null, null, $this->smarty); - $this->assertEquals("AbarB\nC", $this->smarty->fetch($tpl)); - } - - /** - * test tag text combinations - */ - public function testTagText1() - { - $tpl = $this->smarty->createTemplate("eval:A{assign var=zoo value='blah'}B"); - $this->assertEquals("AB", $this->smarty->fetch($tpl)); - } - - public function testTagText2() - { - $tpl = $this->smarty->createTemplate("string:A\n{assign var=zoo value='blah'}\nB"); - $this->assertEquals("A\nB", $this->smarty->fetch($tpl)); - } - - public function testTagText3() - { - $tpl = $this->smarty->createTemplate("eval:E{assign var=zoo value='blah'}\nF"); - $this->assertEquals("EF", $this->smarty->fetch($tpl)); - } - - public function testTagText4() - { - $tpl = $this->smarty->createTemplate("eval:G\n{assign var=zoo value='blah'}H"); - $this->assertEquals("G\nH", $this->smarty->fetch($tpl)); + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array('{$foo}', 'bar', 'T1', $i++), + array('{$foo}{$foo}', 'barbar', 'T2', $i++), + array('A{$foo}{$foo}B', 'AbarbarB', 'T3', $i++), + array('{$foo} {$foo}', 'bar bar', 'T4', $i++), + array('A{$foo}B', 'AbarB', 'T5', $i++), + array('A{counter}B', 'A1B', 'T6', $i++), + array('A {$foo}B', 'A barB', 'T7', $i++), + array('A{$foo} B', 'Abar B', 'T8', $i++), + array("A{\$foo}\nB", "Abar\nB", 'T9', $i++), + array("A{counter start=1}\nB", "A1\nB", 'T10', $i++), + array("A{\$foo}B\nC", "AbarB\nC", 'T11', $i++), + array("A{assign var=zoo value='blah'}B", "AB", 'T12', $i++), + array("A\n{assign var=zoo value='blah'}\nB", "A\nB", 'T13', $i++), + array("E{assign var=zoo value='blah'}\nF", "EF", 'T14', $i++), + array("G\n{assign var=zoo value='blah'}H", "G\nH", 'T15', $i++), + ); } } diff --git a/tests/UnitTests/TemplateSource/Spacing/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/Spacing/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/Spacing/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Append/CompileAppendTest.php b/tests/UnitTests/TemplateSource/TagTests/Append/CompileAppendTest.php index 7e6c9dc4..1c671f15 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Append/CompileAppendTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Append/CompileAppendTest.php @@ -31,16 +31,17 @@ class CompileAppendTest extends PHPUnit_Smarty /** * Test {append} tags * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestAppend */ public function testAppend($code, $result, $testName, $testNumber) { - $file = "testAppend_{$testNumber}.tpl"; + $name = empty($testName) ? $testNumber : $testName; + $file = "Append_{$name}.tpl"; $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "testAppend - {$code} - {$testName}"); + $this->assertEquals($result, $this->smarty->fetch($file), "testAppend - {$code} - {$testName}"); } /* @@ -55,11 +56,94 @@ class CompileAppendTest extends PHPUnit_Smarty * test name */ return array(// old format - array('{$foo=1}{append var=foo value=2}{$foo|var_export:true}', 'array(0=>1,1=>2,)', '', $i ++), - array('{append var=foo value=2}{$foo|var_export:true}', 'array(0=>2,)', '', $i ++), - array('{append foo value=3}{$foo|var_export:true}', 'array(0=>3,)', '', $i ++), - array('{append foo 5}{$foo|var_export:true}', 'array(0=>5,)', '', $i ++), // new format - array('{$foo[]=2}{$foo|var_export:true}', 'array(0=>2,)', '', $i ++), + array('{$foo=1}{append var=foo value=2}{$foo|var_export:true}', var_export(array(0=>1,1=>2,),true), '', $i ++), + array('{$foo[\'i\']=1}{append var=foo value=2 index=\'j\'}{$foo|var_export:true}', var_export(array('i'=>1,'j'=>2,),true), '', $i ++), + array('{$bar=\'j\'}{$foo[\'i\']=1}{append var=foo value=2 index=$bar}{$foo|var_export:true}', var_export(array('i'=>1,'j'=>2,),true), '', $i ++), + array('{append var=foo value=2}{$foo|var_export:true}', var_export(array(0=>2,),true), '', $i ++), + array('{append foo value=3}{$foo|var_export:true}', var_export(array(0=>3,),true), '', $i ++), + array('{append foo 5}{$foo|var_export:true}', var_export(array(0=>5,),true), '', $i ++), // new format + array('{$foo[]=2}{$foo|var_export:true}', var_export(array(0=>2,),true), '', $i ++), + ); + } + + /** + * Test Assign spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAppendSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Append nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAppendSpacingNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Append nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAppendSpacingNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array("A{append var=buh value=\$foo}B{\$buh[0]}", "ABbar", 'Text', $i++), + array("A\n{append var=buh value=\$foo}\nB{\$buh[0]}", "A\nBbar", 'Newline1', $i++), + array("E{append var=buh value=\$foo}\nF{\$buh[0]}", "EFbar", 'Newline2', $i++), + array("G\n{append var=buh value=\$foo}H{\$buh[0]}", "G\nHbar", 'Newline3', $i++), + array("A{\$buh[]=\$foo}B{\$buh[0]}", "ABbar", '2_Text', $i++), + array("A\n{\$buh[]=\$foo}\nB{\$buh[0]}", "A\nBbar", '2_Newline1', $i++), + array("E{\$buh[]=\$foo}\nF{\$buh[0]}", "EFbar", '2_Newline2', $i++), + array("G\n{\$buh[]=\$foo}H{\$buh[0]}", "G\nHbar", '2_Newline3', $i++), ); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Append/cache/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/Append/cache/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Append/cache/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Assign/CompileAssignTest.php b/tests/UnitTests/TemplateSource/TagTests/Assign/CompileAssignTest.php index de1f9a79..b4301d59 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Assign/CompileAssignTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Assign/CompileAssignTest.php @@ -15,7 +15,6 @@ */ class CompileAssignTest extends PHPUnit_Smarty { - public function setUp() { $this->setUpSmarty(dirname(__FILE__)); @@ -38,11 +37,11 @@ class CompileAssignTest extends PHPUnit_Smarty */ public function testAssign($code, $result, $testName, $testNumber) { - $file = "testAssign_{$testNumber}.tpl"; + $file = "Assign_{$testNumber}.tpl"; $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); $this->smarty->assign('bar', 'buh'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "testAssign - {$code} - {$testName}"); + $this->assertEquals($result, $this->smarty->fetch($file), "testAssign - {$code} - {$testName}"); } /* @@ -57,30 +56,113 @@ class CompileAssignTest extends PHPUnit_Smarty * test name */ return array(// old format - array('{assign var=foo value=1}{$foo}', '1', '', $i ++), - array('{assign var=\'foo\' value=2}{$foo}', '2', '', $i ++), - array('{assign var="foo" value=3}{$foo}', '3', '', $i ++), - array('{assign var=foo value=$bar}{$foo}', 'buh', '', $i ++), - array('{assign var=$bar value=11}{$buh}', '11', '', $i ++), - array('{assign var=foo value=bar}{$foo}', 'bar', '', $i ++), - array('{assign var=foo value=1+2}{$foo}', '3', '', $i ++), - array('{assign var=foo value=strlen(\'barbuh\')}{$foo}', '6', '', $i ++), - array('{assign var=foo value=\'barr\'|strlen}{$foo}', '4', '', $i ++), - array('{assign var=foo value=[9,8,7,6]}{$foo|var_export:true}', 'array(0=>9,1=>8,2=>7,3=>6,)', '', $i ++), - array( - '{assign var=foo value=[\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6]}{$foo|var_export:true}', - 'array(\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6,)', '', $i ++, - ), array('{assign foo value=1}{$foo}', '1', '', $i ++), array('{assign foo 1}{$foo}', '1', '', $i ++), - // new format - array('{$foo=1}{$foo}', '1', '', $i ++), array('{$foo =2}{$foo}', '2', '', $i ++), - array('{$foo=bar}{$foo}', 'bar', '', $i ++), array('{$foo=1+2}{$foo}', '3', '', $i ++), - array('{$foo = 1+3}{$foo}', '4', '', $i ++), array('{$foo = 1 + 4}{$foo}', '5', '', $i ++), - array('{$foo=strlen(\'bar\')}{$foo}', '3', '', $i ++), array('{$foo=\'bar\'|strlen}{$foo}', '3', '', $i ++), - array('{$foo[\'a\'][4]=1}{$foo[\'a\'][4]}', '1', '', $i ++), - array('{$foo=[9,8,7,6]}{$foo|var_export:true}', 'array(0=>9,1=>8,2=>7,3=>6,)', '', $i ++), array( - '{$foo=[\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6]}{$foo|var_export:true}', - 'array(\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6,)', '', $i ++, - ), + array('{assign var=foo value=1}{$foo}', '1', '', $i++), + array('{assign var=\'foo\' value=2}{$foo}', '2', '', $i++), + array('{assign var="foo" value=3}{$foo}', '3', '', $i++), + array('{assign var=foo value=$bar}{$foo}', 'buh', '', $i++), + array('{assign var=$bar value=11}{$buh}', '11', '', $i++), + array('{assign var=foo value=bar}{$foo}', 'bar', '', $i++), + array('{assign var=foo value=1+2}{$foo}', '3', '', $i++), + array('{assign var=foo value=strlen(\'barbuh\')}{$foo}', '6', '', $i++), + array('{assign var=foo value=\'barr\'|strlen}{$foo}', '4', '', $i++), + array('{assign var=foo value=[9,8,7,6]}{$foo|var_export:true}', + var_export(array(9, 8, 7, 6), true), '', $i++), + array( + '{assign var=foo value=[\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6]}{$foo|var_export:true}', + var_export(array('a' => 9, 'b' => 8, 'c' => 7, 'd' => 6,), true), '', $i++,), + array('{assign foo value=1}{$foo}', '1', '', $i++), + array('{assign foo 1}{$foo}', '1', '', $i++), + // new format + array('{$foo=1}{$foo}', '1', '', $i++), + array('{$foo =2}{$foo}', '2', '', $i++), + array('{$foo=bar}{$foo}', 'bar', '', $i++), + array('{$foo=1+2}{$foo}', '3', '', $i++), + array('{$foo = 1+3}{$foo}', '4', '', $i++), + array('{$foo = 1 + 4}{$foo}', '5', '', $i++), + array('{$foo=strlen(\'bar\')}{$foo}', '3', '', $i++), + array('{$foo=\'bar\'|strlen}{$foo}', '3', '', $i++), + array('{$foo[\'a\'][4]=1}{$foo[\'a\'][4]}', '1', '', $i++), + array('{$foo=[9,8,7,6]}{$foo|var_export:true}', var_export(array(9, 8, 7, 6), true), '', $i++), + array( + '{$foo=[\'a\'=>9,\'b\'=>8,\'c\'=>7,\'d\'=>6]}{$foo|var_export:true}', + var_export(array('a' => 9, 'b' => 8, 'c' => 7, 'd' => 6,), true), '', $i++), + ); + } + + /** + * Test Assign spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAssignSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAssignSpacingNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testAssignSpacingNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array("A{assign var=buh value=\$foo}B{\$buh}", "ABbar", 'Text1', $i++), + array("A\n{assign var=buh value=\$foo}\nB{\$buh}", "A\nBbar", 'Newline1', $i++), + array("E{assign var=buh value=\$foo}\nF{\$buh}", "EFbar", 'Newline2', $i++), + array("G\n{assign var=buh value=\$foo}H{\$buh}", "G\nHbar", 'Newline3', $i++), ); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Assign/cache/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/Assign/cache/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Assign/cache/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/CompileBlockPluginTest.php b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/CompileBlockPluginTest.php index 75439b99..c6a2eee4 100644 --- a/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/CompileBlockPluginTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/CompileBlockPluginTest.php @@ -252,6 +252,7 @@ class CompileBlockPluginTest extends PHPUnit_Smarty $this->smarty->registerDefaultPluginHandler('my_block_plugin_handler'); $this->assertEquals('defaultblock hello world', $this->smarty->fetch('default2.tpl')); } + /** * test tag stack * @@ -262,7 +263,7 @@ class CompileBlockPluginTest extends PHPUnit_Smarty public function testBlockPluginTagStack() { $this->assertEquals('noop-teststack', $this->smarty->fetch('tag_stack.tpl')); - $this->assertEmpty($this->smarty->_cache['_tag_stack']); + $this->assertEmpty($this->smarty->_cache[ '_tag_stack' ]); } /** @@ -273,8 +274,16 @@ class CompileBlockPluginTest extends PHPUnit_Smarty * @dataProvider data * */ - public function testCache($isCached, $caching, $cachable, $testNumber, $compileTestNumber, $renderTestNumber, - $resultNumber, $nocache, $compileid, $testName) + public function testCache($isCached, + $caching, + $cachable, + $testNumber, + $compileTestNumber, + $renderTestNumber, + $resultNumber, + $nocache, + $compileid, + $testName) { $this->smarty->registerFilter('pre', array($this, 'prefilterTest')); $this->smarty->registerPlugin(Smarty::PLUGIN_BLOCK, 'cachetest', 'myblockplugintest2', $cachable); @@ -288,7 +297,8 @@ class CompileBlockPluginTest extends PHPUnit_Smarty $this->assertEquals($isCached, $tpl->isCached(), $testName . ' - isCached()'); } $result = $this->smarty->fetch($tpl); - $this->assertContains("test:{$testNumber} compiled:{$compileTestNumber} rendered:{$renderTestNumber}", $result, + $this->assertContains("test:{$testNumber} compiled:{$compileTestNumber} rendered:{$renderTestNumber}", + $result, $testName . ' - fetch() failure test number'); $this->assertContains("block test{$resultNumber}", $result, $testName . ' - fetch() failure result'); } @@ -308,8 +318,152 @@ class CompileBlockPluginTest extends PHPUnit_Smarty array(true, true, true, 11, 10, 10, 11, true, 3, 'not cachable isCached'), array(true, true, true, 12, 10, 10, 12, true, 3, 'not cachable isCached'),); } -} + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "testSpacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{noop}\nB{/noop}C", "ABC", 'Newline1', $i++), + array("A{noop}\nB\n{/noop}C", "AB\nC", 'Newline2', $i++), + array("A{noop}\nB{/noop}\nC", "ABC", 'Newline3', $i++), + array("A\n{noop}\nB\n{/noop}\nC", "A\nB\nC", 'Newline4', $i++), + array("A{noop}\n{\$foo}{/noop}C", "AbarC", 'Var1', $i++), + array("A{noop}\n{\$foo}\n{/noop}C", "Abar\nC", 'Var2', $i++), + array("A{noop}\n{\$foo}{/noop}\nC", "AbarC", 'Var3', $i++), + array("A\n{noop}\n{\$foo}\n{/noop}\nC", "A\nbar\nC", 'Var4', $i++), + ); + } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestDefaultSpacing + * @runInSeparateProcess + */ + public function testSpacingDefault($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "testSpacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->registerDefaultPluginHandler('my_block_plugin_handler'); + $this->smarty->compile_id='default'; + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestDefaultSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{scriptblock}\nB{/scriptblock}C", "Ascriptblock BC", 'Newline1', $i++), + array("A{scriptblock}\nB\n{/scriptblock}C", "Ascriptblock B\nC", 'Newline2', $i++), + array("A{scriptblock}\nB{/scriptblock}\nC", "Ascriptblock BC", 'Newline3', $i++), + array("A\n{scriptblock}\nB\n{/scriptblock}\nC", "A\nscriptblock B\nC", 'Newline4', $i++), + array("A{scriptblock}\n{\$foo}{/scriptblock}C", "Ascriptblock barC", 'Var1', $i++), + array("A{scriptblock}\n{\$foo}\n{/scriptblock}C", "Ascriptblock bar\nC", 'Var2', $i++), + array("A{scriptblock}\n{\$foo}{/scriptblock}\nC", "Ascriptblock barC", 'Var3', $i++), + array("A\n{scriptblock}\n{\$foo}\n{/scriptblock}\nC", "A\nscriptblock bar\nC", 'Var4', $i++), + ); + } + + /** + * Test nocache block spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestNocacheSpacing + * @runInSeparateProcess + */ + public function testBlockNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Nocache_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setCompileId('nocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('bar', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testNocache - {$file}"); + } + /** + * Test nocache block spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestNocacheSpacing + * @runInSeparateProcess + */ + public function testBlockNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Nocache_{$name}.tpl"; + $this->smarty->setCompileId('nocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('bar', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testNocache2 - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestNocacheSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{testparameter value=\$bar}\n{\$foo}{/testparameter}C", "AbarC", 'Var1', $i++), + array("A{testparameter value=\$bar}\n{\$foo}\n{/testparameter}C", "Abar\nC", 'Var2', $i++), + array("A{testparameter value=\$bar}\n{\$foo}{/testparameter}\nC", "AbarC", 'Var3', $i++), + array("A\n{testparameter value=\$bar}\n{\$foo}\n{/testparameter}\nC", "A\nbar\nC", 'Var4', $i++), + ); + } + +} function myblockplugintest($params, $content, &$smarty_tpl, &$repeat) { if (!$repeat) { diff --git a/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/PHPunitplugins/block.testparameter.php b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/PHPunitplugins/block.testparameter.php new file mode 100644 index 00000000..bdac3291 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/PHPunitplugins/block.testparameter.php @@ -0,0 +1,25 @@ +assign('foo', $params[ 'value' ]); + } +} diff --git a/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/BlockPlugin/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/BockExtend/CompileBlockExtendsTest.php b/tests/UnitTests/TemplateSource/TagTests/BockExtend/CompileBlockExtendsTest.php index 16e4ce59..df0108f2 100644 --- a/tests/UnitTests/TemplateSource/TagTests/BockExtend/CompileBlockExtendsTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/BockExtend/CompileBlockExtendsTest.php @@ -1017,4 +1017,186 @@ class CompileBlockExtendsTest extends PHPUnit_Smarty $this->smarty->fetch('037_parent.tpl'); } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testBlockSpacingNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('VarNocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testVarNocache - {$file}"); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testBlockSpacingNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('VarNocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testVarNocache1 - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{block name='a'}{\$foo}{/block}C", "AbarC", 'Var0', $i++), + array("A{block name='a'}\n{\$foo}{/block}C", "A\nbarC", 'Var1', $i++), + array("A{block name='a'}\n{\$foo}\n{/block}C", "A\nbar\nC", 'Var2', $i++), + array("A{block name='a'}\n{\$foo}{/block}\nC", "A\nbar\nC", 'Var3', $i++), + array("A\n{block name='a'}\n{\$foo}\n{/block}\nC", "A\n\nbar\n\nC", 'Var4', $i++), + ); + } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestChildSpacing + * @runInSeparateProcess + */ + public function testChildSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_Parent{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $child = "{extends file='$file'}\n"; + $child .= preg_replace(array('/A/','/C/','/[$]foo/','/\s*[{][$]smarty[.]block[.]child[}]\s*/'),array('G','H','$bar','{$bar}'),$code); + $file = "Spacing_Child{$name}.tpl"; + $this->makeTemplateFile($file, $child); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo'); + $this->smarty->assign('bar', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testChildSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestChildSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{block name='a'}{\$foo}{/block}C", "AbarC", 'Var0', $i++), + array("A{block name='a'}\n{\$foo}{/block}C", "A\nbarC", 'Var1', $i++), + array("A{block name='a'}\n{\$foo}\n{/block}C", "A\nbar\nC", 'Var2', $i++), + array("A{block name='a'}\n{\$foo}{/block}\nC", "A\nbar\nC", 'Var3', $i++), + array("A\n{block name='a'}\n{\$foo}\n{/block}\nC", "A\n\nbar\n\nC", 'Var4', $i++), + array("A{block name='a'}{\$smarty.block.child}{/block}C", "AbarC", 'BlockChild0', $i++), + array("A{block name='a'}\n{\$smarty.block.child}{/block}C", "A\nbarC", 'BlockChild1', $i++), + array("A{block name='a'}\n{\$smarty.block.child}\n{/block}C", "A\nbar\nC", 'BlockChild2', $i++), + array("A{block name='a'}\n{\$smarty.block.child}{/block}\nC", "A\nbar\nC", 'BlockChild3', $i++), + array("A\n{block name='a'}\n{\$smarty.block.child}\n{/block}\nC", "A\n\nbar\n\nC", 'BlockChild4', $i++), + ); + } + + /** + * Test Block nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestBlockNocache + * @runInSeparateProcess + */ + public function testBlockNocacheSpacing($code, $result, $name, $testNumber) + { + $file = "blockNocache_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setCompileId('BlockNocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "blockNocache - {$file}"); + } + /** + * Test Block nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestBlockNocache + * @runInSeparateProcess + */ + public function testBlockNocacheSpacing2($code, $result, $name, $testNumber) + { + $file = "blockNocache_{$name}.tpl"; + $this->smarty->setCompileId('BlockNocache'); + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo'); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "blockNocache - {$file}"); + } + /* + * Data provider für TestBlockNocache + */ + public function dataTestBlockNocache() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{nocache}{block name='a'}{\$foo}{/block}{/nocache}C", "AbarC", 'Var0', $i++), + array("A{nocache}{block name='a'}\n{\$foo}{/block}{/nocache}C", "A\nbarC", 'Var1', $i++), + array("A{nocache}{block name='a'}\n{\$foo}\n{/block}{/nocache}C", "A\nbar\nC", 'Var2', $i++), + array("A{nocache}{block name='a'}\n{\$foo}{/block}\n{/nocache}C", "A\nbar\nC", 'Var3', $i++), + array("A{nocache}\n{block name='a'}\n{\$foo}\n{/block}\n{/nocache}C", "A\n\nbar\n\nC", 'Var4', $i++), + ); + } + } diff --git a/tests/UnitTests/TemplateSource/TagTests/BockExtend/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/BockExtend/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/BockExtend/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Capture/CompileCaptureTest.php b/tests/UnitTests/TemplateSource/TagTests/Capture/CompileCaptureTest.php index 9d4492d9..b76b5f7d 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Capture/CompileCaptureTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Capture/CompileCaptureTest.php @@ -39,7 +39,7 @@ class CompileCaptureTest extends PHPUnit_Smarty $file = "testCapture{$testNumber}.tpl"; $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "testCapture - {$code} - {$testName}"); + $this->assertEquals($result, $this->smarty->fetch($file), "testCapture - {$code} - {$testName}"); } /* @@ -103,4 +103,47 @@ class CompileCaptureTest extends PHPUnit_Smarty $this->assertContains('lowercase', $result); $this->assertContains('uppercase', $result); } + + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "Spacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{capture}B{/capture}C{\$smarty.capture.default}", "ACB", 'Newline1', $i++), + array("A{capture}\nB{/capture}C{\$smarty.capture.default}", "ACB", 'Newline2', $i++), + array("A{capture}B\n{/capture}C{\$smarty.capture.default}", "ACB\n", 'Newline3', $i++), + array("A\n{capture}\nB\n{/capture}C{\$smarty.capture.default}", "A\nCB\n", 'Newline4', $i++), + array("{capture}B{/capture}A{\$smarty.capture.default}C", "ABC", 'Newline5', $i++), + array("{capture}B{/capture}A\n{\$smarty.capture.default}C", "A\nBC", 'Newline6', $i++), + array("{capture}B{/capture}A{\$smarty.capture.default}\nC", "AB\nC", 'Newline7', $i++), + array("{capture}B{/capture}A\n{\$smarty.capture.default}\nC", "A\nB\nC", 'Newline8', $i++), + ); + } + } diff --git a/tests/UnitTests/TemplateSource/TagTests/Delimiter/CompileDelimiterTest.php b/tests/UnitTests/TemplateSource/TagTests/Delimiter/CompileDelimiterTest.php index ea2c911f..0a9b88ce 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Delimiter/CompileDelimiterTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Delimiter/CompileDelimiterTest.php @@ -30,13 +30,13 @@ class CompileDelimiterTest extends PHPUnit_Smarty */ public function testLeftDelimiter() { - $tpl = $this->smarty->createTemplate('eval:x{ldelim}x'); + $tpl = $this->smarty->createTemplate('string:x{ldelim}x'); $this->assertEquals('x{x', $this->smarty->fetch($tpl)); } public function testRightDelimiter() { - $tpl = $this->smarty->createTemplate('eval:x{rdelim}x'); + $tpl = $this->smarty->createTemplate('string:x{rdelim}x'); $this->assertEquals('x}x', $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Eval/CompileEvalTest.php b/tests/UnitTests/TemplateSource/TagTests/Eval/CompileEvalTest.php index 20b41d20..5053e42d 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Eval/CompileEvalTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Eval/CompileEvalTest.php @@ -30,19 +30,19 @@ class CompileEvalTest extends PHPUnit_Smarty */ public function testEval1() { - $tpl = $this->smarty->createTemplate("eval:{eval var='hello world'}"); + $tpl = $this->smarty->createTemplate("string:{eval var='hello world'}"); $this->assertEquals("hello world", $this->smarty->fetch($tpl)); } public function testEval2() { - $tpl = $this->smarty->createTemplate("eval:{eval var='hello world' assign=foo}{\$foo}"); + $tpl = $this->smarty->createTemplate("string:{eval var='hello world' assign=foo}{\$foo}"); $this->assertEquals("hello world", $this->smarty->fetch($tpl)); } public function testEval3() { - $tpl = $this->smarty->createTemplate("eval:{eval var='hello world' assign=foo}"); + $tpl = $this->smarty->createTemplate("string:{eval var='hello world' assign=foo}"); $this->assertEquals("", $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/For/CompileForTest.php b/tests/UnitTests/TemplateSource/TagTests/For/CompileForTest.php index e600fd6c..0a1c5d9d 100644 --- a/tests/UnitTests/TemplateSource/TagTests/For/CompileForTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/For/CompileForTest.php @@ -27,91 +27,54 @@ class CompileForTest extends PHPUnit_Smarty } /** - * test {for $x=0;$x<10;$x++} tag + * Test For + * + * @preserveGlobalState disabled + * @dataProvider dataTestFor + * @runInSeparateProcess */ - public function testFor1() + public function testFor($code, $result, $testName, $testNumber) { - $tpl = $this->smarty->createTemplate('eval:{for $x=0;$x<10;$x++}{$x}{/for}'); - $this->assertEquals("0123456789", $this->smarty->fetch($tpl)); + $name = empty($testName) ? $testNumber : $testName; + $file = "For_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); } - public function testFor2() + /* + * Data provider für testFor + */ + public function dataTestFor() { - $tpl = $this->smarty->createTemplate('eval:{for $x=0; $x<10; $x++}{$x}{forelse}else{/for}'); - $this->assertEquals("0123456789", $this->smarty->fetch($tpl)); + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array('{for $x=0;$x<10;$x++}{$x}{/for}', '0123456789', 'T1', $i++), + array('{for $x=0; $x<10; $x++}{$x}{forelse}else{/for}', '0123456789', 'T2', $i++), + array('{for $x=10;$x<10;$x++}{$x}{forelse}else{/for}', 'else', 'T3', $i++), + array('{for $x=9;$x>=0;$x--}{$x}{forelse}else{/for}', '9876543210', 'T4', $i++), + array('{for $x=-1;$x>=0;$x--}{$x}{forelse}else{/for}', 'else', 'T5', $i++), + array('{for $x=0,$y=10;$x<$y;$x++}{$x}{forelse}else{/for}', '0123456789', 'T6', $i++), + array('{for $x=0;$x<10;$x=$x+2}{$x}{/for}', '02468', 'T7', $i++), + array('{for $x=0 to 8}{$x}{/for}', '012345678', 'T8', $i++), + array('{for $x=0 to 8 step=2}{$x}{/for}', '02468', 'T9', $i++), + array('{for $x=0 to 8 step=2}{if $x@first}{$x} {$x@total}{/if}{/for}', '0 5', 'T10', $i++), + array('{for $x=0 to 8 step=2}{if $x@last}{$x} {$x@iteration}{/if}{/for}', '8 5', 'T11', $i++), + array('{for $x=8 to 0 step=-2}{$x}{/for}', '86420', 'T12', $i++), + array('{for $x=8 to 0 step=2}{$x}{forelse}step error{/for}', 'step error', 'T13', $i++), + array('{for $x=8 to 0 step -1 max=3}{$x}{/for}', '876', 'T14', $i++), + ); } - public function testFor3() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=10;$x<10;$x++}{$x}{forelse}else{/for}'); - $this->assertEquals("else", $this->smarty->fetch($tpl)); - } - public function testFor4() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=9;$x>=0;$x--}{$x}{forelse}else{/for}'); - $this->assertEquals("9876543210", $this->smarty->fetch($tpl)); - } - - public function testFor5() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=-1;$x>=0;$x--}{$x}{forelse}else{/for}'); - $this->assertEquals("else", $this->smarty->fetch($tpl)); - } - - public function testFor6() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0,$y=10;$x<$y;$x++}{$x}{forelse}else{/for}'); - $this->assertEquals("0123456789", $this->smarty->fetch($tpl)); - } - - public function testFor7() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0;$x<10;$x=$x+2}{$x}{/for}'); - $this->assertEquals("02468", $this->smarty->fetch($tpl)); - } - - public function testFor8() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0 to 8}{$x}{/for}'); - $this->assertEquals("012345678", $this->smarty->fetch($tpl)); - } - - public function testFor9() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0 to 8 step=2}{$x}{/for}'); - $this->assertEquals("02468", $this->smarty->fetch($tpl)); - } - - public function testFor10() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0 to 8 step=2}{if $x@first}{$x} {$x@total}{/if}{/for}'); - $this->assertEquals("0 5", $this->smarty->fetch($tpl)); - } - - public function testFor11() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=0 to 8 step=2}{if $x@last}{$x} {$x@iteration}{/if}{/for}'); - $this->assertEquals("8 5", $this->smarty->fetch($tpl)); - } - - public function testFor12() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=8 to 0 step=-2}{$x}{/for}'); - $this->assertEquals("86420", $this->smarty->fetch($tpl)); - } - - public function testFor13() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=8 to 0 step=2}{$x}{forelse}step error{/for}'); - $this->assertEquals("step error", $this->smarty->fetch($tpl)); - } - - public function testFor14() - { - $tpl = $this->smarty->createTemplate('eval:{for $x=8 to 0 step -1 max=3}{$x}{/for}'); - $this->assertEquals("876", $this->smarty->fetch($tpl)); - } /* * test for and nocache @@ -187,4 +150,51 @@ class CompileForTest extends PHPUnit_Smarty $this->assertTrue($this->smarty->isCached($tpl)); $this->assertEquals("1 2 ", $this->smarty->fetch($tpl)); } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('buh', 'buh'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "Spacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{for \$bar = 1 to 2}{\$bar}{/for}C", "A12C", 'T1', $i++), + array("A{for \$bar = 1 to 2}\n{\$bar}{/for}C", "A12C", 'T2', $i++), + array("A{for \$bar = 1 to 2}{\$bar}\n{/for}C", "A1\n2\nC", 'T3', $i++), + array("A{for \$bar = 1 to 2}\n{\$bar}\n{/for}C", "A1\n2\nC", 'T4', $i++), + array("A\n{for \$bar = 1 to 2}{\$bar}{/for}C", "A\n12C", 'T5', $i++), + array("A{for \$bar = 1 to 2}{\$bar}{/for}\nC", "A12C", 'T6', $i++), + array("A{for \$bar = 1 to 2}{\$bar}{forelse}D{/for}C", "A12C", 'T7', $i++), + array("A{for \$bar = 1 to 2}{\$bar}\n{forelse}D{/for}C", "A1\n2\nC", 'T8', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}A{\$buh}B{/for}", "AbuhB", 'T9', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}\nA{\$buh}B{/for}", "AbuhB", 'T10', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}A{\$buh}\nB{/for}", "Abuh\nB", 'T11', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}\nA{\$buh}\nB{/for}", "Abuh\nB", 'T12', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}{\$buh}\nB{/for}", "buh\nB", 'T13', $i++), + array("{for \$x=-1;\$x>=0;\$x--}{\$x}{forelse}{\$buh}{/for}", "buh", 'T14', $i++), + ); + } } diff --git a/tests/UnitTests/TemplateSource/TagTests/For/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/For/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/For/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Foreach/CompileForeachTest.php b/tests/UnitTests/TemplateSource/TagTests/Foreach/CompileForeachTest.php index af831b0c..938efe14 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Foreach/CompileForeachTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Foreach/CompileForeachTest.php @@ -47,7 +47,7 @@ class CompileForeachTest extends PHPUnit_Smarty $this->smarty->setErrorReporting(error_reporting() & ~(E_NOTICE | E_USER_NOTICE)); } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "testForeach - {$code} - {$testName}"); + $this->assertEquals($result, $this->smarty->fetch($file), "testForeach - {$code} - {$testName}"); } /* @@ -119,7 +119,7 @@ class CompileForeachTest extends PHPUnit_Smarty $this->smarty->setErrorReporting(error_reporting() & ~(E_NOTICE | E_USER_NOTICE)); } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "testForeach - {$code} - {$testName}"); + $this->assertEquals($result, $this->smarty->fetch($file), "testForeach - {$code} - {$testName}"); } /* @@ -297,4 +297,90 @@ class CompileForeachTest extends PHPUnit_Smarty $this->assertEquals("false", $this->smarty->fetch('037_foreach.tpl')); } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', array(1,2)); + $this->assertEquals($result, + $this->smarty->fetch($file), + "Spacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{foreach from=\$foo item='bar'}{\$bar}{/foreach}C", "A12C", 'Newline1', $i++), + array("A{foreach from=\$foo item='bar'}\n{\$bar}{/foreach}C", "A12C", 'Newline2', $i++), + array("A{foreach from=\$foo item='bar'}{\$bar}\n{/foreach}C", "A1\n2\nC", 'Newline3', $i++), + array("A{foreach from=\$foo item='bar'}\n{\$bar}\n{/foreach}C", "A1\n2\nC", 'Newline4', $i++), + array("A\n{foreach from=\$foo item='bar'}{\$bar}{/foreach}C", "A\n12C", 'Newline5', $i++), + array("A{foreach from=\$foo item='bar'}{\$bar}{/foreach}\nC", "A12C", 'Newline6', $i++), + array("A{foreach from=\$foo item='bar'}{\$bar}{foreachelse}D{/foreach}C", "A12C", 'Newline7', $i++), + array("A{foreach from=\$foo item='bar'}{\$bar}\n{foreachelse}D{/foreach}C", "A1\n2\nC", 'Newline8', $i++), + array("{foreach from=\$foo item='bar' name='buh'}{\$bar}{/foreach}A{\$smarty.foreach.buh.total}C", "12A2C", 'Newline9', $i++), + array("{foreach from=\$foo item='bar' name='buh'}{\$bar}{/foreach}A\n{\$smarty.foreach.buh.total}C", "12A\n2C", 'Newline10', $i++), + array("{foreach from=\$foo item='bar' name='buh'}{\$bar}{/foreach}A{\$smarty.foreach.buh.total}\nC", "12A2\nC", 'Newline11', $i++), + ); + } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestElseSpacing + * @runInSeparateProcess + */ + public function testElseSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_Else_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', array()); + $this->smarty->assign('buh', 'buh'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "Spacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestElseSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}A{\$buh}B{/foreach}", "AbuhB", 'Newline1', $i++), + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}\nA{\$buh}B{/foreach}", "AbuhB", 'Newline2', $i++), + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}A{\$buh}\nB{/foreach}", "Abuh\nB", 'Newline3', $i++), + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}\nA{\$buh}\nB{/foreach}", "Abuh\nB", 'Newline4', $i++), + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}{\$buh}\nB{/foreach}", "buh\nB", 'Newline5', $i++), + array("{foreach from=\$foo item='bar'}{\$bar}{foreachelse}{\$buh}{/foreach}", "buh", 'Newline6', $i++), + ); + } + } diff --git a/tests/UnitTests/TemplateSource/TagTests/FunctionPlugin/CompileFunctionPluginTest.php b/tests/UnitTests/TemplateSource/TagTests/FunctionPlugin/CompileFunctionPluginTest.php index 8d154d52..37c947e2 100644 --- a/tests/UnitTests/TemplateSource/TagTests/FunctionPlugin/CompileFunctionPluginTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/FunctionPlugin/CompileFunctionPluginTest.php @@ -63,7 +63,7 @@ class CompileFunctionPluginTest extends PHPUnit_Smarty public function testFunctionPluginRegisteredFunction() { $this->smarty->registerPlugin(Smarty::PLUGIN_FUNCTION, 'plugintest', 'myplugintest'); - $tpl = $this->smarty->createTemplate('eval:{plugintest foo=bar}', $this->smarty); + $tpl = $this->smarty->createTemplate('string:{plugintest foo=bar}', $this->smarty); $this->assertEquals("plugin test called bar", $this->smarty->fetch($tpl)); } @@ -72,7 +72,7 @@ class CompileFunctionPluginTest extends PHPUnit_Smarty */ public function testMultiLineTags() { - $this->assertEquals("10", $this->smarty->fetch("eval:{counter\n\tstart=10}")); + $this->assertEquals("10", $this->smarty->fetch("string:{counter\n\tstart=10}")); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/If/CompileIfTest.php b/tests/UnitTests/TemplateSource/TagTests/If/CompileIfTest.php index 63232e12..1eb7bd30 100644 --- a/tests/UnitTests/TemplateSource/TagTests/If/CompileIfTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/If/CompileIfTest.php @@ -42,7 +42,7 @@ class CompileIfTest extends PHPUnit_Smarty $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); $this->smarty->assign('bar', 'buh'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), + $this->assertEquals($result, $this->smarty->fetch($file), "testIf - {$code} - {$name}"); } @@ -62,7 +62,7 @@ class CompileIfTest extends PHPUnit_Smarty array('{if 2<1}yes{else}no{/if}', 'no', '', $i ++), array('{if 2<1}yes{elseif 4<5}yes1{else}no{/if}', 'yes1', '', $i ++), array('{if 2<1}yes{elseif 6<5}yes1{else}no{/if}', 'no', '', $i ++), - array('{if true}yes{else}no{/if}', 'yes', '', $i ++), + array('{if false}false{elseif true}yes{else}no{/if}', 'yes', '', $i ++), array('{if false}yes{else}no{/if}', 'no', '', $i ++), array('{if !(1<2)}yes{else}no{/if}', 'no', '', $i ++), array('{if not (true)}yes{else}no{/if}', 'no', '', $i ++), @@ -73,10 +73,11 @@ class CompileIfTest extends PHPUnit_Smarty array('{$foo=true}{if $foo!==true}yes{else}no{/if}', 'no', '', $i ++), array('{if 1 > 0}yes{else}no{/if}', 'yes', '', $i ++), array('{if $x=1}yes{else}no{/if}{$x}', 'yes1', '', $i ++), - array('{$x=0}{if $x++}yes{else}no{/if} {$x}', 'no1', '', $i ++), - array('{$x=[1,2]}{if $x[] = 7}{$x|var_export:true}{else}no{/if}', 'array(0=>1,1=>2,2=>7,)', '', - $i ++), array('{$x=[1,2]}{if $x[][\'a\'] = 7}{$x|var_export:true}{else}no{/if}', - 'array(0=>1,1=>2,2=>array(\'a\'=>7,),)', '', $i ++), + array('{$x=0}{if $x++}yes{else}no{/if} {$x}', 'no 1', '', $i ++), + array('{$x=[1,2]}{if $x[] = 7}{$x|var_export:true}{else}no{/if}', var_export(array(0=>1,1=>2,2=>7,),true), '', + $i ++), + array('{$x=[1,2]}{if $x[][\'a\'] = 7}{$x|var_export:true}{else}no{/if}', + var_export(array(0=>1,1=>2,2=>array('a'=>7,),),true), '', $i ++), array('{$foo=\'foo\'}{$bar=\'bar\'}{if $bar = "new_{$foo|default:\'\'}"}yes-{else}no{/if}{$bar}', 'yes-new_foo', '', $i ++), array('{$foo=\'foo\'}{$bar=\'bar\'}{if false}false{elseif $bar = "new_{$foo|default:\'\'}"}yes-{else}no{/if}{$bar}', @@ -106,9 +107,43 @@ class CompileIfTest extends PHPUnit_Smarty array('{$foo=3}{$bar=3}{if 3+$bar is not odd by $foo}yes{else}no{/if}', 'yes', 'ExprIsNotOddByVar', $i ++), array('{$foo=2}{$bar=6}{if (3+$bar) is not odd by ($foo+1)}yes{else}no{/if}', 'no', 'ExprIsNotOddByExpr', $i ++), array('{if strlen("hello world") === 11}yes{else}no{/if}', 'yes', 'FuncCmp', $i ++), + array('{if 0>1}yes{else}no{/if}', 'no', 'GT2', $i ++), + array('{if 1 GT 0}yes{else}no{/if}', 'yes', 'GT3', $i ++), + array('{if 0 gt 1}yes{else}no{/if}', 'no', 'GT4', $i ++), + array('{if 1 >= 0}yes{else}no{/if}', 'yes', 'GE1', $i ++), + array('{if 1>=1}yes{else}no{/if}', 'yes', 'GE2', $i ++), + array('{if 1 GE 1}yes{else}no{/if}', 'yes', 'GE3', $i ++), + array('{if 0 ge 1}yes{else}no{/if}', 'no', 'GE4', $i ++), + array('{if 0 < 0}yes{else}no{/if}', 'no', 'LT1', $i ++), + array('{if 0<1}yes{else}no{/if}', 'yes', 'LT2', $i ++), + array('{if 0 <= 0}yes{else}no{/if}', 'yes', 'LE1', $i ++), + array('{if 0<=1}yes{else}no{/if}', 'yes', 'LE2', $i ++), + array('{if 1 LE 0}yes{else}no{/if}', 'no', 'LE3', $i ++), + array('{if 0 le 1}yes{else}no{/if}', 'yes', 'LE4', $i ++), + array('{if 1 != 1}yes{else}no{/if}', 'no', 'NE1', $i ++), + array('{if 1!=2}yes{else}no{/if}', 'yes', 'NE2', $i ++), + array('{if 1 NE 1}yes{else}no{/if}', 'no', 'NE3', $i ++), + array('{if 1 ne 2}yes{else}no{/if}', 'yes', 'NE4', $i ++), + array('{if 1 === "1"}yes{else}no{/if}', 'no', 'Ident1', $i ++), + array('{if "1" === "1"}yes{else}no{/if}', 'yes', 'Ident2', $i ++), + array('{if 1 > 0 && 5 < 6}yes{else}no{/if}', 'yes', 'And1', $i ++), + array('{if 1 > 0&&5 < 6}yes{else}no{/if}', 'yes', 'And2', $i ++), + array('{if 1 > 0 AND 5 > 6}yes{else}no{/if}', 'no', 'And3', $i ++), + array('{if (1 > 0) and (5 < 6)}yes{else}no{/if}', 'yes', 'And4', $i ++), + array('{if 1 > 0 || 7 < 6}yes{else}no{/if}', 'yes', 'Or1', $i ++), + array('{if 1 > 0||5 < 6}yes{else}no{/if}', 'yes', 'Or2', $i ++), + array('{if 1 > 0 OR 5 > 6}yes{else}no{/if}', 'yes', 'Or3', $i ++), + array('{if (0 > 0) or (9 < 6)}yes{else}no{/if}', 'no', 'Or4', $i ++), + array('{if ((7>8)||(1 > 0)) and (5 < 6)}yes{else}no{/if}', 'yes', 'AndOr1', $i ++), + array('{if {counter start=1} == 1}yes{else}no{/if}', 'yes', 'Tag1', $i ++), + array('{if false}false{elseif {counter start=1} == 1}yes{else}no{/if}', 'yes', 'Tag2', $i ++), + array('{if {counter start=1} == 0}false{elseif {counter} == 2}yes{else}no{/if}', 'yes', 'Tag3', $i ++), ); } + + + /** * Test if nocache tags * @@ -128,7 +163,7 @@ class CompileIfTest extends PHPUnit_Smarty $this->smarty->assign('file', $file, true); $this->smarty->assign($var, $value, true); $this->smarty->assign($var . '2', $value); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('run_code_caching.tpl')), + $this->assertEquals($result, $this->strip($this->smarty->fetch('run_code_caching.tpl')), "testIfNocahe - {$code} - {$testName}"); } @@ -166,184 +201,60 @@ class CompileIfTest extends PHPUnit_Smarty array('bar', 0, false, 'yes3', '', $i ++, 'testIfNoCache_Var4.tpl'),); } - public function testIfGT2() + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) { - $tpl = $this->smarty->createTemplate('eval:{if 0>1}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('bar', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); } - public function testIfGT3() + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() { - $tpl = $this->smarty->createTemplate('eval:{if 1 GT 0}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfGT4() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 gt 1}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfGE1() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 >= 0}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfGE2() - { - $tpl = $this->smarty->createTemplate('eval:{if 1>=1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfGE3() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 GE 1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfGE4() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 ge 1}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfLT1() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 < 0}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfLT2() - { - $tpl = $this->smarty->createTemplate('eval:{if 0<1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfLT3() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 LT 1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfLT4() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 lt 1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfLE1() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 <= 0}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfLE2() - { - $tpl = $this->smarty->createTemplate('eval:{if 0<=1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfLE3() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 LE 0}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfLE4() - { - $tpl = $this->smarty->createTemplate('eval:{if 0 le 1}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfNE1() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 != 1}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfNE2() - { - $tpl = $this->smarty->createTemplate('eval:{if 1!=2}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfNE3() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 NE 1}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfNE4() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 ne 2}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfIdent1() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 === "1"}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfIdent2() - { - $tpl = $this->smarty->createTemplate('eval:{if "1" === "1"}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfAnd1() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0 && 5 < 6}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfAnd2() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0&&5 < 6}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfAnd3() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0 AND 5 > 6}}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfAnd4() - { - $tpl = $this->smarty->createTemplate('eval:{if (1 > 0) and (5 < 6)}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfOr1() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0 || 7 < 6}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfOr2() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0||5 < 6}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfOr3() - { - $tpl = $this->smarty->createTemplate('eval:{if 1 > 0 OR 5 > 6}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); - } - - public function testIfOr4() - { - $tpl = $this->smarty->createTemplate('eval:{if (0 > 0) or (9 < 6)}yes{else}no{/if}'); - $this->assertEquals("no", $this->smarty->fetch($tpl)); - } - - public function testIfAndOR4() - { - $tpl = $this->smarty->createTemplate('eval:{if ((7>8)||(1 > 0)) and (5 < 6)}yes{else}no{/if}'); - $this->assertEquals("yes", $this->smarty->fetch($tpl)); + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{if false}false{elseif true}{\$bar}{/if}C", "AbarC", 'T1', $i++), + array("A{if false}false{elseif true}\n{\$bar}{/if}C", "AbarC", 'T2', $i++), + array("A{if false}false{elseif true}{\$bar}\n{/if}C", "Abar\nC", 'T3', $i++), + array("A{if false}false{elseif true}\n{\$bar}\n{/if}C", "Abar\nC", 'T4', $i++), + array("A\n{if false}false{elseif true}{\$bar}{/if}C", "A\nbarC", 'T5', $i++), + array("A{if false}false{elseif true}{\$bar}{/if}\nC", "AbarC", 'T6', $i++), + array("A{if false}false{elseif true}{\$bar}{else}D{/if}C", "AbarC", 'T7', $i++), + array("A{if false}false{elseif true}{\$bar}\n{else}D{/if}C", "Abar\nC", 'T8', $i++), + array("{if false}false{else}A{\$bar}B{/if}", "AbarB", 'T9', $i++), + array("{if false}false{else}\nA{\$bar}B{/if}", "AbarB", 'T10', $i++), + array("{if false}false{else}A{\$bar}\nB{/if}", "Abar\nB", 'T11', $i++), + array("{if false}false{else}\nA{\$bar}\nB{/if}", "Abar\nB", 'T12', $i++), + array("{if false}false{else}{\$bar}\nB{/if}", "bar\nB", 'T13', $i++), + array("{if false}false{else}{\$bar}{/if}", "bar", 'T14', $i++), + array("A{if false}false{elseif true}{\$bar}{/if}C", "AbarC", 'T15', $i++), + array("A{if false}false{elseif true}\n{\$bar}{/if}C", "AbarC", 'T16', $i++), + array("A{if false}false{elseif true}{\$bar}\n{/if}C", "Abar\nC", 'T17', $i++), + array("A{if false}false{elseif true}\n{\$bar}\n{/if}C", "Abar\nC", 'T18', $i++), + array("A\n{if false}false{elseif true}{\$bar}{/if}C", "A\nbarC", 'T19', $i++), + array("A{if false}false{elseif true}{\$bar}{/if}\nC", "AbarC", 'T20', $i++), + array("A{if false}false{elseif true}{\$bar}{else}D{/if}C", "AbarC", 'T21', $i++), + array("A{if false}false{elseif true}{\$bar}\n{else}D{/if}C", "Abar\nC", 'T22', $i++), + ); } diff --git a/tests/UnitTests/TemplateSource/TagTests/Include/CompileIncludeTest.php b/tests/UnitTests/TemplateSource/TagTests/Include/CompileIncludeTest.php index 1d7636fe..830089ae 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Include/CompileIncludeTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Include/CompileIncludeTest.php @@ -98,7 +98,7 @@ class CompileIncludeTest extends PHPUnit_Smarty } /** - * test standard output nocache var + * test standard output var * * @runInSeparateProcess * @preserveGlobalState disabled @@ -241,4 +241,87 @@ class CompileIncludeTest extends PHPUnit_Smarty array('merged'), ); } + /** + * Test Include spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testIncludeSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Output spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testIncludeSpacingNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + /** + * Test Output spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testIncludeSpacingNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('1'); + $this->smarty->setCaching(1); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testSpacing - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array('A{include file=\'include_spacing2.tpl\'}B', 'A barB', '2_Text1', $i++), + array('A {include file=\'include_spacing2.tpl\'}B', 'A barB', '2_Text2', $i++), + array('A{include file=\'include_spacing2.tpl\'}B', 'A barB', '2_Text3', $i++), + array("A{include file='include_spacing2.tpl'}\nB", "A barB", '2_Newline1', $i++), + array("A\n{include file='include_spacing2.tpl'}\nB", "A\n barB", '2_Newline2', $i++), + array("A{include file='include_spacing2.tpl'}B\nC", "A barB\nC", '2_Newline3', $i++), + array('A{include file=\'include_spacing3.tpl\'}B', "AbarB", '3_Text1', $i++), + array('A {include file=\'include_spacing3.tpl\'}B', "A barB", '3_Text2', $i++), + array('A{include file=\'include_spacing3.tpl\'}B', "AbarB", '3_Text3', $i++), + array("A{include file='include_spacing3.tpl'}\nB", "AbarB", '3_Newline1', $i++), + array("A\n{include file='include_spacing3.tpl'}\nB", "A\nbarB", '3_Newline2', $i++), + array("A{include file='include_spacing3.tpl'}B\nC", "AbarB\nC", '3_Newline3', $i++), + ); + } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing1.tpl b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing1.tpl new file mode 100644 index 00000000..ba0e162e --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing1.tpl @@ -0,0 +1 @@ +bar \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing2.tpl b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing2.tpl new file mode 100644 index 00000000..2f9aec39 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing2.tpl @@ -0,0 +1 @@ + {$foo} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing3.tpl b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing3.tpl new file mode 100644 index 00000000..b9490d3b --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Include/templates/include_spacing3.tpl @@ -0,0 +1 @@ +{$foo} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Include/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/Include/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Include/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/IncludePhp/CompileIncludePhpTest.php b/tests/UnitTests/TemplateSource/TagTests/IncludePhp/CompileIncludePhpTest.php index 36923a1d..acdd1429 100644 --- a/tests/UnitTests/TemplateSource/TagTests/IncludePhp/CompileIncludePhpTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/IncludePhp/CompileIncludePhpTest.php @@ -57,7 +57,7 @@ class CompileIncludePhpTest extends PHPUnit_Smarty public function testIncludePhpVariableFileName() { $this->smartyBC->disableSecurity(); - $tpl = $this->smartyBC->createTemplate('eval:start {include_php file=$filename once=false} end'); + $tpl = $this->smartyBC->createTemplate('string:start {include_php file=$filename once=false} end'); $tpl->assign('filename', 'scripts/test_include_php.php'); $result = $this->smartyBC->fetch($tpl); $this->assertContains("test include php", $result); @@ -66,7 +66,7 @@ class CompileIncludePhpTest extends PHPUnit_Smarty public function testIncludePhpVariableFileNameShortag() { $this->smartyBC->disableSecurity(); - $tpl = $this->smartyBC->createTemplate('eval:start {include_php $filename once=false} end'); + $tpl = $this->smartyBC->createTemplate('string:start {include_php $filename once=false} end'); $tpl->assign('filename', 'scripts/test_include_php.php'); $result = $this->smartyBC->fetch($tpl); $this->assertContains("test include php", $result); diff --git a/tests/UnitTests/TemplateSource/TagTests/Insert/CompileInsertTest.php b/tests/UnitTests/TemplateSource/TagTests/Insert/CompileInsertTest.php index d92434ca..f4eea5ce 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Insert/CompileInsertTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Insert/CompileInsertTest.php @@ -28,26 +28,47 @@ class CompileInsertTest extends PHPUnit_Smarty $this->cleanDirs(); } /** - * test inserted function + * Test For + * + * @preserveGlobalState disabled + * @dataProvider dataTestInsert + * @runInSeparateProcess */ - public function testInsertFunctionSingle() + public function testInsert($code, $result, $testName, $testNumber) { - $tpl = $this->smarty->createTemplate("eval:start {insert name='test' foo='bar'} end"); - $this->assertEquals("start insert function parameter value bar end", $this->smarty->fetch($tpl)); + $name = empty($testName) ? $testNumber : $testName; + $file = "Insert_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->assign('variable', 'test'); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); } - public function testInsertFunctionDouble() + /* + * Data provider für testInsert + */ + public function dataTestInsert() { - $tpl = $this->smarty->createTemplate("eval:start {insert name=\"test\" foo='bar'} end"); - $this->assertEquals("start insert function parameter value bar end", $this->smarty->fetch($tpl)); + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array('start {insert name=\'test\' foo=\'bar\'} end', 'start insert function parameter value bar end', 'T1', $i++), + array('start {insert name="test" foo=\'bar\'} end', 'start insert function parameter value bar end', 'T2', $i++), + array('start {insert name=$variable foo=\'bar\'} end', 'start insert function parameter value bar end', 'T3', $i++), + array("start {insert name='test' foo='bar' assign=blar} end {\$blar}", 'start end insert function parameter value bar', 'T4', $i++), + array("start {insert name='test' foo='bar' assign=blar} end", 'start end', 'T5', $i++), + ); } - public function testInsertFunctionVariableName() - { - $tpl = $this->smarty->createTemplate("eval:start {insert name=\$variable foo='bar'} end"); - $tpl->assign('variable', 'test'); - $this->assertEquals("start insert function parameter value bar end", $this->smarty->fetch($tpl)); - } + + /** * test insert plugin @@ -132,13 +153,11 @@ class CompileInsertTest extends PHPUnit_Smarty { global $insertglobal; $this->smarty->addPluginsDir(dirname(__FILE__) . "/PHPunitplugins/"); - if (true) { //disabled $insertglobal = 'changed global 4'; $this->smarty->caching = 1; $this->smarty->assign('foo', 'buh', true); $this->assertTrue($this->smarty->isCached('insertplugintest.tpl')); $this->assertEquals('param foo buh globalvar changed global 4', $this->smarty->fetch('insertplugintest.tpl')); - } } /** * test insert plugin caching 2 @@ -170,35 +189,6 @@ class CompileInsertTest extends PHPUnit_Smarty $this->assertEquals('param foo bar globalvar global 2', $this->smarty->fetch($tpl)); } - /** - * test inserted function with assign - */ - public function testInsertFunctionAssign() - { - $tpl = $this->smarty->createTemplate("eval:start {insert name='test' foo='bar' assign=blar} end {\$blar}"); - $this->assertEquals("start end insert function parameter value bar", $this->smarty->fetch($tpl)); - } - - /** - * test insertfunction with assign no output - */ - public function testInsertFunctionAssignNoOutput() - { - $tpl = $this->smarty->createTemplate("eval:start {insert name='test' foo='bar' assign=blar} end"); - $this->assertEquals("start end", $this->smarty->fetch($tpl)); - } - - /** - * test insert plugin with assign - */ - public function testInsertPluginAssign() - { - global $insertglobal; - $insertglobal = 'global'; - $tpl = $this->smarty->createTemplate("eval:start {insert name='insertplugintest' foo='bar' assign=blar} end {\$blar}"); - $tpl->assign('foo', 'bar'); - $this->assertEquals('start end param foo bar globalvar global', $this->smarty->fetch($tpl)); - } /** * test inserted function none existing function @@ -238,7 +228,7 @@ class CompileInsertTest extends PHPUnit_Smarty /** * test function */ -function insert_test($params) +function insert_test($params, $template) { return "insert function parameter value $params[foo]"; } diff --git a/tests/UnitTests/TemplateSource/TagTests/Insert/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/Insert/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Insert/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Literal/LiteralTest.php b/tests/UnitTests/TemplateSource/TagTests/Literal/LiteralTest.php index 6d333c0d..972f9e25 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Literal/LiteralTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Literal/LiteralTest.php @@ -30,7 +30,7 @@ class LiteralTest extends PHPUnit_Smarty */ public function testLiteralTag() { - $tpl = $this->smarty->createTemplate("eval:{literal} {\$foo} {/literal}"); + $tpl = $this->smarty->createTemplate("string:{literal} {\$foo} {/literal}"); $this->assertEquals(' {$foo} ', $this->smarty->fetch($tpl)); } @@ -39,7 +39,7 @@ class LiteralTest extends PHPUnit_Smarty */ public function testAutoLiteralSpace() { - $tpl = $this->smarty->createTemplate("eval: { \$foo} "); + $tpl = $this->smarty->createTemplate("string: { \$foo} "); $tpl->assign('foo', 'literal'); $this->assertEquals(' { $foo} ', $this->smarty->fetch($tpl)); } @@ -49,7 +49,7 @@ class LiteralTest extends PHPUnit_Smarty */ public function testAutoLiteralLineBreak() { - $tpl = $this->smarty->createTemplate("eval: {\n\$foo} "); + $tpl = $this->smarty->createTemplate("string: {\n\$foo} "); $tpl->assign('foo', 'literal'); $this->assertEquals(" {\n\$foo} ", $this->smarty->fetch($tpl)); } @@ -60,8 +60,8 @@ class LiteralTest extends PHPUnit_Smarty public function testAutoLiteralDisabled() { $this->smarty->setAutoLiteral(false); - $tpl = $this->smarty->createTemplate("eval: { \$foo} "); + $tpl = $this->smarty->createTemplate("string: { \$foo} "); $tpl->assign('foo', 'literal'); - $this->assertEquals(' literal ', $this->smarty->fetch($tpl)); + $this->assertEquals(' literal ', $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/MakeNocache/CompileMakeNocacheTest.php b/tests/UnitTests/TemplateSource/TagTests/MakeNocache/CompileMakeNocacheTest.php index 32b3f845..718c7313 100644 --- a/tests/UnitTests/TemplateSource/TagTests/MakeNocache/CompileMakeNocacheTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/MakeNocache/CompileMakeNocacheTest.php @@ -40,7 +40,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty if ($foo) { $this->smarty->assign('foo', $foo); } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo.tpl'), "foo = {$foo}"); } @@ -55,8 +55,8 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(1, '#001_test_foo.tpl:$foo=1'), array(2, '#001_test_foo.tpl:$foo=2'), - array(null, '#001_test_foo.tpl:$foo=>unassigned<'),); + return array(array(1, '#001_test_foo.tpl:$foo =1'), array(2, '#001_test_foo.tpl:$foo =2'), + array(null, '#001_test_foo.tpl:$foo =>unassigned<'),); } /** @@ -72,7 +72,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty if ($foo) { $this->smarty->assign('foo', $foo); } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo.tpl'), "foo = {$foo}"); } @@ -87,14 +87,14 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(1, '#001_test_foo.tpl:$foo=1'), array(2, '#001_test_foo.tpl:$foo=1'), - array(null, '#001_test_foo.tpl:$foo=1'),); + return array(array(1, '#001_test_foo.tpl:$foo =1'), array(2, '#001_test_foo.tpl:$foo =1'), + array(null, '#001_test_foo.tpl:$foo =1'),); } /** * Test {make_nocache} cached tags existing nocahe variable * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_2 */ @@ -104,7 +104,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty if ($foo) { $this->smarty->assign('foo', $foo, true); } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo.tpl'), "foo = {$foo}"); } @@ -119,14 +119,14 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(1, '#001_test_foo.tpl:$foo=1'), array(2, '#001_test_foo.tpl:$foo=2'), - array(null, '#001_test_foo.tpl:$foo=1'),); + return array(array(1, '#001_test_foo.tpl:$foo =1'), array(2, '#001_test_foo.tpl:$foo =2'), + array(null, '#001_test_foo.tpl:$foo =1'),); } /** * Test {make_nocache} cached tags reassign * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_3 */ @@ -137,7 +137,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty $this->smarty->assign('foo', $foo); } $this->smarty->assign('bar', $foo + 4, true); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo_assign.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo_assign.tpl'), "foo = {$foo}"); } @@ -152,14 +152,14 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(1, '#001_test_foo_assign.tpl:$foo=5'), array(2, '#001_test_foo_assign.tpl:$foo=6'), - array(null, '#001_test_foo_assign.tpl:$foo=4'),); + return array(array(1, '#001_test_foo_assign.tpl:$foo =5'), array(2, '#001_test_foo_assign.tpl:$foo =6'), + array(null, '#001_test_foo_assign.tpl:$foo =4'),); } /** * Test {make_nocache} cached tags {if} * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_4 */ @@ -168,7 +168,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty $this->smarty->setCaching(true); $this->smarty->assign('foo', $foo); $this->smarty->assign('bar', $bar); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo_if.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo_if.tpl'), "foo = {$foo}"); } @@ -189,7 +189,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty /** * Test {make_nocache} cached tags {if} nocache * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_5 */ @@ -201,7 +201,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty $this->smarty->assign('foo', $foo); } $this->smarty->assign('bar', $bar, true); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo_if.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo_if.tpl'), "foo = {$foo}"); } @@ -223,7 +223,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty /** * Test {make_nocache} cached tags {foreach} * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_6 */ @@ -232,7 +232,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty $this->smarty->setCaching(true); $this->smarty->assign('foo', $foo, true); $this->smarty->assign('bar', $bar); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo_foreach.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo_foreach.tpl'), "foo = {$foo}"); } @@ -248,13 +248,13 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(2, array(1, 2, 3, 4), '12match34'), array(3, array(7, 8, 9), '123match4'),); + return array(array(2, array(1, 2, 3, 4), ' 1 2match 3 4'), array(3, array(7, 8, 9), ' 1 2 3match 4'),); } /** * Test {make_nocache} cached tags {foreach} nocache * - * @not runInSeparateProcess + * @runInSeparateProcess * @preserveGlobalState disabled * @dataProvider dataTestMakeNocache001_7 */ @@ -264,7 +264,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty $this->smarty->compile_id = 1; $this->smarty->assign('foo', $foo, true); $this->smarty->assign('bar', $bar, true); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('001_test_foo_foreach.tpl')), + $this->assertEquals($result, $this->smarty->fetch('001_test_foo_foreach.tpl'), "foo = {$foo}"); } @@ -280,7 +280,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty * result * */ - return array(array(2, array(1, 2, 3, 4), '12match34'), array(7, array(7, 8, 9), '7match89'),); + return array(array(2, array(1, 2, 3, 4), ' 1 2match 3 4'), array(7, array(7, 8, 9), ' 7match 8 9'),); } /** * Test {make_nocache} with values containing '\' @@ -291,7 +291,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty { $this->smarty->setCaching(true); $this->smarty->assign('foo', 'uwe\'s'); - $this->assertEquals($this->strip('uwe\'s'), $this->strip($this->smarty->fetch('002_test_backslash.tpl'))); + $this->assertEquals($this->strip('uwe\'s'), $this->smarty->fetch('002_test_backslash.tpl')); } /** @@ -303,7 +303,7 @@ class CompileMakeNocacheTest extends PHPUnit_Smarty { $this->smarty->setCaching(true); $this->smarty->assign('foo', 'the Smarty template engine'); - $this->assertEquals($this->strip('the Smarty template engine'), $this->strip($this->smarty->fetch('003_test_spaces.tpl'))); + $this->assertEquals('the Smarty template engine', $this->smarty->fetch('003_test_spaces.tpl')); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Php/CompilePhpTest.php b/tests/UnitTests/TemplateSource/TagTests/Php/CompilePhpTest.php index 08f98ee3..fb34e9f4 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Php/CompilePhpTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Php/CompilePhpTest.php @@ -35,7 +35,7 @@ class CompilePhpTest extends PHPUnit_Smarty /** * Test - * @runInSeparateProcess + * @run InSeparateProcess * @preserveGlobalState disabled * @dataProvider data * @@ -43,6 +43,7 @@ class CompilePhpTest extends PHPUnit_Smarty public function testPHP($phpHandling, $templateFile, $result, $testName) { $result = str_replace("\r", '', $result); + $this->smartyBC->force_compile = true; $this->smartyBC->php_handling = $phpHandling; $this->smartyBC->compile_id = $testName.$this->smartyBC->php_handling ; $tpl = $this->smartyBC->createTemplate($templateFile); diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginBlock/PluginBlockTextformatTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginBlock/PluginBlockTextformatTest.php index 8cc03c60..382c73ce 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginBlock/PluginBlockTextformatTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginBlock/PluginBlockTextformatTest.php @@ -24,113 +24,113 @@ class PluginBlockTextformatTest extends PHPUnit_Smarty public function testDefault() { - $result = "\n\nThis is foo. This is foo. This is foo.\nThis is foo. This is foo. This is foo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo\nfoo. bar foo bar foo foo. bar foo bar\nfoo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "This is foo. This is foo. This is foo.\nThis is foo. This is foo. This is foo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo\nfoo. bar foo bar foo foo. bar foo bar\nfoo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\nThis is foo. This is foo. This is foo.\nThis is foo. This is foo. This is foo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo\nfoo. bar foo bar foo foo. bar foo bar\nfoo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "This is foo. This is foo. This is foo.\nThis is foo. This is foo. This is foo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo\nfoo. bar foo bar foo foo. bar foo bar\nfoo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testIndent() { - $result = "\n\n This is foo. This is foo. This is\n foo. This is foo. This is foo. This\n is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo. bar foo bar foo foo.\n bar foo bar foo foo. bar foo bar foo\n foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This is\n foo. This is foo. This is foo. This\n is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo. bar foo bar foo foo.\n bar foo bar foo foo. bar foo bar foo\n foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testIndentWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\n This is foo. This is foo. This is\n foo. This is foo. This is foo. This\n is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo. bar foo bar foo foo.\n bar foo bar foo foo. bar foo bar foo\n foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This is\n foo. This is foo. This is foo. This\n is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo. bar foo bar foo foo.\n bar foo bar foo foo. bar foo bar foo\n foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testIndentFirst() { - $result = "\n\n This is foo. This is foo. This\n is foo. This is foo. This is foo.\n This is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar\n foo foo. bar foo bar foo foo. bar\n foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_first=4}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This\n is foo. This is foo. This is foo.\n This is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar\n foo foo. bar foo bar foo foo. bar\n foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_first=4}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testIndentFirstWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\n This is foo. This is foo. This\n is foo. This is foo. This is foo.\n This is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar\n foo foo. bar foo bar foo foo. bar\n foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_first=4}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This\n is foo. This is foo. This is foo.\n This is foo.\n\n This is bar.\n\n bar foo bar foo foo. bar foo bar\n foo foo. bar foo bar foo foo. bar\n foo bar foo foo. bar foo bar foo\n foo. bar foo bar foo foo. bar foo\n bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_first=4}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testIndentchar() { - $result = "\n\n####This is foo. This is foo. This is\n####foo. This is foo. This is foo. This\n####is foo.\n\n####This is bar.\n\n####bar foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo. bar foo bar foo foo.\n####bar foo bar foo foo. bar foo bar foo\n####foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "####This is foo. This is foo. This is\n####foo. This is foo. This is foo. This\n####is foo.\n\n####This is bar.\n\n####bar foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo. bar foo bar foo foo.\n####bar foo bar foo foo. bar foo bar foo\n####foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testIndentcharWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\n####This is foo. This is foo. This is\n####foo. This is foo. This is foo. This\n####is foo.\n\n####This is bar.\n\n####bar foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo. bar foo bar foo foo.\n####bar foo bar foo foo. bar foo bar foo\n####foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "####This is foo. This is foo. This is\n####foo. This is foo. This is foo. This\n####is foo.\n\n####This is bar.\n\n####bar foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo. bar foo bar foo foo.\n####bar foo bar foo foo. bar foo bar foo\n####foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testIndentcharFirst() { - $result = "\n\n########This is foo. This is foo. This\n####is foo. This is foo. This is foo.\n####This is foo.\n\n########This is bar.\n\n########bar foo bar foo foo. bar foo bar\n####foo foo. bar foo bar foo foo. bar\n####foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_first=4 indent_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "########This is foo. This is foo. This\n####is foo. This is foo. This is foo.\n####This is foo.\n\n########This is bar.\n\n########bar foo bar foo foo. bar foo bar\n####foo foo. bar foo bar foo foo. bar\n####foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_first=4 indent_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testIndentcharFirstWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\n########This is foo. This is foo. This\n####is foo. This is foo. This is foo.\n####This is foo.\n\n########This is bar.\n\n########bar foo bar foo foo. bar foo bar\n####foo foo. bar foo bar foo foo. bar\n####foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 indent_first=4 indent_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "########This is foo. This is foo. This\n####is foo. This is foo. This is foo.\n####This is foo.\n\n########This is bar.\n\n########bar foo bar foo foo. bar foo bar\n####foo foo. bar foo bar foo foo. bar\n####foo bar foo foo. bar foo bar foo\n####foo. bar foo bar foo foo. bar foo\n####bar foo foo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 indent_first=4 indent_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testWrapchar() { - $result = "## This is foo. This is foo. This is#foo. This is foo. This is foo. This#is foo.## This is bar.## bar foo bar foo foo. bar foo bar foo#foo. bar foo bar foo foo. bar foo#bar foo foo. bar foo bar foo foo.#bar foo bar foo foo. bar foo bar foo#foo.##"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 wrap_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This is#foo. This is foo. This is foo. This#is foo.## This is bar.## bar foo bar foo foo. bar foo bar foo#foo. bar foo bar foo foo. bar foo#bar foo foo. bar foo bar foo foo.#bar foo bar foo foo. bar foo bar foo#foo.##"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 wrap_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testWrapcharWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "## This is foo. This is foo. This is#foo. This is foo. This is foo. This#is foo.## This is bar.## bar foo bar foo foo. bar foo bar foo#foo. bar foo bar foo foo. bar foo#bar foo foo. bar foo bar foo foo.#bar foo bar foo foo. bar foo bar foo#foo.##"; - $tpl = $this->smarty->createTemplate('eval:{textformat wrap=40 indent=4 wrap_char="#"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = " This is foo. This is foo. This is#foo. This is foo. This is foo. This#is foo.## This is bar.## bar foo bar foo foo. bar foo bar foo#foo. bar foo bar foo foo. bar foo#bar foo foo. bar foo bar foo foo.#bar foo bar foo foo. bar foo bar foo#foo.##"; + $tpl = $this->smarty->createTemplate('string:{textformat wrap=40 indent=4 wrap_char="#"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testStyleEmail() { - $result = "\n\nThis is foo. This is foo. This is foo. This is foo. This is foo. This is\nfoo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo\nfoo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat style="email"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "This is foo. This is foo. This is foo. This is foo. This is foo. This is\nfoo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo\nfoo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat style="email"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testStyleEmailWithoutMbstring() { Smarty::$_MBSTRING = false; - $result = "\n\nThis is foo. This is foo. This is foo. This is foo. This is foo. This is\nfoo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo\nfoo.\n\n"; - $tpl = $this->smarty->createTemplate('eval:{textformat style="email"}' . $this->string . '{/textformat}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($this->smarty->fetch($tpl))); + $result = "This is foo. This is foo. This is foo. This is foo. This is foo. This is\nfoo.\n\nThis is bar.\n\nbar foo bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo\nbar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo\nfoo.\n\n"; + $tpl = $this->smarty->createTemplate('string:{textformat style="email"}' . $this->string . '{/textformat}'); + $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlCheckboxesTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlCheckboxesTest.php index c9d8da21..3d28dc67 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlCheckboxesTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlCheckboxesTest.php @@ -38,7 +38,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1002 => 'Jane Johnson', 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testSeparateArrays() @@ -59,7 +59,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testIterator() @@ -80,7 +80,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 'Charlie Brown', ))); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNoLabels() @@ -100,7 +100,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testWithId() @@ -120,7 +120,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 'work s ä' => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullString() @@ -142,7 +142,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullValue() @@ -164,7 +164,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroValue() @@ -186,7 +186,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroStringValue() @@ -208,7 +208,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testEmptyStringValue() @@ -230,7 +230,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObject() @@ -250,7 +250,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObjectList() @@ -270,7 +270,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => new _object_toString('Charlie Brown'), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } protected $_errors = array(); @@ -351,7 +351,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testDisabledStrict1() @@ -371,7 +371,7 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testDisabledStrict2() { @@ -410,6 +410,6 @@ class PluginFunctionHtmlCheckboxesTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlOptionsTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlOptionsTest.php index 5a3be66b..c5f7e6c9 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlOptionsTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlOptionsTest.php @@ -39,7 +39,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testSeparateArrays() @@ -60,7 +60,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testIterator() @@ -80,7 +80,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', ))); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testOptgroup() @@ -112,7 +112,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullString() @@ -146,7 +146,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullValue() @@ -184,7 +184,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroValue() @@ -218,7 +218,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroStringValue() @@ -252,7 +252,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testEmptyStringValue() @@ -286,7 +286,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testEmptyStringValues() @@ -324,7 +324,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty ), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObject() @@ -344,7 +344,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObjectList() @@ -364,7 +364,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => new _object_toString('Charlie Brown'), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } protected $_errors = array(); @@ -443,7 +443,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testDisabledStrict() @@ -463,7 +463,7 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); $n = "\n"; $expected = '' @@ -497,6 +497,6 @@ class PluginFunctionHtmlOptionsTest extends PHPUnit_Smarty 2003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlRadiosTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlRadiosTest.php index 7a18351c..0f5789b2 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlRadiosTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlRadiosTest.php @@ -38,7 +38,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testSeparateArrays() @@ -59,7 +59,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testIterator() @@ -80,7 +80,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 'Charlie Brown', ))); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNoLabels() @@ -100,7 +100,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testWithId() @@ -120,7 +120,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 'work s ä' => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullString() @@ -142,7 +142,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testNullValue() @@ -164,7 +164,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroValue() @@ -186,7 +186,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testZeroStringValue() @@ -208,7 +208,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testEmptyStringValue() @@ -230,7 +230,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 2 => 'two', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObject() @@ -250,7 +250,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testObjectList() @@ -270,7 +270,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => new _object_toString('Charlie Brown'), )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } protected $_errors = array(); @@ -351,7 +351,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } public function testDisabledStrict() @@ -371,7 +371,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); $n = "\n"; $expected = '
' @@ -388,7 +388,7 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); $n = "\n"; $expected = '
' @@ -405,6 +405,6 @@ class PluginFunctionHtmlRadiosTest extends PHPUnit_Smarty 1003 => 'Charlie Brown', )); - $this->assertEquals($this->normalizeString($expected), $this->normalizeString($tpl->fetch())); + $this->assertEquals($expected, $tpl->fetch()); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlSelectDateTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlSelectDateTest.php index baec7246..8f4f79de 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlSelectDateTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginFunction/PluginFunctionHtmlSelectDateTest.php @@ -255,7 +255,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . '}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testPrefix() @@ -265,7 +265,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' prefix="foobar_"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testFieldArray() @@ -275,13 +275,13 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_array="namorized"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_array="namorized" prefix="foobar_"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testExtra() @@ -291,19 +291,19 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' all_extra="data-foo=\"xy\""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' day_extra="data-foo=\"day\"" month_extra="data-foo=\"month\"" year_extra="data-foo=\"year\""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' data_foo="foo"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testFieldOrder() @@ -313,13 +313,13 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_order="DMY"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_order="YMD"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testFieldSeparator() @@ -329,13 +329,13 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . ' - ' . ' - '; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_order="DMY" field_separator=" - "}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . ' / ' . ' / '; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' field_order="YMD" field_separator=" / "}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testEmpty() @@ -345,25 +345,25 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' all_empty=""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' all_empty="all"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' year_empty=""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' year_empty="year" month_empty="month" day_empty="day"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testEmptyUnset() @@ -373,25 +373,25 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=null all_empty=""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=null all_empty="all"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=null year_empty=""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=null year_empty="year" month_empty="month" day_empty="day"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testId() @@ -401,19 +401,19 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' all_id=""}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' all_id="all-"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' year_id="year" month_id="month" day_id="day"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testStartYearAbsolute() @@ -423,7 +423,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' start_year=2005}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testStartYearRelative() @@ -433,7 +433,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' start_year="+5"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testStartYearRelativeNegative() @@ -443,7 +443,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' start_year="-5"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testEndYearAbsolute() @@ -453,7 +453,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' end_year=2005}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testEndYearRelative() @@ -463,7 +463,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' end_year="+5"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testEndYearRelativeNegative() @@ -473,7 +473,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' end_year="-5"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testDisplayDaysMonthYear() @@ -482,17 +482,17 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' display_days=false}'); $result = '' . $n . ''; - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' display_months=false}'); $result = '' . $n . ''; - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' display_years=false}'); $result = '' . $n . ''; - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testYearsReversed() @@ -502,13 +502,13 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' start_year=2005 reverse_years=true}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $result = '' . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' start_year="+5" reverse_years=true}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testYearText() @@ -525,7 +525,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ""; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' year_as_text=true prefix="foo_"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testMonthFormat() @@ -535,7 +535,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' month_format="%b"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testMonthFormatValue() @@ -545,7 +545,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' month_value_format="%b"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testMonthNames() @@ -555,7 +555,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{$names = [1 => "alpha","bravo","charlie","delta","echo","foxtrot","golf","hotel","india","juliet","kilo","lima"]}{html_select_date time=' . $this->now . ' month_names=$names}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testDayFormat() @@ -565,7 +565,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' day_format="%03d"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testDayFormatValue() @@ -575,7 +575,7 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty . $n . '' . $n . ''; $tpl = $this->smarty->createTemplate('eval:{html_select_date time=' . $this->now . ' day_value_format="%03d"}'); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } public function testTimeArray() @@ -595,10 +595,10 @@ class PluginFunctionHtmlSelectDateTest extends PHPUnit_Smarty $tpl = $this->smarty->createTemplate('eval:{html_select_date time=$date_array.namorized field_array="namorized" prefix="foobar_"}'); $tpl->assign('date_array', $date_array); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); $tpl = $this->smarty->createTemplate('eval:{html_select_date time=$date_array field_array="namorized" prefix="foobar_"}'); $tpl->assign('date_array', $date_array); - $this->assertEquals($this->normalizeString($result), $this->normalizeString($tpl->fetch())); + $this->assertEquals($result, $tpl->fetch()); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCapitalizeTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCapitalizeTest.php index 8bc697eb..a78dce31 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCapitalizeTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCapitalizeTest.php @@ -10,38 +10,41 @@ * class for modifier tests * * @runTestsInSeparateProcess - * @preserveGlobalState disabled + * @preserveGlobalState disabled * @backupStaticAttributes enabled */ class PluginModifierCapitalizeTest extends PHPUnit_Smarty { - public function setUp() + public function setUp() { $this->setUpSmarty(dirname(__FILE__)); } public function testDefault() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, Delayed. Ümlauts Äre Cööl.", $this->smarty->fetch($tpl)); } public function testDigits() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, Delayed. Ümlauts Äre Cööl.", $this->smarty->fetch($tpl)); } public function testTrueCaptials() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize:true:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed. ümlauts äre cööl."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, Delayed. Ümlauts Äre Cööl.", $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed."|capitalize}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, Delayed.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -49,7 +52,8 @@ class PluginModifierCapitalizeTest extends PHPUnit_Smarty public function testDigitsWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed."|capitalize:true}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, Delayed.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -57,79 +61,92 @@ class PluginModifierCapitalizeTest extends PHPUnit_Smarty public function testTrueCaptialsWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, delayed."|capitalize:true:true}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, delayed."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, Delayed.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testQuotes() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); } public function testQuotesWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize}'); $this->assertEquals("Next X-Men FiLm, x3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testQuotesDigits() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); } public function testQuotesDigitsWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true}'); + $this->smarty->setCompileId('mb'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true}'); $this->assertEquals("Next X-Men FiLm, X3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testQuotesTrueCapitals() { - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); } public function testQuotesTrueCapitalsWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true:true}'); + $this->smarty->setCompileId('mb'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \"delayed. umlauts\" foo."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, \"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true:true}'); + $tpl = + $this->smarty->createTemplate('string:{"next x-men fiLm, x3, \'delayed. umlauts\' foo."|capitalize:true:true}'); $this->assertEquals("Next X-Men Film, X3, 'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testQuotesBeginning() { - $tpl = $this->smarty->createTemplate('eval:{"\"delayed. umlauts\" foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"\"delayed. umlauts\" foo."|capitalize}'); $this->assertEquals("\"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"\'delayed. umlauts\' foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"\'delayed. umlauts\' foo."|capitalize}'); $this->assertEquals("'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); } public function testQuotesBeginningWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"\"delayed. umlauts\" foo."|capitalize}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"\"delayed. umlauts\" foo."|capitalize}'); $this->assertEquals("\"Delayed. Umlauts\" Foo.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"\'delayed. umlauts\' foo."|capitalize}'); + $tpl = $this->smarty->createTemplate('string:{"\'delayed. umlauts\' foo."|capitalize}'); $this->assertEquals("'Delayed. Umlauts' Foo.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCharsetTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCharsetTest.php index fea90d39..87fd673f 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCharsetTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCharsetTest.php @@ -10,7 +10,7 @@ * class for modifier tests * * @runTestsInSeparateProcess - * @preserveGlobalState disabled + * @preserveGlobalState disabled * @backupStaticAttributes enabled */ class PluginModifierCharsetTest extends PHPUnit_Smarty @@ -24,16 +24,17 @@ class PluginModifierCharsetTest extends PHPUnit_Smarty { $encoded = "hällö wörld 1"; $result = utf8_decode($encoded); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|to_charset}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|to_charset}'); $this->assertEquals(str_replace("\r", '', $result), $tpl->fetch()); } public function testToLatin1WithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId('mb'); $encoded = "hällö wörld 2"; $result = utf8_decode($encoded); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|to_charset}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|to_charset}'); $this->assertEquals($encoded, $tpl->fetch()); Smarty::$_MBSTRING = true; } @@ -42,16 +43,17 @@ class PluginModifierCharsetTest extends PHPUnit_Smarty { $result = "hällö wörld 3"; $encoded = utf8_decode($result); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|from_charset}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|from_charset}'); $this->assertEquals(str_replace("\r", '', $result), $tpl->fetch()); } public function testFromLatin1WithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId('mb'); $result = "hällö wörld 4"; $encoded = utf8_decode($result); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|from_charset}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|from_charset}'); $this->assertEquals($encoded, $tpl->fetch()); Smarty::$_MBSTRING = true; } @@ -60,16 +62,17 @@ class PluginModifierCharsetTest extends PHPUnit_Smarty { $result = "hällö wörld 5"; $encoded = mb_convert_encoding($result, "UTF-32LE", "UTF-8"); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|from_charset:"UTF-32LE"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|from_charset:"UTF-32LE"}'); $this->assertEquals(str_replace("\r", '', $result), $tpl->fetch()); } public function testFromUtf32leWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId('mb'); $result = "hällö wörld 6"; $encoded = mb_convert_encoding($result, "UTF-32LE", "UTF-8"); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|from_charset:"UTF-32LE"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|from_charset:"UTF-32LE"}'); $this->assertEquals($encoded, $tpl->fetch()); Smarty::$_MBSTRING = true; } @@ -78,16 +81,17 @@ class PluginModifierCharsetTest extends PHPUnit_Smarty { $encoded = "hällö wörld 7"; $result = mb_convert_encoding($encoded, "UTF-32LE", "UTF-8"); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|to_charset:"UTF-32LE"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|to_charset:"UTF-32LE"}'); $this->assertEquals(str_replace("\r", '', $result), $tpl->fetch()); } public function testToUtf32leWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId('mb'); $encoded = "hällö wörld 8"; $result = mb_convert_encoding($encoded, "UTF-32LE", "UTF-8"); - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|to_charset:"UTF-32LE"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|to_charset:"UTF-32LE"}'); $this->assertEquals($encoded, $tpl->fetch()); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountCharactersTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountCharactersTest.php index fbe45be6..b2026cc8 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountCharactersTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountCharactersTest.php @@ -10,7 +10,7 @@ * class for modifier tests * * @runTestsInSeparateProcess - * @preserveGlobalState disabled + * @preserveGlobalState disabled * @backupStaticAttributes enabled */ class PluginModifierCountCharactersTest extends PHPUnit_Smarty @@ -23,15 +23,16 @@ class PluginModifierCountCharactersTest extends PHPUnit_Smarty public function testDefault() { $result = "29"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wave Linked to Temperatures."|count_characters}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wave Linked to Temperatures."|count_characters}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId ('mb'); $result = "29"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wave Linked to Temperatures."|count_characters}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wave Linked to Temperatures."|count_characters}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -39,15 +40,16 @@ class PluginModifierCountCharactersTest extends PHPUnit_Smarty public function testSpaces() { $result = "33"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wave Linked to Temperatures."|count_characters:true}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wave Linked to Temperatures."|count_characters:true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testSpacesWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId ('mb'); $result = "33"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wave Linked to Temperatures."|count_characters:true}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wave Linked to Temperatures."|count_characters:true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -55,15 +57,16 @@ class PluginModifierCountCharactersTest extends PHPUnit_Smarty public function testUmlauts() { $result = "29"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wäve Linked tö Temperatures."|count_characters}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wäve Linked tö Temperatures."|count_characters}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testUmlautsWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId ('mb'); $result = "29"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wäve Linked tö Temperatures."|count_characters}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wäve Linked tö Temperatures."|count_characters}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -71,15 +74,16 @@ class PluginModifierCountCharactersTest extends PHPUnit_Smarty public function testUmlautsSpaces() { $result = "33"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wäve Linked tö Temperatures."|count_characters:true}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wäve Linked tö Temperatures."|count_characters:true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testUmlautsSpacesWithoutMbstring() { Smarty::$_MBSTRING = false; + $this->smarty->setCompileId ('mb'); $result = "33"; - $tpl = $this->smarty->createTemplate('eval:{"Cold Wäve Linked tö Temperatures."|count_characters:true}'); + $tpl = $this->smarty->createTemplate('string:{"Cold Wäve Linked tö Temperatures."|count_characters:true}'); $this->assertNotEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountSentencesTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountSentencesTest.php index 60fa7f1e..acca87cb 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountSentencesTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountSentencesTest.php @@ -29,7 +29,7 @@ class PluginModifierCountSentencesTest extends PHPUnit_Smarty { $tpl = $this->smarty->createTemplate('string:{"hello world."|count_sentences}'); $this->assertEquals("1", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello world. I\'m another? Sentence!"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello world. I\'m another? Sentence!"|count_sentences}'); $this->assertEquals("3", $this->smarty->fetch($tpl)); $tpl = $this->smarty->createTemplate('string:{"hello world.wrong"|count_sentences}'); $this->assertEquals("0", $this->smarty->fetch($tpl)); @@ -37,27 +37,27 @@ class PluginModifierCountSentencesTest extends PHPUnit_Smarty public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"hello world."|count_sentences}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"hello world."|count_sentences}'); $this->assertEquals("1", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello world. I\'m another? Sentence!"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello world. I\'m another? Sentence!"|count_sentences}'); $this->assertEquals("3", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello world.wrong"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello world.wrong"|count_sentences}'); $this->assertEquals("0", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testUmlauts() { - $tpl = $this->smarty->createTemplate('eval:{"hello worldä."|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello worldä."|count_sentences}'); $this->assertEquals("1", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello worldü. ä\'m another? Sentence!"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello worldü. ä\'m another? Sentence!"|count_sentences}'); $this->assertEquals("3", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello worlä.ärong"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello worlä.ärong"|count_sentences}'); $this->assertEquals("0", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello worlä.wrong"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello worlä.wrong"|count_sentences}'); $this->assertEquals("0", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"hello world.ärong"|count_sentences}'); + $tpl = $this->smarty->createTemplate('string:{"hello world.ärong"|count_sentences}'); $this->assertEquals("0", $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountWordsTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountWordsTest.php index 44a76066..2da98e1b 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountWordsTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierCountWordsTest.php @@ -23,15 +23,15 @@ class PluginModifierCountWordsTest extends PHPUnit_Smarty public function testDefault() { $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Dealers Will Hear Car Talk at Noon."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Dealers Will Hear Car Talk at Noon."|count_words}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Dealers Will Hear Car Talk at Noon."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Dealers Will Hear Car Talk at Noon."|count_words}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -39,15 +39,15 @@ class PluginModifierCountWordsTest extends PHPUnit_Smarty public function testDashes() { $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Smalltime-Dealers Will Hear Car Talk at Noon."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Smalltime-Dealers Will Hear Car Talk at Noon."|count_words}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDashesWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Smalltime-Dealers Will Hear Car Talk at Noon."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Smalltime-Dealers Will Hear Car Talk at Noon."|count_words}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -55,15 +55,15 @@ class PluginModifierCountWordsTest extends PHPUnit_Smarty public function testUmlauts() { $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Dealers Will Hear Cär Talk at Nöön."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Dealers Will Hear Cär Talk at Nöön."|count_words}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testUmlautsWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "7"; - $tpl = $this->smarty->createTemplate('eval:{"Dealers Will Hear Cär Talk at Nöön."|count_words}'); + $tpl = $this->smarty->createTemplate('string:{"Dealers Will Hear Cär Talk at Nöön."|count_words}'); $this->assertNotEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierEscapeTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierEscapeTest.php index 9e070750..afabe71a 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierEscapeTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierEscapeTest.php @@ -22,98 +22,98 @@ class PluginModifierEscapeTest extends PHPUnit_Smarty public function testHtml() { - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"html"}'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"html"}'); $this->assertEquals("I'm some <html> to ä be "escaped" or &copy;", $this->smarty->fetch($tpl)); } public function testHtmlWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"html"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"html"}'); $this->assertEquals("I'm some <html> to ä be "escaped" or &copy;", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testHtmlDouble() { - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"html":null:false}'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"html":null:false}'); $this->assertEquals("I'm some <html> to ä be "escaped" or ©", $this->smarty->fetch($tpl)); } public function testHtmlDoubleWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"html":null:false}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"html":null:false}'); $this->assertEquals("I'm some <html> to ä be "escaped" or ©", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testHtmlall() { - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall"}'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall"}'); $this->assertEquals("I'm some <html> to ä be "escaped" or &copy;", $this->smarty->fetch($tpl)); } public function testHtmlallWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall"}'); $this->assertEquals("I'm some <html> to ä be "escaped" or &copy;", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testHtmlallDouble() { - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall":null:false}'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall":null:false}'); $this->assertEquals("I'm some <html> to ä be "escaped" or ©", $this->smarty->fetch($tpl)); } public function testHtmlallDoubleWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall":null:false}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"I\'m some to ä be \"escaped\" or ©"|escape:"htmlall":null:false}'); $this->assertEquals("I'm some <html> to ä be "escaped" or ©", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testUrl() { - $tpl = $this->smarty->createTemplate('eval:{"http://some.encoded.com/url?parts#foo"|escape:"url"}'); + $tpl = $this->smarty->createTemplate('string:{"http://some.encoded.com/url?parts#foo"|escape:"url"}'); $this->assertEquals("http%3A%2F%2Fsome.encoded.com%2Furl%3Fparts%23foo", $this->smarty->fetch($tpl)); } public function testUrlWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"http://some.encoded.com/url?parts#foo"|escape:"url"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"http://some.encoded.com/url?parts#foo"|escape:"url"}'); $this->assertEquals("http%3A%2F%2Fsome.encoded.com%2Furl%3Fparts%23foo", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testUrlpathinfo() { - $tpl = $this->smarty->createTemplate('eval:{"http://some.encoded.com/url?parts#foo"|escape:"urlpathinfo"}'); + $tpl = $this->smarty->createTemplate('string:{"http://some.encoded.com/url?parts#foo"|escape:"urlpathinfo"}'); $this->assertEquals("http%3A//some.encoded.com/url%3Fparts%23foo", $this->smarty->fetch($tpl)); } public function testUrlpathinfoWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"http://some.encoded.com/url?parts#foo"|escape:"urlpathinfo"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"http://some.encoded.com/url?parts#foo"|escape:"urlpathinfo"}'); $this->assertEquals("http%3A//some.encoded.com/url%3Fparts%23foo", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testHex() { - $tpl = $this->smarty->createTemplate('eval:{"a/cäa"|escape:"hex"}'); + $tpl = $this->smarty->createTemplate('string:{"a/cäa"|escape:"hex"}'); $this->assertEquals("%61%2f%63%c3%a4%61", $this->smarty->fetch($tpl)); } public function testHexWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"a/cäa"|escape:"hex"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"a/cäa"|escape:"hex"}'); $this->assertEquals("%61%2f%63%c3%a4%61", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -122,22 +122,22 @@ class PluginModifierEscapeTest extends PHPUnit_Smarty { $q = "aäЗдравсствуйте"; $r = html_entity_decode($q, ENT_NOQUOTES, 'UTF-8'); - $tpl = $this->smarty->createTemplate('eval:{"' . $r . '"|escape:"hexentity"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $r . '"|escape:"hexentity"}'); $this->assertEquals("aäЗдравсствуйте", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"abc"|escape:"hexentity"}'); + $tpl = $this->smarty->createTemplate('string:{"abc"|escape:"hexentity"}'); $this->assertEquals("abc", $this->smarty->fetch($tpl)); } public function testHexentityWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $q = "aäЗдравсствуйте"; $r = html_entity_decode($q, ENT_NOQUOTES, 'UTF-8'); - $tpl = $this->smarty->createTemplate('eval:{"' . $r . '"|escape:"hexentity"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $r . '"|escape:"hexentity"}'); $this->assertNotEquals("aäЗдравсствуйте", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"abc"|escape:"hexentity"}'); + $tpl = $this->smarty->createTemplate('string:{"abc"|escape:"hexentity"}'); $this->assertEquals("abc", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -146,64 +146,64 @@ class PluginModifierEscapeTest extends PHPUnit_Smarty { $q = "aäЗдравсствуйте"; $r = html_entity_decode($q, ENT_NOQUOTES, 'UTF-8'); - $tpl = $this->smarty->createTemplate('eval:{"' . $r . '"|escape:"decentity"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $r . '"|escape:"decentity"}'); $this->assertEquals("aäЗдравсствуйте", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"abc"|escape:"decentity"}'); + $tpl = $this->smarty->createTemplate('string:{"abc"|escape:"decentity"}'); $this->assertEquals("abc", $this->smarty->fetch($tpl)); } public function testDecentityWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $q = "aäЗдравсствуйте"; $r = html_entity_decode($q, ENT_NOQUOTES, 'UTF-8'); - $tpl = $this->smarty->createTemplate('eval:{"' . $r . '"|escape:"decentity"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $r . '"|escape:"decentity"}'); $this->assertNotEquals("aäЗдравсствуйте", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"abc"|escape:"decentity"}'); + $tpl = $this->smarty->createTemplate('string:{"abc"|escape:"decentity"}'); $this->assertEquals("abc", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testJavascript() { - $tpl = $this->smarty->createTemplate('eval:{"var x = { foo : \"bar\n\" };"|escape:"javascript"}'); + $tpl = $this->smarty->createTemplate('string:{"var x = { foo : \"bar\n\" };"|escape:"javascript"}'); $this->assertEquals("var x = { foo : \\\"bar\\n\\\" };", $this->smarty->fetch($tpl)); } public function testJavascriptWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"var x = { foo : \"bar\n\" };"|escape:"javascript"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"var x = { foo : \"bar\n\" };"|escape:"javascript"}'); $this->assertEquals("var x = { foo : \\\"bar\\n\\\" };", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testMail() { - $tpl = $this->smarty->createTemplate('eval:{"smarty@example.com"|escape:"mail"}'); + $tpl = $this->smarty->createTemplate('string:{"smarty@example.com"|escape:"mail"}'); $this->assertEquals("smarty [AT] example [DOT] com", $this->smarty->fetch($tpl)); } public function testMailWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"smarty@example.com"|escape:"mail"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"smarty@example.com"|escape:"mail"}'); $this->assertEquals("smarty [AT] example [DOT] com", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testNonstd() { - $tpl = $this->smarty->createTemplate('eval:{"sma\'rty|»example«.com"|escape:"nonstd"}'); + $tpl = $this->smarty->createTemplate('string:{"sma\'rty|»example«.com"|escape:"nonstd"}'); $this->assertEquals("sma'rty|»example«.com", $this->smarty->fetch($tpl)); } public function testNonstdWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"' . utf8_decode('sma\'rty@»example«.com') . '"|escape:"nonstd"}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"' . utf8_decode('sma\'rty@»example«.com') . '"|escape:"nonstd"}'); $this->assertEquals("sma'rty@»example«.com", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierLowerTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierLowerTest.php index da0f8c2b..e465c7b9 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierLowerTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierLowerTest.php @@ -22,15 +22,15 @@ class PluginModifierLowerTest extends PHPUnit_Smarty public function testDefault() { $result = "two convicts evade noose, jury hung."; - $tpl = $this->smarty->createTemplate('eval:{"Two Convicts Evade Noose, Jury Hung."|lower}'); + $tpl = $this->smarty->createTemplate('string:{"Two Convicts Evade Noose, Jury Hung."|lower}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "two convicts evade noose, jury hung."; - $tpl = $this->smarty->createTemplate('eval:{"Two Convicts Evade Noose, Jury Hung."|lower}'); + $tpl = $this->smarty->createTemplate('string:{"Two Convicts Evade Noose, Jury Hung."|lower}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -38,15 +38,15 @@ class PluginModifierLowerTest extends PHPUnit_Smarty public function testUmlauts() { $result = "two convicts eväde nööse, jury hung."; - $tpl = $this->smarty->createTemplate('eval:{"Two Convicts Eväde NöÖse, Jury Hung."|lower}'); + $tpl = $this->smarty->createTemplate('string:{"Two Convicts Eväde NöÖse, Jury Hung."|lower}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testUmlautsWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "two convicts eväde nööse, jury hung."; - $tpl = $this->smarty->createTemplate('eval:{"Two Convicts Eväde NöÖse, Jury Hung."|lower}'); + $tpl = $this->smarty->createTemplate('string:{"Two Convicts Eväde NöÖse, Jury Hung."|lower}'); $this->assertNotEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierRegexReplaceTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierRegexReplaceTest.php index 036936e8..88ce0982 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierRegexReplaceTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierRegexReplaceTest.php @@ -22,24 +22,24 @@ class PluginModifierRegexReplaceTest extends PHPUnit_Smarty public function testDefault() { - $tpl = $this->smarty->createTemplate('eval:{"Infertility unlikely to\nbe passed on, experts say."|regex_replace:"/[\r\t\n]/":" "}'); + $tpl = $this->smarty->createTemplate('string:{"Infertility unlikely to\nbe passed on, experts say."|regex_replace:"/[\r\t\n]/":" "}'); $this->assertEquals("Infertility unlikely to be passed on, experts say.", $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Infertility unlikely to\nbe passed on, experts say."|regex_replace:"/[\r\t\n]/":" "}'); + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Infertility unlikely to\nbe passed on, experts say."|regex_replace:"/[\r\t\n]/":" "}'); $this->assertEquals("Infertility unlikely to be passed on, experts say.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testUmlauts() { - $tpl = $this->smarty->createTemplate('eval:{"Infertility unlikely tö\näe passed on, experts say."|regex_replace:"/[\r\t\n]/u":" "}'); + $tpl = $this->smarty->createTemplate('string:{"Infertility unlikely tö\näe passed on, experts say."|regex_replace:"/[\r\t\n]/u":" "}'); $this->assertEquals("Infertility unlikely tö äe passed on, experts say.", $this->smarty->fetch($tpl)); - $tpl = $this->smarty->createTemplate('eval:{"Infertility unlikely tä be passed on, experts say."|regex_replace:"/[ä]/ue":"ae"}'); + $tpl = $this->smarty->createTemplate('string:{"Infertility unlikely tä be passed on, experts say."|regex_replace:"/[ä]/ue":"ae"}'); $this->assertEquals("Infertility unlikely tae be passed on, experts say.", $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierSpacifyTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierSpacifyTest.php index 070e37e3..2ccd6cdb 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierSpacifyTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierSpacifyTest.php @@ -23,14 +23,14 @@ class PluginModifierSpacifyTest extends PHPUnit_Smarty public function testDefault() { $result = 'h e l l o w ö r l d'; - $tpl = $this->smarty->createTemplate('eval:{"hello wörld"|spacify}'); + $tpl = $this->smarty->createTemplate('string:{"hello wörld"|spacify}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testCharacter() { $result = 'h##e##l##l##o## ##w##ö##r##l##d'; - $tpl = $this->smarty->createTemplate('eval:{"hello wörld"|spacify:"##"}'); + $tpl = $this->smarty->createTemplate('string:{"hello wörld"|spacify:"##"}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierStripTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierStripTest.php index 70408245..9dc7bdf3 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierStripTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierStripTest.php @@ -22,7 +22,7 @@ class PluginModifierStripTest extends PHPUnit_Smarty public function testDefault() { - $tpl = $this->smarty->createTemplate('eval:{" hello spaced words "|strip}'); + $tpl = $this->smarty->createTemplate('string:{" hello spaced words "|strip}'); $this->assertEquals(" hello spaced words ", $this->smarty->fetch($tpl)); } @@ -31,13 +31,13 @@ class PluginModifierStripTest extends PHPUnit_Smarty // Some Unicode Spaces $string = " hello spaced       words "; $string = mb_convert_encoding($string, 'UTF-8', "HTML-ENTITIES"); - $tpl = $this->smarty->createTemplate('eval:{"' . $string . '"|strip}'); + $tpl = $this->smarty->createTemplate('string:{"' . $string . '"|strip}'); $this->assertEquals(" hello spaced words ", $this->smarty->fetch($tpl)); } public function testLinebreak() { - $tpl = $this->smarty->createTemplate('eval:{" hello + $tpl = $this->smarty->createTemplate('string:{" hello spaced words "|strip}'); $this->assertEquals(" hello spaced words ", $this->smarty->fetch($tpl)); } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierTruncateTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierTruncateTest.php index 071f1026..7af50af6 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierTruncateTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierTruncateTest.php @@ -23,15 +23,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testDefault() { $result = 'Two Sisters Reunite after Eighteen Years at Checkout Counter.'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after Eighteen Years at Checkout Counter.'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -39,15 +39,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testLength() { $result = 'Two Sisters Reunite after...'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testLengthWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after...'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -55,15 +55,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testEtc() { $result = 'Two Sisters Reunite after'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:""}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:""}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testEtcWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:""}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:""}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -71,15 +71,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testEtc2() { $result = 'Two Sisters Reunite after---'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"---"}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"---"}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testEtc2WithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after---'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"---"}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"---"}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -87,15 +87,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testBreak() { $result = 'Two Sisters Reunite after Eigh'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"":true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"":true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testBreakWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after Eigh'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"":true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"":true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -103,15 +103,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testBreak2() { $result = 'Two Sisters Reunite after E...'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"...":true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"...":true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testBreak2WithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Reunite after E...'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"...":true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"...":true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -119,15 +119,15 @@ class PluginModifierTruncateTest extends PHPUnit_Smarty public function testMiddle() { $result = 'Two Sisters Re..ckout Counter.'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"..":true:true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"..":true:true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testMiddleWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = 'Two Sisters Re..ckout Counter.'; - $tpl = $this->smarty->createTemplate('eval:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"..":true:true}'); + $tpl = $this->smarty->createTemplate('string:{"Two Sisters Reunite after Eighteen Years at Checkout Counter."|truncate:30:"..":true:true}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUnescapeTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUnescapeTest.php index 5fac59ac..608eb5c4 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUnescapeTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUnescapeTest.php @@ -24,16 +24,16 @@ class PluginModifierUnescapeTest extends PHPUnit_Smarty { $encoded = "aäЗдра><&amp;ääвсствуйте"; $result = "aäЗдра><&ääвсствуйте"; - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|unescape:"html"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|unescape:"html"}'); $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testHtmlWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $encoded = "aäЗдра><&amp;ääвсствуйте"; $result = "aäЗдра><&ääвсствуйте"; - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|unescape:"html"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|unescape:"html"}'); $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -42,16 +42,16 @@ class PluginModifierUnescapeTest extends PHPUnit_Smarty { $encoded = "aäЗдра><&amp;ääвсствуйте"; $result = "aäЗдра><&ääвсствуйте"; - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|unescape:"htmlall"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|unescape:"htmlall"}'); $this->assertEquals($result, $this->smarty->fetch($tpl)); } public function testHtmlallWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $encoded = "aäЗдра><&amp;ääвсствуйте"; $result = "aäЗдра><&ääвсствуйте"; - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|unescape:"htmlall"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|unescape:"htmlall"}'); $this->assertEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -60,7 +60,7 @@ class PluginModifierUnescapeTest extends PHPUnit_Smarty { $encoded = "a%C3%A4%D0%97%D0%B4%D1%80%D0%B0%3E%3C%26amp%3B%C3%A4%C3%A4%D0%B2%D1%81%D1%81%D1%82%D0%B2%3F%3D%2B%D1%83%D0%B9%D1%82%D0%B5"; $result = "aäЗдра><&ääвсств?=+уйте"; - $tpl = $this->smarty->createTemplate('eval:{"' . $encoded . '"|unescape:"url"}'); + $tpl = $this->smarty->createTemplate('string:{"' . $encoded . '"|unescape:"url"}'); $this->assertEquals($result, $this->smarty->fetch($tpl)); } } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUpperTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUpperTest.php index dd2c11c6..fb96fa5b 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUpperTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierUpperTest.php @@ -23,15 +23,15 @@ class PluginModifierUpperTest extends PHPUnit_Smarty public function testDefault() { $result = "IF STRIKE ISN'T SETTLED QUICKLY IT MAY LAST A WHILE."; - $tpl = $this->smarty->createTemplate('eval:{"If Strike isn\'t Settled Quickly it may Last a While."|upper}'); + $tpl = $this->smarty->createTemplate('string:{"If Strike isn\'t Settled Quickly it may Last a While."|upper}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "IF STRIKE ISN'T SETTLED QUICKLY IT MAY LAST A WHILE."; - $tpl = $this->smarty->createTemplate('eval:{"If Strike isn\'t Settled Quickly it may Last a While."|upper}'); + $tpl = $this->smarty->createTemplate('string:{"If Strike isn\'t Settled Quickly it may Last a While."|upper}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } @@ -39,15 +39,15 @@ class PluginModifierUpperTest extends PHPUnit_Smarty public function testUmlauts() { $result = "IF STRIKE ISN'T SÄTTLED ÜQUICKLY IT MAY LAST A WHILE."; - $tpl = $this->smarty->createTemplate('eval:{"If Strike isn\'t Sättled ÜQuickly it may Last a While."|upper}'); + $tpl = $this->smarty->createTemplate('string:{"If Strike isn\'t Sättled ÜQuickly it may Last a While."|upper}'); $this->assertEquals(str_replace("\r", '', $result), $this->smarty->fetch($tpl)); } public function testUmlautsWithoutMbstring() { - Smarty::$_MBSTRING = false; + Smarty::$_MBSTRING = false;$this->smarty->setCompileId('mb'); $result = "IF STRIKE ISN'T SÄTTLED ÜQUICKLY IT MAY LAST A WHILE."; - $tpl = $this->smarty->createTemplate('eval:{"If Strike isn\'t Sättled ÜQuickly it may Last a While."|upper}'); + $tpl = $this->smarty->createTemplate('string:{"If Strike isn\'t Sättled ÜQuickly it may Last a While."|upper}'); $this->assertNotEquals($result, $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } diff --git a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierWordwrapTest.php b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierWordwrapTest.php index 96150691..bd94590d 100644 --- a/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierWordwrapTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/PluginModifier/PluginModifierWordwrapTest.php @@ -22,125 +22,132 @@ class PluginModifierWordwrapTest extends PHPUnit_Smarty public function testDefault() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap}'); $this->assertEquals("Blind woman gets new kidney from dad she hasn't seen in years.", $this->smarty->fetch($tpl)); } public function testDefaultWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap}'); $this->assertEquals("Blind woman gets new kidney from dad she hasn't seen in years.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testDefaultUmlauts() { - $tpl = $this->smarty->createTemplate('eval:{"äöüßñ woman ñsä new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); + $tpl = $this->smarty->createTemplate('string:{"äöüßñ woman ñsä new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); $this->assertEquals("äöüßñ woman ñsä new kidney\nfrom dad she hasn't seen in\nyears.", $this->smarty->fetch($tpl)); } public function testLength() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); $this->assertEquals("Blind woman gets new kidney\nfrom dad she hasn't seen in\nyears.", $this->smarty->fetch($tpl)); } public function testLengthWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); $this->assertEquals("Blind woman gets new kidney\nfrom dad she hasn't seen in\nyears.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testBreak() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30:"
\n"}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30:"
\n"}'); $this->assertEquals("Blind woman gets new kidney
\nfrom dad she hasn't seen in
\nyears.", $this->smarty->fetch($tpl)); } public function testBreakWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30:"
\n"}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30:"
\n"}'); $this->assertEquals("Blind woman gets new kidney
\nfrom dad she hasn't seen in
\nyears.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testLong() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n"}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n"}'); $this->assertEquals("Blind woman\nwithaverylongandunpronoucablenameorso\ngets new kidney from dad\nshe hasn't seen in years.", $this->smarty->fetch($tpl)); } public function testLongWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n"}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n"}'); $this->assertEquals("Blind woman\nwithaverylongandunpronoucablenameorso\ngets new kidney from dad\nshe hasn't seen in years.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testLongUmlauts() { - $tpl = $this->smarty->createTemplate('eval:{"äöüßñ woman ñsääöüßñameorsoäöüßñäöüßñäöüßñäöüßñßñ gets new kidney from dad she hasn\'t seen in years."|wordwrap:26}'); + $tpl = $this->smarty->createTemplate('string:{"äöüßñ woman ñsääöüßñameorsoäöüßñäöüßñäöüßñäöüßñßñ gets new kidney from dad she hasn\'t seen in years."|wordwrap:26}'); $this->assertEquals("äöüßñ woman\nñsääöüßñameorsoäöüßñäöüßñäöüßñäöüßñßñ\ngets new kidney from dad\nshe hasn't seen in years.", $this->smarty->fetch($tpl)); } public function testLongCut() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); $this->assertEquals("Blind woman\nwithaverylongandunpronouca\nblenameorso gets new\nkidney from dad she hasn't\nseen in years.", $this->smarty->fetch($tpl)); } public function testLongCutWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman withaverylongandunpronoucablenameorso gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); $this->assertEquals("Blind woman\nwithaverylongandunpronouca\nblenameorso gets new\nkidney from dad she hasn't\nseen in years.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testLongCutUmlauts() { - $tpl = $this->smarty->createTemplate('eval:{"äöüßñ woman ñsääöüßñameorsoäöüßñäöüßñäöüßñäöüßñßñ gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); + $tpl = $this->smarty->createTemplate('string:{"äöüßñ woman ñsääöüßñameorsoäöüßñäöüßñäöüßñäöüßñßñ gets new kidney from dad she hasn\'t seen in years."|wordwrap:26:"\n":true}'); $this->assertEquals("äöüßñ woman\nñsääöüßñameorsoäöüßñäöüßñä\nöüßñäöüßñßñ gets new\nkidney from dad she hasn't\nseen in years.", $this->smarty->fetch($tpl)); } public function testLinebreaks() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman\ngets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman\ngets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); $this->assertEquals("Blind woman\ngets new kidney from dad she\nhasn't seen in years.", $this->smarty->fetch($tpl)); } public function testLinebreaksWithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman\ngets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman\ngets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); $this->assertEquals("Blind woman\ngets new kidney from dad she\nhasn't seen in years.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } public function testLinebreaks2() { - $tpl = $this->smarty->createTemplate('eval:{"Blind woman + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); - $this->assertEquals($this->normalizeString("Blind woman + $this->assertEquals("Blind woman gets - new kidney from\ndad she hasn't seen in years."), $this->smarty->fetch($tpl)); + new kidney from\ndad she hasn't seen in years.", $this->smarty->fetch($tpl)); } public function testLinebreaks2WithoutMbstring() { Smarty::$_MBSTRING = false; - $tpl = $this->smarty->createTemplate('eval:{"Blind woman + $this->smarty->setCompileId('mb'); + $tpl = $this->smarty->createTemplate('string:{"Blind woman gets new kidney from dad she hasn\'t seen in years."|wordwrap:30}'); - $this->assertEquals($this->normalizeString("Blind woman + $this->assertEquals("Blind woman gets - new kidney from\ndad she hasn't seen in years."), $this->smarty->fetch($tpl)); + new kidney from\ndad she hasn't seen in years.", $this->smarty->fetch($tpl)); Smarty::$_MBSTRING = true; } /* @@ -149,7 +156,7 @@ class PluginModifierWordwrapTest extends PHPUnit_Smarty // Some Unicode Spaces $string = " hello spaced       words "; $string = mb_convert_encoding($string, 'UTF-8', "HTML-ENTITIES"); - $tpl = $this->smarty->createTemplate('eval:{"' . $string . '"|strip}'); + $tpl = $this->smarty->createTemplate('string:{"' . $string . '"|strip}'); $this->assertEquals(" hello spaced words ", $this->smarty->fetch($tpl)); } */ diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/CompileSectionTest.php b/tests/UnitTests/TemplateSource/TagTests/Section/CompileSectionTest.php index 4d4389a5..0cedbcfd 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Section/CompileSectionTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Section/CompileSectionTest.php @@ -62,5 +62,90 @@ class CompileSectionTest extends PHPUnit_Smarty $this->smarty->assign('foo', array(0,1,2,3,4,5,6,7,8,9)); $this->assertEquals("011223344556677889910", $this->smarty->fetch('007_section.tpl')); } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', array(1,2)); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{section name=bar loop=\$foo}{\$foo[bar]}{/section}C", "A12C", 'T1', $i++), + array("A{section name=bar loop=\$foo}\n{\$foo[bar]}{/section}C", "A12C", 'T2', $i++), + array("A{section name=bar loop=\$foo}{\$foo[bar]}\n{/section}C", "A1\n2\nC", 'T3', $i++), + array("A{section name=bar loop=\$foo}\n{\$foo[bar]}\n{/section}C", "A1\n2\nC", 'T4', $i++), + array("A\n{section name=bar loop=\$foo}{\$foo[bar]}{/section}C", "A\n12C", 'T5', $i++), + array("A{section name=bar loop=\$foo}{\$foo[bar]}{/section}\nC", "A12C", 'T6', $i++), + array("A{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}D{/section}C", "A12C", 'T7', $i++), + array("A{section name=bar loop=\$foo}{\$foo[bar]}\n{sectionelse}D{/section}C", "A1\n2\nC", 'T8', $i++), + array("{section loop=\$foo name='bar'}{\$foo[bar]}{/section}A{\$smarty.section.bar.total}C", "12A2C", 'T9', $i++), + array("{section loop=\$foo name='bar'}{\$foo[bar]}{/section}A\n{\$smarty.section.bar.total}C", "12A\n2C", 'T10', $i++), + array("{section loop=\$foo name='bar'}{\$foo[bar]}{/section}A{\$smarty.section.bar.total}\nC", "12A2\nC", 'T11', $i++), + ); + } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestElseSpacing + * @runInSeparateProcess + */ + public function testElseSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_Else_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', array()); + $this->smarty->assign('bar', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); + } + + /* + * Data provider für testSpacing + */ + public function dataTestElseSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array( + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}A{\$bar}B{/section}", "AbarB", 'T1', $i++), + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}\nA{\$bar}B{/section}", "AbarB", 'T2', $i++), + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}A{\$bar}\nB{/section}", "Abar\nB", 'T3', $i++), + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}\nA{\$bar}\nB{/section}", "Abar\nB", 'T4', $i++), + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}{\$bar}\nB{/section}", "bar\nB", 'T5', $i++), + array("{section name=bar loop=\$foo}{\$foo[bar]}{sectionelse}{\$bar}{/section}", "bar", 'T6', $i++), + ); + } } diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section1.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section1.tpl deleted file mode 100644 index 50729b42..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section1.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo}{$foo[bar]}{/section} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section2.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section2.tpl deleted file mode 100644 index be7d4559..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section2.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo start=$i}{$foo[bar]}{sectionelse} else {/section} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section3.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section3.tpl deleted file mode 100644 index 3dc172ea..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section3.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo}{$foo[bar]}{sectionelse}else{/section} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section4.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section4.tpl deleted file mode 100644 index 4a49fc9e..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section4.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo}{$foo[bar]}{sectionelse} else {/section} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section6.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section6.tpl deleted file mode 100644 index edcd6c2e..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section6.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo}{$foo[bar]}{sectionelse} else {/section}total{$smarty.section.bar.total} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section7.tpl b/tests/UnitTests/TemplateSource/TagTests/Section/templates/section7.tpl deleted file mode 100644 index 6c5f9a99..00000000 --- a/tests/UnitTests/TemplateSource/TagTests/Section/templates/section7.tpl +++ /dev/null @@ -1 +0,0 @@ -{section name=bar loop=$foo}{$smarty.section.bar.index}{$smarty.section.bar.iteration}{sectionelse} else {/section} \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/Section/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/Section/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/Section/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/SetFilter/CompileSetfilterTest.php b/tests/UnitTests/TemplateSource/TagTests/SetFilter/CompileSetfilterTest.php index 5d147cdd..82ab2086 100644 --- a/tests/UnitTests/TemplateSource/TagTests/SetFilter/CompileSetfilterTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/SetFilter/CompileSetfilterTest.php @@ -26,11 +26,22 @@ class CompileSetfilterTest extends PHPUnit_Smarty $this->cleanDirs(); } /** - * test nested setfilter + * @runInSeparateProcess + * @preserveGlobalState disabled */ public function testNestedSetfilter() { - $tpl = $this->smarty->createTemplate('eval:{$foo}{setfilter htmlspecialchars} {$foo}{setfilter escape:"mail"} {$foo}{/setfilter} {$foo}{/setfilter} {$foo}'); + $tpl = $this->smarty->createTemplate('string:{$foo}{setfilter htmlspecialchars} {$foo}{setfilter escape:"mail"} {$foo}{/setfilter} {$foo}{/setfilter} {$foo}'); + $tpl->assign('foo', ''); + $this->assertEquals(" <a@b.c> <a@b.c> ", $this->smarty->fetch($tpl)); + } + /** + * @runInSeparateProcess + * @preserveGlobalState disabled + */ + public function testNestedSetfilter2() + { + $tpl = $this->smarty->createTemplate('string:{$foo}{setfilter htmlspecialchars} {$foo}{setfilter escape:"mail"} {$foo}{/setfilter} {$foo}{/setfilter} {$foo}'); $tpl->assign('foo', ''); $this->assertEquals(" <a@b.c> <a@b.c> ", $this->smarty->fetch($tpl)); } diff --git a/tests/UnitTests/TemplateSource/TagTests/Strip/CompileStripTest.php b/tests/UnitTests/TemplateSource/TagTests/Strip/CompileStripTest.php index 301a75f0..a8c37794 100644 --- a/tests/UnitTests/TemplateSource/TagTests/Strip/CompileStripTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/Strip/CompileStripTest.php @@ -54,8 +54,8 @@ class CompileStripTest extends PHPUnit_Smarty * test name */ return array(array(" foo\n bar buh\n\n", 'foobar buh', '', $i ++), - array("\n
[X]
\n\n\n foo\n bar\n", - '
[X]
foobar', + array("\n
[X]
\n\n\n foo\n bar\n", + '
[X]
foobar', '', $i ++), array("\n \n", '', '', $i ++), diff --git a/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/CompileFunctionTest.php b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/CompileFunctionTest.php index 3ed225b6..9593a9b4 100644 --- a/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/CompileFunctionTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/CompileFunctionTest.php @@ -348,4 +348,90 @@ class CompileFunctionTest extends PHPUnit_Smarty array(true, 'cached call'), ); } + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar'); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacingNocache($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('VarNocache'); + $this->smarty->setCaching(1); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'bar',true); + $this->assertEquals($result, + $this->smarty->fetch($file), + "testVarNocache - {$file}"); + } + /** + * Test Output nocache spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacingNocache2($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->smarty->setCompileId('VarNocache'); + $this->smarty->setCaching(1); + $this->smarty->addTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 'foo',true); + $this->assertEquals(str_replace('bar','foo',$result), + $this->smarty->fetch($file), + "testVarNocache1 - {$file}"); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("{include 'simple_function_lib.tpl'}A{call name='simple' bar=\$foo}C", "AbarC", 'T1', $i++), + array("{include 'simple_function_lib.tpl'}A\n{call name='simple' bar=\$foo}C", "A\nbarC", 'T2', $i++), + array("{include 'simple_function_lib.tpl'}A\n{call name='simple' bar=\$foo}\nC", "A\nbar\nC", 'T3', $i++), + array("{include 'simple_function_lib.tpl'}A\n{call name='simple' bar=\$foo}\nC", "A\nbar\nC", 'T4', $i++), + array("{include 'simple_function_lib.tpl'}A\n\n{call name='simple' bar=\$foo}\n\nC", "A\n\nbar\n\nC", 'T5', $i++), + array("{function name=simple}{\$bar}{/function}{call name='simple' bar=\$foo}", "bar", 'T6', $i++), + array("{function name=simple}A{\$bar}C{/function}{call name='simple' bar=\$foo}", "AbarC", 'T7', $i++), + array("{function name=simple}A\n{\$bar}C{/function}{call name='simple' bar=\$foo}", "A\nbarC", 'T8', $i++), + array("{function name=simple}A{\$bar}\nC{/function}{call name='simple' bar=\$foo}", "Abar\nC", 'T9', $i++), + array("{function name=simple}A\n{\$bar}\nC{/function}{call name='simple' bar=\$foo}", "A\nbar\nC", 'T10', $i++), + array("{function name=simple}{\$foo}{/function}{call name='simple'}", "bar", 'T11', $i++), + array("{function name=simple}A{\$foo}C{/function}{call name='simple'}", "AbarC", 'T12', $i++), + array("{function name=simple}A\n{\$foo}C{/function}{call name='simple'}", "A\nbarC", 'T13', $i++), + array("{function name=simple}A{\$foo}\nC{/function}{call name='simple'}", "Abar\nC", 'T14', $i++), + array("{function name=simple}A\n{\$foo}\nC{/function}{call name='simple'}", "A\nbar\nC", 'T15', $i++), + ); + } } diff --git a/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates/simple_function_lib.tpl b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates/simple_function_lib.tpl new file mode 100644 index 00000000..058f1956 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates/simple_function_lib.tpl @@ -0,0 +1 @@ +{function name=simple}{$bar}{/function} diff --git a/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/TemplateFunction/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/While/CompileWhileTest.php b/tests/UnitTests/TemplateSource/TagTests/While/CompileWhileTest.php index 56b3792f..78fe828a 100644 --- a/tests/UnitTests/TemplateSource/TagTests/While/CompileWhileTest.php +++ b/tests/UnitTests/TemplateSource/TagTests/While/CompileWhileTest.php @@ -39,7 +39,116 @@ class CompileWhileTest extends PHPUnit_Smarty */ public function testWhileStatement() { - $tpl = $this->smarty->createTemplate('string:{$y=5}{while $y=$y-1}{$y}{/while}'); + $tpl = $this->smarty->createTemplate('string:{$x=5}{while $x=$x-1}{$x}{/while}'); $this->assertEquals("4321", $this->smarty->fetch($tpl)); } + + /** + * Test spacings + * + * @preserveGlobalState disabled + * @dataProvider dataTestSpacing + * @runInSeparateProcess + */ + public function testSpacing($code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Spacing_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 3); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); + } + + /* + * Data provider für testSpacing + */ + public function dataTestSpacing() + { + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array("A{while \$foo=\$foo-1}{\$foo}{/while}C", "A21C", 'T1', $i++), + array("A{while \$foo=\$foo-1}\n{\$foo}{/while}C", "A21C", 'T2', $i++), + array("A{while \$foo=\$foo-1}{\$foo}\n{/while}C", "A2\n1\nC", 'T3', $i++), + array("A{while \$foo=\$foo-1}\n{\$foo}\n{/while}C", "A2\n1\nC", 'T4', $i++), + array("A\n{while \$foo=\$foo-1}{\$foo}{/while}C", "A\n21C", 'T5', $i++), + array("A{while \$foo=\$foo-1}{\$foo}{/while}\nC", "A21\nC", 'T6', $i++), + array("A{while \$foo=\$foo-1}{\$foo}{break}{/while}C", "A2C", 'T7', $i++), + array("A{while \$foo=\$foo-1}{\$foo}\n{break}{/while}C", "A2\nC", 'T8', $i++), + array("A{while \$foo=\$foo-1}{\$foo}{break}\n{/while}C", "A2C", 'T9', $i++), + array("A{while \$foo=\$foo-1}{if \$foo === 2}{continue}{/if}{\$foo}{/while}C", "A1C", 'T10', $i++), + array("A{while \$foo=\$foo-1}{if \$foo === 2}{continue}\n{/if}{\$foo}{/while}C", "A1C", 'T11', $i++), + array("A{while \$foo=\$foo-1}{if \$foo === 2}\n{continue}\n{/if}{\$foo}{/while}C", "A1C", 'T12', $i++), + array("A{while \$foo=\$foo-1}\n{continue}{\$foo}{/while}C", "AC", 'T13', $i++), + array("A{while \$foo=\$foo-1}{continue}\n{\$foo}{/while}C", "AC", 'T14', $i++), + array("A{while \$foo=\$foo-1}{break}\n{\$foo}{/while}C", "AC", 'T15', $i++), + array("A{while \$foo=\$foo-1}{\$foo}{continue}{/while}C", "A21C", 'T16', $i++), + array("A{while \$foo=\$foo-1}{\$foo}{continue}\n{/while}C", "A21C", 'T17', $i++), + array("A{while \$foo=\$foo-1}{\$foo}\n{continue}\n{/while}C", "A2\n1\nC", 'T18', $i++), + array("A{while \$foo=\$foo-1}{\$foo} {continue} {/while}C", "A2 1 C", 'T19', $i++), + array("A{while \$foo=\$foo-1} {continue}{\$foo}{/while}C", "A C", 'T20', $i++), + array("A{while \$foo=\$foo-1} {/while}C", "A C", 'T21', $i++), + array("A{while !isset(\$x)}{\$foo}{\$x=1}{/while}C", "A3C", 'T22', $i++), + ); + } + /** + * Test nocache + * + * @runInSeparateProcess + * @preserveGlobalState disabled + * @dataProvider dataTestNocache + */ + public function testNocache($value, $nocache, $code, $result, $testName, $testNumber) + { + $name = empty($testName) ? $testNumber : $testName; + $file = "Nocache_{$name}.tpl"; + if ($code) { + $this->makeTemplateFile($file, $code); + } + $this->smarty->setCaching(1); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', $value, $nocache); + $this->assertEquals($result, $this->smarty->fetch($file), + "{$file} - {$testNumber}"); + } + + /* + * Data provider für testNocache + */ + public function dataTestNocache() + { + $i = 1; + /* + * var + * value + * Code + * result + * test name + */ + return array(array(3,false, "{while \$foo=\$foo-1}\n{\$foo}{/while}", '21', 'T1', $i ++), + array(0,false, false, '21', 'T1', $i ++), + array(3,false, "{while \$foo=\$foo-1 nocache}\n{\$foo}{/while}", '21', 'T2', $i ++), + array(4,false, false, '321', 'T2', $i ++), + array(4,true, "{while \$foo=\$foo-1}\n{\$foo}{/while}", '321', 'T3', $i ++), + array(5,true, false, '4321', 'T3', $i ++), + array(array(1,2,3),false, "{\$x=1}{while isset(\$foo[\$x])}\n{\$foo[\$x]}{\$x++}{/while}", '2132', 'T4', $i ++), + array(array(3,4,5),false, false, '2132', 'T4', $i ++), + array(array(1,2,3),false, "{\$x=1 nocache}{while isset(\$foo[\$x])}\n{\$foo[\$x]}{\$x++}{/while}", '2132', 'T5', $i ++), + array(array(3,4,5),false, false, '4152', 'T5', $i ++), + array(array(1,2,3),true, "{\$x=1 nocache}{while isset(\$foo[\$x])}\n{\$foo[\$x]}{\$x++}{/while}", '2132', 'T6', $i ++), + array(array(3,4,5),true, false, '4152', 'T6', $i ++), + array(array(1,2,3,4,5),true, "{\$x=0 nocache}{while \$foo[\$x] <= 3}\n{\$foo[\$x]}{\$x++}{/while}", '102132', 'T7', $i ++), + array(array(2,3,4,5),true, false, '2031', 'T7', $i ++), + array(array(1,2,false,4,5),true, "{\$x=0 nocache}{while \$foo[\$x]}\n{\$foo[\$x]}{\$x++}{/while}", '1021', 'T8', $i ++), + array(array(2,false,4,5),true, false, '20', 'T8', $i ++), + ); + } + } diff --git a/tests/UnitTests/TemplateSource/TagTests/While/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/While/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/While/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/TagTests/_Print/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/TagTests/_Print/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/TagTests/_Print/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/ValueTests/Array/ArrayTest.php b/tests/UnitTests/TemplateSource/ValueTests/Array/ArrayTest.php index 9032c7fd..d8f5cd63 100644 --- a/tests/UnitTests/TemplateSource/ValueTests/Array/ArrayTest.php +++ b/tests/UnitTests/TemplateSource/ValueTests/Array/ArrayTest.php @@ -24,112 +24,52 @@ class ArrayTest extends PHPUnit_Smarty { $this->cleanDirs(); } - /** - * test simple array definition + * Test array access + * + * @preserveGlobalState disabled + * @dataProvider dataTestArray + * @runInSeparateProcess */ - public function testSimpleArrayDefinition() + public function testArray($code, $result, $testName, $testNumber) { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,3,4,5]}{foreach $foo as $bar}{$bar}{/foreach}'); - $this->assertEquals('12345', $this->smarty->fetch($tpl)); + $name = empty($testName) ? $testNumber : $testName; + $file = "Array_{$name}.tpl"; + $this->makeTemplateFile($file, $code); + $this->smarty->setTemplateDir('./templates_tmp'); + $this->smarty->assign('foo', 3); + $this->assertEquals($result, + $this->smarty->fetch($file), + $file); } - /** - * test smarty2 array access - */ - public function testSmarty2ArrayAccess() + /* + * Data provider für testArray + */ + public function dataTestArray() { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,3,4,5]}{$foo.0}{$foo.1}{$foo.2}'); - $this->assertEquals('123', $this->smarty->fetch($tpl)); - } - - /** - * test smarty3 array access - */ - public function testSmarty3ArrayAccess() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,3,4,5]}{$foo[0]}{$foo[1]}{$foo[2]}'); - $this->assertEquals('123', $this->smarty->fetch($tpl)); - } - - /** - * test indexed array definition - */ - public function testIndexedArrayDefinition() - { - $tpl = $this->smarty->createTemplate('eval:{$x=\'d\'}{$foo=[a=>1,\'b\'=>2,"c"=>3,$x=>4]}{$foo[\'a\']}{$foo[\'b\']}{$foo[\'c\']}{$foo[\'d\']}'); - $this->assertEquals('1234', $this->smarty->fetch($tpl)); - } - - /** - * test nested array - */ - public function testNestedArray() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[a,b,c],4,5]}{$foo[2][1]}'); - $this->assertEquals('b', $this->smarty->fetch($tpl)); - } - - /** - * test array math - */ - public function testArrayMath1() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$foo[2][1]+1}'); - $this->assertEquals('9', $this->smarty->fetch($tpl)); - } - - public function testArrayMath2() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$foo.2.1+1}'); - $this->assertEquals('9', $this->smarty->fetch($tpl)); - } - - public function testArrayMath3() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{2+$foo[2][1]}'); - $this->assertEquals('10', $this->smarty->fetch($tpl)); - } - - public function testArrayMath4() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{2+$foo.2.1}'); - $this->assertEquals('10', $this->smarty->fetch($tpl)); - } - - public function testArrayMath5() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$foo[2][0]+$foo[2][1]}'); - $this->assertEquals('15', $this->smarty->fetch($tpl)); - } - - public function testArrayMath6() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$foo.2.0+$foo.2.1}'); - $this->assertEquals('15', $this->smarty->fetch($tpl)); - } - - public function testArrayVariableIndex1() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$x=2}{$y=0}{$foo.$x.$y}'); - $this->assertEquals('7', $this->smarty->fetch($tpl)); - } - - public function testArrayVariableIndex2() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$x=2}{$foo.$x.0}'); - $this->assertEquals('7', $this->smarty->fetch($tpl)); - } - - public function testArrayVariableIndex3() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$x=0}{$foo.2.$x}'); - $this->assertEquals('7', $this->smarty->fetch($tpl)); - } - - public function testArrayVariableIndex4() - { - $tpl = $this->smarty->createTemplate('eval:{$foo=[1,2,[7,8,9],4,5]}{$x=[1,0]}{$foo.2.{$x.1}}'); - $this->assertEquals('7', $this->smarty->fetch($tpl)); + $i = 1; + /* + * Code + * result + * test name + * test number + */ + return array(array('{$foo=[1,2,3,4,5]}{foreach $foo as $bar}{$bar}{/foreach}', '12345', 'T1', $i++), + array('{$foo=[1,2,3,4,5]}{$foo.0}{$foo.1}{$foo.2}', '123', 'T2', $i++), + array('{$foo=[1,2,3,4,5]}{$foo[0]}{$foo[1]}{$foo[2]}', '123', 'T3', $i++), + array('{$x=\'d\'}{$foo=[a=>1,\'b\'=>2,"c"=>3,$x=>4]}{$foo[\'a\']}{$foo[\'b\']}{$foo[\'c\']}{$foo[\'d\']}', '1234', 'T4', $i++), + array('{$foo=[1,2,[a,b,c],4,5]}{$foo[2][1]}', 'b', 'T5', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$foo[2][1]+1}', '9', 'T6', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$foo.2.1+1}', '9', 'T7', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{2+$foo[2][1]}', '10', 'T8', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{2+$foo.2.1}', '10', 'T9', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$foo[2][0]+$foo[2][1]}', '15', 'T10', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$foo.2.0+$foo.2.1}', '15', 'T11', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$x=2}{$y=0}{$foo.$x.$y}', '7', 'T12', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$x=2}{$foo.$x.0}', '7', 'T13', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$x=0}{$foo.2.$x}', '7', 'T14', $i++), + array('{$foo=[1,2,[7,8,9],4,5]}{$x=[1,0]}{$foo.2.{$x.1}}', '7', 'T15', $i++), + ); } } diff --git a/tests/UnitTests/TemplateSource/ValueTests/Array/templates_tmp/dummy.txt b/tests/UnitTests/TemplateSource/ValueTests/Array/templates_tmp/dummy.txt new file mode 100644 index 00000000..2995a4d0 --- /dev/null +++ b/tests/UnitTests/TemplateSource/ValueTests/Array/templates_tmp/dummy.txt @@ -0,0 +1 @@ +dummy \ No newline at end of file diff --git a/tests/UnitTests/TemplateSource/ValueTests/DoubleQuoted/DoubleQuotedStringTest.php b/tests/UnitTests/TemplateSource/ValueTests/DoubleQuoted/DoubleQuotedStringTest.php index 19d010c8..0b647b4c 100644 --- a/tests/UnitTests/TemplateSource/ValueTests/DoubleQuoted/DoubleQuotedStringTest.php +++ b/tests/UnitTests/TemplateSource/ValueTests/DoubleQuoted/DoubleQuotedStringTest.php @@ -41,7 +41,7 @@ class DoubleQuotedStringTest extends PHPUnit_Smarty $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); $this->smarty->assign('bar', 'buh'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), + $this->assertEquals($result, $this->smarty->fetch($file), "testDoubleQuoted - {$code} - {$name}"); } diff --git a/tests/UnitTests/TemplateSource/ValueTests/Modifier/ModifierTest.php b/tests/UnitTests/TemplateSource/ValueTests/Modifier/ModifierTest.php index 28e9d8f7..ea661b62 100644 --- a/tests/UnitTests/TemplateSource/ValueTests/Modifier/ModifierTest.php +++ b/tests/UnitTests/TemplateSource/ValueTests/Modifier/ModifierTest.php @@ -40,7 +40,7 @@ class ModifierTest extends PHPUnit_Smarty $this->makeTemplateFile($file, $code); $this->smarty->assignGlobal('file', $file); $this->smarty->assign('bar', 'buh'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), + $this->assertEquals($result, $this->smarty->fetch($file), "testModifier - {$code} - {$name}"); } diff --git a/tests/UnitTests/TemplateSource/X_Scopes/ScopeTest.php b/tests/UnitTests/TemplateSource/X_Scopes/ScopeTest.php index acde1043..e546b670 100644 --- a/tests/UnitTests/TemplateSource/X_Scopes/ScopeTest.php +++ b/tests/UnitTests/TemplateSource/X_Scopes/ScopeTest.php @@ -46,7 +46,7 @@ class ScopeTest extends PHPUnit_Smarty $data = $this->smarty->createData($data1); $data1->assign('foo', 'data1'); $data->assign('foo', 'data'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('scope_tag.tpl', $data)), + $this->assertEquals($result, $this->smarty->fetch('scope_tag.tpl', $data), "test - {$code} - {$testName}"); } @@ -63,14 +63,16 @@ class ScopeTest extends PHPUnit_Smarty * test name */ return array(array('{$foo[] = \'newvar\' scope=tpl_root}', true, - '#testAppendScope_0.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#data:$foo=\'data\'#data:$foo=\'data1\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', - '', $i ++,), array('{append var=foo value=\'newvar\' scope=tpl_root}', true, - '#testAppendScope_1.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#data:$foo=\'data\'#data:$foo=\'data1\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', - '', $i ++,), array('{append var=foo value=\'newvar\' scope=global}', true, - '#testAppendScope_2.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#data:$foo=\'data\'#data:$foo=\'data1\'#Smarty:$foo=\'smarty\'#global:$foo=array(0=>\'data\',1=>\'newvar\',)', + '#testAppendScope_0.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#data:$foo =\'data\'#data:$foo =\'data1\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', + '', $i ++,), + array('{append var=foo value=\'newvar\' scope=tpl_root}', true, + '#testAppendScope_1.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#data:$foo =\'data\'#data:$foo =\'data1\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', + '', $i ++,), + array('{append var=foo value=\'newvar\' scope=global}', true, + '#testAppendScope_2.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#data:$foo =\'data\'#data:$foo =\'data1\'#Smarty:$foo =\'smarty\'#global:$foo =array(0=>\'data\',1=>\'newvar\',)', '', $i ++,), array('{append var=foo value=\'newvar\' scope=smarty}', true, - '#testAppendScope_3.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo=array(0=>\'data\',1=>\'newvar\',)#data:$foo=\'data\'#data:$foo=\'data1\'#Smarty:$foo=array(0=>\'data\',1=>\'newvar\',)#global:$foo=\'global\'', + '#testAppendScope_3.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_include.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#scope_tag.tpl:$foo =array(0=>\'data\',1=>\'newvar\',)#data:$foo =\'data\'#data:$foo =\'data1\'#Smarty:$foo =array(0=>\'data\',1=>\'newvar\',)#global:$foo =\'global\'', '', $i ++,),); } @@ -90,8 +92,8 @@ class ScopeTest extends PHPUnit_Smarty $this->smarty->assignGlobal('foo', 'global'); $data = $this->smarty->createData($useSmarty ? $this->smarty : null); $data->assign('foo', 'data'); - $this->assertEquals($this->strip('#' . $file . $result), - $this->strip($this->smarty->fetch('scope_tag.tpl', $data)), "test - {$code} - {$testName}"); + $this->assertEquals('#' . $file . $result, + $this->smarty->fetch('scope_tag.tpl', $data), "test - {$code} - {$testName}"); } /* @@ -107,30 +109,30 @@ class ScopeTest extends PHPUnit_Smarty * test name */ return array(array('{$foo = \'newvar\'}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{assign var=foo value=\'newvar\'}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{$foo = \'newvar\' scope=local}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{assign var=foo value=\'newvar\' scope=local}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{$foo = \'newvar\' scope=parent}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{assign var=foo value=\'newvar\' scope=parent}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{$foo = \'newvar\' scope=tpl_root}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{$foo = \'newvar\' scope=global}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'newvar\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'newvar\'', '', $i ++,), array('{$foo = \'newvar\' scope=root}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++,), array('{$foo = \'newvar\' scope=root}', false, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', 'no smarty', $i ++,), array('{$foo = \'newvar\' scope=smarty}', false, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'newvar\'#global:$foo=\'global\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'newvar\'#global:$foo =\'global\'', 'no smarty', $i ++,),); } @@ -148,7 +150,7 @@ class ScopeTest extends PHPUnit_Smarty $this->smarty->assign('buh', $var); $this->smarty->assign('foo', 'smarty'); $this->smarty->assignGlobal('foo', 'global'); - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch($file)), "test - {$file} {$var}"); + $this->assertEquals($result, $this->smarty->fetch($file), "test - {$file} {$var}"); } /* @@ -161,13 +163,13 @@ class ScopeTest extends PHPUnit_Smarty * result */ return array(array('b1', 'test_scope_assignbar.tpl', - '#test_scope_assignbar.tpl:$foo=\'b1\'#Smarty:$foo=\'smarty\'#global:$foo=\'b1\'',), + '#test_scope_assignbar.tpl:$foo =\'b1\'#Smarty:$foo =\'smarty\'#global:$foo =\'b1\'',), array('b2', 'test_scope_assignbar.tpl', - '#test_scope_assignbar.tpl:$foo=\'b2\'#Smarty:$foo=\'smarty\'#global:$foo=\'b2\'',), + '#test_scope_assignbar.tpl:$foo =\'b2\'#Smarty:$foo =\'smarty\'#global:$foo =\'b2\'',), array('b1', 'test_scope_assignnocache.tpl', - '#test_scope_assignnocache.tpl:$foo=\'b1\'#Smarty:$foo=\'smarty\'#global:$foo=\'b1\'',), + '#test_scope_assignnocache.tpl:$foo =\'b1\'#Smarty:$foo =\'smarty\'#global:$foo =\'b1\'',), array('b2', 'test_scope_assignnocache.tpl', - '#test_scope_assignnocache.tpl:$foo=\'b2\'#Smarty:$foo=\'smarty\'#global:$foo=\'b2\'',),); + '#test_scope_assignnocache.tpl:$foo =\'b2\'#Smarty:$foo =\'smarty\'#global:$foo =\'b2\'',),); } /** @@ -189,7 +191,7 @@ class ScopeTest extends PHPUnit_Smarty if (!$useSmarty) { $testName .= 'no smarty'; } - $this->assertEquals($this->strip($result), $this->strip($this->smarty->fetch('test_scope.tpl', $data)), + $this->assertEquals($result, $this->smarty->fetch('test_scope.tpl', $data), "test - {$code} - {$testName}"); } @@ -206,36 +208,36 @@ class ScopeTest extends PHPUnit_Smarty * test name */ array('{include \'test_scope_assign.tpl\'}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'data\'#test_scope.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'data\'#test_scope.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=parent}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=tpl_root}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=root}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=root}', false, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=smarty}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'newvar\'#global:$foo=\'global\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'newvar\'#global:$foo =\'global\'', '', $i ++), array('{include \'test_scope_assign.tpl\' scope=global}', true, - '#test_scope_assign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'newvar\'', + '#test_scope_assign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'newvar\'', '', $i ++), array('{include \'test_scope_pluginassign.tpl\' scope=global}', true, - '#test_scope_pluginassign.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'newvar\'#test_scope.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'newvar\'', + '#test_scope_pluginassign.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'newvar\'#test_scope.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'newvar\'', '', $i ++), array('{include \'test_scope_assign_noscope.tpl\' scope=root}', true, - '#test_scope_assign_noscope.tpl:$foo=\'newvar\'#testIncludeScope_' . $i . - '.tpl:$foo=\'data\'#test_scope.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'#global:$foo=\'global\'', + '#test_scope_assign_noscope.tpl:$foo =\'newvar\'#testIncludeScope_' . $i . + '.tpl:$foo =\'data\'#test_scope.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'#global:$foo =\'global\'', '', $i ++),); } @@ -254,8 +256,8 @@ class ScopeTest extends PHPUnit_Smarty $this->smarty->configLoad('smarty.conf'); $data = $this->smarty->createData($useSmarty ? $this->smarty : null); $data->configLoad('data.conf'); - $this->assertEquals($this->strip('#' . $file . $result), - $this->strip($this->smarty->fetch('scope_tag.tpl', $data)), "test - {$code} - {$testName}"); + $this->assertEquals('#' . $file . $result, + $this->smarty->fetch('scope_tag.tpl', $data), "test - {$code} - {$testName}"); } /* @@ -271,21 +273,21 @@ class ScopeTest extends PHPUnit_Smarty * test name */ return array(array('{config_load \'template.conf\'}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'', '', $i ++,), array('{config_load \'template.conf\' scope=local}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'data\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'data\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'', '', $i ++,), array('{config_load \'template.conf\' scope=parent}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'data\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'data\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'', '', $i ++,), array('{config_load \'template.conf\' scope=tpl_root}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'smarty\'', '', $i ++,), array('{config_load \'template.conf\' scope=root}', true, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'', '', $i ++,), array('{config_load \'template.conf\' scope=root}', false, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'newvar\'#Smarty:$foo=\'smarty\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'newvar\'#Smarty:$foo =\'smarty\'', 'no smarty', $i ++,), array('{config_load \'template.conf\' scope=smarty}', false, - ':$foo=\'newvar\'#scope_include.tpl:$foo=\'newvar\'#scope_tag.tpl:$foo=\'newvar\'#data:$foo=\'data\'#Smarty:$foo=\'newvar\'', + ':$foo =\'newvar\'#scope_include.tpl:$foo =\'newvar\'#scope_tag.tpl:$foo =\'newvar\'#data:$foo =\'data\'#Smarty:$foo =\'newvar\'', 'no smarty', $i ++,),); } diff --git a/tests/UnitTests/__shared/PHPunitplugins/compiler.getparamsshort.php b/tests/UnitTests/__shared/PHPunitplugins/compiler.getparamsshort.php new file mode 100644 index 00000000..e5907eb1 --- /dev/null +++ b/tests/UnitTests/__shared/PHPunitplugins/compiler.getparamsshort.php @@ -0,0 +1,56 @@ +getAttributes($compiler, $args); + $output = ' $value) { + $output .= "'{$key}'=>\" . "; + $output .= is_string($value) ? "({$value})" : ("'" . var_export($value, true). "'"); + $output .= ' . ",'; + + } + + $output .= ")\";?>\n"; + return $output; + } +}