TYPO3 CMS  TYPO3_8-7
SectionTest.php
Go to the documentation of this file.
1 <?php
3 
5 
11 class SectionTest extends \TYPO3\TestingFramework\Core\Unit\UnitTestCase
12 {
13  protected static $IDENTIFIER = 'an_id';
14  protected static $TYPE = 'a_type';
15 
20  protected $sectionInstance = null;
21 
25  public function setUp()
26  {
27  parent::setUp();
28  $this->sectionInstance = new Section(self::$IDENTIFIER, self::$TYPE);
29  }
30 
34  public function newInstanceHasNoProperties()
35  {
36  $this->assertNotNull($this->sectionInstance);
37  $this->assertCount(0, $this->sectionInstance->getProperties());
38  }
39 
43  public function setSimpleProperties()
44  {
45  $this->sectionInstance->setProperty('foo', 'bar');
46  $this->sectionInstance->setProperty('buz', 'qax');
47  $properties = $this->sectionInstance->getProperties();
48 
49  $this->assertCount(2, $properties, json_encode($properties));
50  $this->assertTrue(array_key_exists('foo', $properties));
51  $this->assertEquals('bar', $properties['foo']);
52  $this->assertTrue(array_key_exists('buz', $properties));
53  $this->assertEquals('qax', $properties['buz']);
54  }
55 
59  public function overrideProperties()
60  {
61  $this->sectionInstance->setProperty('foo', 'bar');
62  $this->sectionInstance->setProperty('foo', 'buz');
63 
64  $properties = $this->sectionInstance->getProperties();
65  $this->assertEquals(1, count($properties));
66  $this->assertTrue(array_key_exists('foo', $properties));
67  $this->assertEquals('buz', $properties['foo']);
68  }
69 
73  public function setArrayProperties()
74  {
75  $this->sectionInstance->setProperty('foo', ['bar' => 'baz', 'bla' => 'blubb']);
76  $properties = $this->sectionInstance->getProperties();
77 
78  $this->assertCount(1, $properties);
79  $this->assertTrue(array_key_exists('foo', $properties));
80 
81  //check arrays details
82  $this->assertTrue(is_array($properties['foo']));
83  $this->assertCount(2, $properties['foo']);
84  $this->assertTrue(array_key_exists('bar', $properties['foo']));
85  $this->assertEquals('baz', $properties['foo']['bar']);
86  }
87 }