diff --git a/test/FeedTest.php b/test/FeedTest.php index a30681e..9c9c732 100644 --- a/test/FeedTest.php +++ b/test/FeedTest.php @@ -1,4 +1,13 @@ + * @copyright 2004-2015, Gabriel Zerbib. + * @version 2.1.2 + * @package FigDice + * + * This file is part of FigDice. + * http://figdice.org/ + */ class FeedTest extends PHPUnit_Framework_TestCase { diff --git a/test/FilterTest.php b/test/FilterTest.php new file mode 100644 index 0000000..10311f6 --- /dev/null +++ b/test/FilterTest.php @@ -0,0 +1,53 @@ + + * @copyright 2004-2015, Gabriel Zerbib. + * @version 2.1.2 + * @package FigDice + * + * This file is part of FigDice. + * http://figdice.org/ + */ + +use figdice\Filter; +use figdice\View; + +class FilterTest extends PHPUnit_Framework_TestCase +{ + public function testSpecialHTMLCharacterInFigTextIsNotAltered() + { + $view = new View(); + $view->loadString( + '' + ); + $view->mount('data', ''); + $this->assertEquals('', $view->render()); + } + + public function testSpecialHTMLCharacterAfterFilter() + { + $view = new View(); + $view->loadString( + '' + ); + $view->mount('data', ''); + $this->assertEquals('<TAG>', $view->render()); + } +} + +class EscapeHtmlFilter implements Filter +{ + + /** + * Operates the transform on the input string, + * returns the filtered output. + * This test filter simply performs php's native HTML escapes. + * + * @param string $buffer + * @return string + */ + public function transform($buffer) + { + return htmlspecialchars($buffer); + } +} diff --git a/test/ViewParserTest.php b/test/ViewParserTest.php index 0d85bbd..f8eb23f 100755 --- a/test/ViewParserTest.php +++ b/test/ViewParserTest.php @@ -28,121 +28,121 @@ */ class ViewParserTest extends PHPUnit_Framework_TestCase { - /** - * @expectedException \figdice\exceptions\XMLParsingException - */ - public function testRenderBeforeLoadFails() { - $view = new View(); - $result = $view->render(); - $this->assertFail(); - } - - public function testSourceWithSimpleXml() { - $view = new View(); - $source = <<render(); + $this->assertFail(); + } + + public function testSourceWithSimpleXml() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('', $result); - } - - public function testAutoClosingTagGetsSpaceBeforeSlash() { - $view = new View(); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('', $result); + } + + public function testAutoClosingTagGetsSpaceBeforeSlash() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('', $result); - } - - public function testFigMuteRemovesTag() { - $view = new View(); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('', $result); + } + + public function testFigMuteRemovesTag() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('', $result); - } - - public function testFigTextStatic() { - $view = new View(); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('', $result); + } + + public function testFigTextStatic() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('12', $result); - } - - public function testFigTextWithSimpleExpression() { - $view = new View(); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('12', $result); + } + + public function testFigTextWithSimpleExpression() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('15', $result); - } + $view->loadString($source); + $result = $view->render(); + $this->assertEquals('15', $result); + } - public function testMountRoot() { - $view = new View(); - $view->mount('someKey', '12'); - $source = <<mount('someKey', '12'); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('16', $result); - } - - public function testMountWithSubpath() { - $view = new View(); - $view->mount('someKey', array( 'sub' => 'value') ); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('16', $result); + } + + public function testMountWithSubpath() { + $view = new View(); + $view->mount('someKey', array( 'sub' => 'value') ); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('coolvalue', $result); - } - - public function testMountWithRelativeAtRootContext() { - $view = new View(); - $view->mount('someKey', array( 'sub' => 'value') ); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('coolvalue', $result); + } + + public function testMountWithRelativeAtRootContext() { + $view = new View(); + $view->mount('someKey', array( 'sub' => 'value') ); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $this->assertEquals('coolvalue', $result); - } - - public function testSimpleVoidTag() { - $view = new View(); - $source = <<loadString($source); + $result = $view->render(); + $this->assertEquals('coolvalue', $result); + } + + public function testSimpleVoidTag() { + $view = new View(); + $source = << ENDXML; - $view->loadString($source); - $result = $view->render(); - $expected = <<loadString($source); + $result = $view->render(); + $expected = << ENDHTML; - $this->assertEquals($expected, $result); - } + $this->assertEquals($expected, $result); + } - public function testVoidTagWithInnerAttributes() { - $view = new View(); - $source = << @@ -150,63 +150,63 @@ public function testVoidTagWithInnerAttributes() { ENDXML; - $view->loadString($source); - $result = $view->render(); - $expected = <<loadString($source); + $result = $view->render(); + $expected = << ENDHTML; - $this->assertEquals($expected, $result); - } + $this->assertEquals($expected, $result); + } - public function testFigTagIsAlwaysMute() { - $view = new View(); - $source = << sometext ENDXML; - $view->loadString($source); - $result = $view->render(); - $expected = <<loadString($source); + $result = $view->render(); + $expected = << sometext ENDHTML; - $this->assertEquals($expected, $result); - } + $this->assertEquals($expected, $result); + } - /** - * @expectedException figdice\exceptions\FileNotFoundException - */ - public function testIncludeWithFileNotFoundThrowsException() - { + /** + * @expectedException figdice\exceptions\FileNotFoundException + */ + public function testIncludeWithFileNotFoundThrowsException() + { - $view = new View(); - $view->loadFile('resources/FigXmlIncludeNotFound.xml'); + $view = new View(); + $view->loadFile('resources/FigXmlIncludeNotFound.xml'); - // will raise an exception - $result = $view->render(); - $this->assertFalse(true); - } + // will raise an exception + $result = $view->render(); + $this->assertFalse(true); + } - public function testParseAfterRenderHasNoEffect() { - $view = new View(); - $source = << ENDXML; - $view->loadString($source); - $output = $view->render(); - $view->parse(); - $this->assertEquals($output, $view->render()); - } + $view->loadString($source); + $output = $view->render(); + $view->parse(); + $this->assertEquals($output, $view->render()); + } - public function testAdHocEval() + public function testAdHocEval() { $view = new View(); $view->loadString(''); @@ -214,15 +214,15 @@ public function testAdHocEval() $this->assertEquals('', $view->render()); } - public function testWalkOnNonCountableObjectRunsOnArrayWithObject() - { - $view = new View(); - $view->loadString( - '' - ); - $obj = new stdClass(); - $obj->property = 12; - $view->mount('obj', $obj); - $this->assertEquals('12', $view->render()); - } + public function testWalkOnNonCountableObjectRunsOnArrayWithObject() + { + $view = new View(); + $view->loadString( + '' + ); + $obj = new stdClass(); + $obj->property = 12; + $view->mount('obj', $obj); + $this->assertEquals('12', $view->render()); + } }