2 declare(strict_types = 1);
19 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
43 $this->sectionInstance =
new Section(self::$IDENTIFIER, self::$TYPE);
51 $this->assertNotNull($this->sectionInstance);
52 $this->assertCount(0, $this->sectionInstance->getProperties());
60 $this->sectionInstance->setProperty(
'foo',
'bar');
61 $this->sectionInstance->setProperty(
'buz',
'qax');
62 $properties = $this->sectionInstance->getProperties();
64 $this->assertCount(2, $properties, json_encode($properties));
65 $this->assertTrue(array_key_exists(
'foo', $properties));
66 $this->assertEquals(
'bar', $properties[
'foo']);
67 $this->assertTrue(array_key_exists(
'buz', $properties));
68 $this->assertEquals(
'qax', $properties[
'buz']);
76 $this->sectionInstance->setProperty(
'foo',
'bar');
77 $this->sectionInstance->setProperty(
'foo',
'buz');
79 $properties = $this->sectionInstance->getProperties();
80 $this->assertEquals(1, \count($properties));
81 $this->assertTrue(array_key_exists(
'foo', $properties));
82 $this->assertEquals(
'buz', $properties[
'foo']);
90 $this->sectionInstance->setProperty(
'foo', [
'bar' =>
'baz',
'bla' =>
'blubb']);
91 $properties = $this->sectionInstance->getProperties();
93 $this->assertCount(1, $properties);
94 $this->assertTrue(array_key_exists(
'foo', $properties));
97 $this->assertTrue(\is_array($properties[
'foo']));
98 $this->assertCount(2, $properties[
'foo']);
99 $this->assertTrue(array_key_exists(
'bar', $properties[
'foo']));
100 $this->assertEquals(
'baz', $properties[
'foo'][
'bar']);
108 $expected = [
'foo-1' => [
'bar-1' =>
'foo-2']];
109 $this->sectionInstance->setProperty(
'foo-1', [
'bar-1' =>
'foo-2']);
110 $this->sectionInstance->setProperty(
'foo-2', [
'bar-2' =>
'foo-3']);
111 $this->sectionInstance->setProperty(
'foo-2',
null);
113 $this->assertSame($expected, $this->sectionInstance->getProperties());
129 $this->sectionInstance->setProperty(
'foo-1', [
'bar-1' =>
'foo-2']);
130 $this->sectionInstance->setProperty(
'foo-2', [
'bar-2' =>
'foo-3',
'bar-3' =>
'foo-4']);
131 $this->sectionInstance->setProperty(
'foo-2', [
'bar-3' =>
null]);
133 $this->assertSame($expected, $this->sectionInstance->getProperties());
141 $expected = [
'foo' =>
'bar'];
142 $this->sectionInstance->setRenderingOption(
'foo',
'bar');
144 $this->assertSame($expected, $this->sectionInstance->getRenderingOptions());
152 $expected = [
'foo-1' => [
'bar' =>
'foo-2']];
153 $this->sectionInstance->setRenderingOption(
'foo-1', [
'bar' =>
'foo-2']);
155 $this->assertSame($expected, $this->sectionInstance->getRenderingOptions());
163 $expected = [
'foo-1' => [
'bar-1' =>
'foo-2']];
164 $this->sectionInstance->setRenderingOption(
'foo-1', [
'bar-1' =>
'foo-2']);
165 $this->sectionInstance->setRenderingOption(
'foo-2', [
'bar-2' =>
'foo-3']);
166 $this->sectionInstance->setRenderingOption(
'foo-2',
null);
168 $this->assertSame($expected, $this->sectionInstance->getRenderingOptions());
184 $this->sectionInstance->setRenderingOption(
'foo-1', [
'bar-1' =>
'foo-2']);
185 $this->sectionInstance->setRenderingOption(
'foo-2', [
'bar-2' =>
'foo-3',
'bar-3' =>
'foo-4']);
186 $this->sectionInstance->setRenderingOption(
'foo-2', [
'bar-3' =>
null]);
188 $this->assertSame($expected, $this->sectionInstance->getRenderingOptions());
205 $this->sectionInstance->setRenderingOption(
'foo-1', [
'bar-1' =>
'foo-2']);
206 $this->sectionInstance->setRenderingOption(
'foo-2', [
'bar-2' =>
'foo-3']);
207 $this->sectionInstance->setRenderingOption(
'foo-2', [
'bar-3' =>
'foo-4']);
209 $this->assertSame($expected, $this->sectionInstance->getRenderingOptions());