TYPO3 CMS  TYPO3_7-6
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  protected function setUp()
25  {
26  $this->variableContainer = new \TYPO3\CMS\Fluid\Core\ViewHelper\TemplateVariableContainer();
27  }
28 
33  {
34  $object = 'StringObject';
35  $this->variableContainer->add('variable', $object);
36  $this->assertSame($this->variableContainer->get('variable'), $object, 'The retrieved object from the context is not the same as the stored object.');
37  }
38 
43  {
44  $object = 'StringObject';
45  $this->variableContainer['variable'] = $object;
46  $this->assertSame($this->variableContainer->get('variable'), $object);
47  $this->assertSame($this->variableContainer['variable'], $object);
48  }
49 
53  public function addedObjectsExistInArray()
54  {
55  $object = 'StringObject';
56  $this->variableContainer->add('variable', $object);
57  $this->assertTrue($this->variableContainer->exists('variable'));
58  $this->assertTrue(isset($this->variableContainer['variable']));
59  }
60 
65  {
66  $object = 'StringObject';
67  $this->variableContainer->add('variable', $object);
68  $this->assertEquals($this->variableContainer->getAllIdentifiers(), ['variable'], 'Added key is not visible in getAllIdentifiers');
69  }
70 
76  {
77  $this->variableContainer->add('variable', 'string1');
78  $this->variableContainer['variable'] = 'string2';
79  }
80 
86  {
87  $this->variableContainer->add('TrUe', 'someValue');
88  }
89 
95  {
96  $this->variableContainer->get('nonexistent');
97  }
98 
104  {
105  $this->variableContainer->remove('nonexistent');
106  }
107 
113  {
114  $this->variableContainer->add('variable', 'string1');
115  $this->variableContainer->remove('variable');
116  $this->variableContainer->get('variable');
117  }
118 
123  {
124  $this->assertSame([], $this->variableContainer->get('_all'));
125  }
126 
131  {
132  $this->variableContainer->add('name', 'Simon');
133  $this->assertSame(['name' => 'Simon'], $this->variableContainer->get('_all'));
134  }
135 
141  {
142  $this->variableContainer->add('_all', 'foo');
143  }
144 }