<?php require __DIR__ . '/../src/Flow/Loader.php'; use Flow\Loader; use Flow\Helper; Loader::autoload(); class OutputTest extends PHPUnit_Framework_TestCase { public function setUp() { parent::setUp(); $this->flow = new Loader(['source' => __DIR__ . '/actual', 'target' => __DIR__ . '/cache']); } public function outputProvider() { $tests = ['and', 'add', 'array', 'block', 'comparison', 'concat', 'conditional', 'div', 'for', 'for_else', 'if', 'if_else', 'if_inline', 'in', 'include', 'join', 'logical', 'macro', 'mul', 'or', 'output', 'set', 'sub', 'unless', 'xor']; return array_map(function ($item) { return [$item]; }, $tests); } /** * @dataProvider outputProvider */ public function testOutput($data) { $expected = __DIR__ . "/expected/{$data}.html"; $this->assertTrue($this->flow->isValid("{$data}.html")); $template = $this->flow->load("{$data}.html"); $this->assertEquals(file_get_contents($expected), $template->render()); } }