// +---------------------------------------------------------------------- /** * 模板测试 * @author Haotong Lin */ namespace tests\thinkphp\library\think; use think\Template; class templateTest extends \PHPUnit_Framework_TestCase { public function testVar() { $template = new Template(); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $template->parse($content); $this->assertEquals($content, $data); $content = <<parse($content); $this->assertEquals($content, $data); } public function testVarIdentify() { $config['tpl_begin'] = '<#'; $config['tpl_end'] = '#>'; $config['tpl_var_identify'] = ''; $template = new Template($config); $content = << EOF; $data = <<a) ? (is_array(\$info)?\$info['a']:\$info->a) : 'test'; ?> EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $data = <<a)==(is_array(\$info)?\$info['b']:\$info->b)) echo 'test'; ?> EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << EOF; $data = <<a) !== ''?(is_array(\$info)?\$info['a']:\$info->a):'test')?'yes':'no'; ?> EOF; $template->parse($content); $this->assertEquals($content, $data); } public function testTag() { $template = new Template(); $content = << one two default EOF; $template->parse($content); $this->assertEquals($content, $data); $content = << a b default EOF; $template->parse($content); $this->assertEquals($content, $data); $content = <<\$val} {/foreach} EOF; $data = <<\$val): ?> EOF; $template->parse($content); $this->assertEquals($content, $data); $content = <<\$val): ?> EOF; $template->parse($content); $this->assertEquals($content, $data); } }