TYPO3 CMS  TYPO3_6-2
All Classes Namespaces Files Functions Variables Pages
TemplateVariableContainerTest.php
Go to the documentation of this file.
1 <?php
3 
4 /* *
5  * This script is backported from the TYPO3 Flow package "TYPO3.Fluid". *
6  * *
7  * It is free software; you can redistribute it and/or modify it under *
8  * the terms of the GNU Lesser General Public License, either version 3 *
9  * of the License, or (at your option) any later version. *
10  * *
11  * The TYPO3 project - inspiring people to share! *
12  * */
13 
18 
22  protected $variableContainer;
23 
24  public function setUp() {
25  $this->variableContainer = new \TYPO3\CMS\Fluid\Core\ViewHelper\TemplateVariableContainer();
26  }
27 
31  public function addedObjectsCanBeRetrievedAgain() {
32  $object = 'StringObject';
33  $this->variableContainer->add('variable', $object);
34  $this->assertSame($this->variableContainer->get('variable'), $object, 'The retrieved object from the context is not the same as the stored object.');
35  }
36 
41  $object = 'StringObject';
42  $this->variableContainer['variable'] = $object;
43  $this->assertSame($this->variableContainer->get('variable'), $object);
44  $this->assertSame($this->variableContainer['variable'], $object);
45  }
46 
50  public function addedObjectsExistInArray() {
51  $object = 'StringObject';
52  $this->variableContainer->add('variable', $object);
53  $this->assertTrue($this->variableContainer->exists('variable'));
54  $this->assertTrue(isset($this->variableContainer['variable']));
55  }
56 
61  $object = 'StringObject';
62  $this->variableContainer->add('variable', $object);
63  $this->assertEquals($this->variableContainer->getAllIdentifiers(), array('variable'), 'Added key is not visible in getAllIdentifiers');
64  }
65 
71  $this->variableContainer->add('variable', 'string1');
72  $this->variableContainer['variable'] = 'string2';
73  }
74 
80  $this->variableContainer->add('TrUe', 'someValue');
81  }
82 
88  $this->variableContainer->get('nonexistent');
89  }
90 
96  $this->variableContainer->remove('nonexistent');
97  }
98 
103  public function removeReallyRemovesVariables() {
104  $this->variableContainer->add('variable', 'string1');
105  $this->variableContainer->remove('variable');
106  $this->variableContainer->get('variable');
107  }
108 
113  $this->assertSame(array(), $this->variableContainer->get('_all'));
114  }
115 
119  public function getAllShouldReturnAllVariables() {
120  $this->variableContainer->add('name', 'Simon');
121  $this->assertSame(array('name' => 'Simon'), $this->variableContainer->get('_all'));
122  }
123 
129  $this->variableContainer->add('_all', 'foo');
130  }
131 }