aboutsummaryrefslogtreecommitdiffstats
path: root/tests/template_test.php
diff options
context:
space:
mode:
authorKlaus Weidenbach <Klaus.Weidenbach@gmx.net>2016-10-12 21:50:49 +0200
committerKlaus Weidenbach <Klaus.Weidenbach@gmx.net>2016-10-19 00:46:41 +0200
commitb92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83 (patch)
treefe4d742c662b65605d0b6fee8fbf3f5a9e9b66e5 /tests/template_test.php
parent2e1046220a70bb751c39854b881e86feb5d39149 (diff)
downloadvolse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.tar.gz
volse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.tar.bz2
volse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.zip
[TASK] Restructure tests/ folder.
Move unit tests to tests/unit/. Get the old still working UnitTests into a working state again. Updated composer.json with required-dev packages. Create a new folder tests/acceptance for Behat functional/acceptance testing. Add a first Feature draft of a Behat functional test for local login.
Diffstat (limited to 'tests/template_test.php')
-rw-r--r--tests/template_test.php224
1 files changed, 0 insertions, 224 deletions
diff --git a/tests/template_test.php b/tests/template_test.php
deleted file mode 100644
index 1f9f80531..000000000
--- a/tests/template_test.php
+++ /dev/null
@@ -1,224 +0,0 @@
-<?php
-/**
- * this file contains tests for the template engine
- *
- * @package test.util
- */
-
-/** required, it is the file under test */
-require_once('include/template_processor.php');
-require_once('include/text.php');
-
-class TemplateMockApp {
- public $theme_info=array();
-}
-
-if(!function_exists('current_theme')) {
-function current_theme() {
- return 'clean';
-}
-}
-
-if(!function_exists('x')) {
-function x($s,$k = NULL) {
- return false;
-}
-}
-
-if(!function_exists('get_app')) {
-function get_app() {
- return new TemplateMockApp();
-}
-}
-
-/**
- * TestCase for the template engine
- *
- * @author Alexander Kampmann
- * @package test.util
- */
-class TemplateTest extends PHPUnit_Framework_TestCase {
-
- public function setUp() {
- global $t;
- $t=new Template;
- }
-
- public function testListToShort() {
- @list($first, $second)=array('first');
-
- $this->assertTrue(is_null($second));
- }
-
- public function testSimpleVariableString() {
- $tpl='Hello $name!';
-
- $text=replace_macros($tpl, array('$name'=>'Anna'));
-
- $this->assertEquals('Hello Anna!', $text);
- }
-
- public function testSimpleVariableInt() {
- $tpl='There are $num new messages!';
-
- $text=replace_macros($tpl, array('$num'=>172));
-
- $this->assertEquals('There are 172 new messages!', $text);
- }
-
- public function testConditionalElse() {
- $tpl='There{{ if $num!=1 }} are $num new messages{{ else }} is 1 new message{{ endif }}!';
-
- $text1=replace_macros($tpl, array('$num'=>1));
- $text22=replace_macros($tpl, array('$num'=>22));
-
- $this->assertEquals('There is 1 new message!', $text1);
- $this->assertEquals('There are 22 new messages!', $text22);
- }
-
- public function testConditionalNoElse() {
- $tpl='{{ if $num!=0 }}There are $num new messages!{{ endif }}';
-
- $text0=replace_macros($tpl, array('$num'=>0));
- $text22=replace_macros($tpl, array('$num'=>22));
-
- $this->assertEquals('', $text0);
- $this->assertEquals('There are 22 new messages!', $text22);
- }
-
- public function testConditionalFail() {
- $tpl='There {{ if $num!=1 }} are $num new messages{{ else }} is 1 new message{{ endif }}!';
-
- $text1=replace_macros($tpl, array());
-
- //$this->assertEquals('There is 1 new message!', $text1);
- }
-
- public function testSimpleFor() {
- $tpl='{{ for $messages as $message }} $message {{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>array('message 1', 'message 2')));
-
- $this->assertEquals(' message 1 message 2 ', $text);
- }
-
- public function testFor() {
- $tpl='{{ for $messages as $message }} from: $message.from to $message.to {{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>array(array('from'=>'Mike', 'to'=>'Alex'), array('from'=>'Alex', 'to'=>'Mike'))));
-
- $this->assertEquals(' from: Mike to Alex from: Alex to Mike ', $text);
- }
-
- public function testKeyedFor() {
- $tpl='{{ for $messages as $from=>$to }} from: $from to $to {{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>array('Mike'=>'Alex', 'Sven'=>'Mike')));
-
- $this->assertEquals(' from: Mike to Alex from: Sven to Mike ', $text);
- }
-
- public function testForEmpty() {
- $tpl='messages: {{for $messages as $message}} from: $message.from to $message.to {{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>array()));
-
- $this->assertEquals('messages: ', $text);
- }
-
- public function testForWrongType() {
- $tpl='messages: {{for $messages as $message}} from: $message.from to $message.to {{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>11));
-
- $this->assertEquals('messages: ', $text);
- }
-
- public function testForConditional() {
- $tpl='new messages: {{for $messages as $message}}{{ if $message.new }} $message.text{{endif}}{{ endfor }}';
-
- $text=replace_macros($tpl, array('$messages'=>array(
- array('new'=>true, 'text'=>'new message'),
- array('new'=>false, 'text'=>'old message'))));
-
- $this->assertEquals('new messages: new message', $text);
- }
-
- public function testConditionalFor() {
- $tpl='{{ if $enabled }}new messages:{{for $messages as $message}} $message.text{{ endfor }}{{endif}}';
-
- $text=replace_macros($tpl, array('$enabled'=>true,
- '$messages'=>array(
- array('new'=>true, 'text'=>'new message'),
- array('new'=>false, 'text'=>'old message'))));
-
- $this->assertEquals('new messages: new message old message', $text);
- }
-
- public function testFantasy() {
- $tpl='Fantasy: {{fantasy $messages}}';
-
- $text=replace_macros($tpl, array('$messages'=>'no no'));
-
- $this->assertEquals('Fantasy: {{fantasy no no}}', $text);
- }
-
- public function testInc() {
- $tpl='{{inc field_input.tpl with $field=$myvar}}{{ endinc }}';
-
- $text=replace_macros($tpl, array('$myvar'=>array('myfield', 'label', 'value', 'help')));
-
- $this->assertEquals(" \n"
- ." <div class='field input'>\n"
- ." <label for='id_myfield'>label</label>\n"
- ." <input name='myfield' id='id_myfield' value=\"value\">\n"
- ." <span class='field_help'>help</span>\n"
- ." </div>\n", $text);
- }
-
- public function testIncNoVar() {
- $tpl='{{inc field_input.tpl }}{{ endinc }}';
-
- $text=replace_macros($tpl, array('$field'=>array('myfield', 'label', 'value', 'help')));
-
- $this->assertEquals(" \n <div class='field input'>\n <label for='id_myfield'>label</label>\n"
- ." <input name='myfield' id='id_myfield' value=\"value\">\n"
- ." <span class='field_help'>help</span>\n"
- ." </div>\n", $text);
- }
-
- public function testDoubleUse() {
- $tpl='Hello $name! {{ if $enabled }} I love you! {{ endif }}';
-
- $text=replace_macros($tpl, array('$name'=>'Anna', '$enabled'=>false));
-
- $this->assertEquals('Hello Anna! ', $text);
-
- $tpl='Hey $name! {{ if $enabled }} I hate you! {{ endif }}';
-
- $text=replace_macros($tpl, array('$name'=>'Max', '$enabled'=>true));
-
- $this->assertEquals('Hey Max! I hate you! ', $text);
- }
-
- public function testIncDouble() {
- $tpl='{{inc field_input.tpl with $field=$var1}}{{ endinc }}'
- .'{{inc field_input.tpl with $field=$var2}}{{ endinc }}';
-
- $text=replace_macros($tpl, array('$var1'=>array('myfield', 'label', 'value', 'help'),
- '$var2'=>array('myfield2', 'label2', 'value2', 'help2')));
-
- $this->assertEquals(" \n"
- ." <div class='field input'>\n"
- ." <label for='id_myfield'>label</label>\n"
- ." <input name='myfield' id='id_myfield' value=\"value\">\n"
- ." <span class='field_help'>help</span>\n"
- ." </div>\n"
- ." \n"
- ." <div class='field input'>\n"
- ." <label for='id_myfield2'>label2</label>\n"
- ." <input name='myfield2' id='id_myfield2' value=\"value2\">\n"
- ." <span class='field_help'>help2</span>\n"
- ." </div>\n", $text);
- }
-} \ No newline at end of file