|
|
@@ -45,6 +45,18 @@ class ViewBuilderTest extends TestCase
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * data provider for string properties.
|
|
|
+ *
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function boolPropertyProvider()
|
|
|
+ {
|
|
|
+ return [
|
|
|
+ ['autoLayout', true],
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* data provider for array properties.
|
|
|
*
|
|
|
* @return array
|
|
|
@@ -65,8 +77,29 @@ class ViewBuilderTest extends TestCase
|
|
|
*/
|
|
|
public function testStringProperties($property, $value)
|
|
|
{
|
|
|
+ $get = 'get' . ucfirst($property);
|
|
|
+ $set = 'set' . ucfirst($property);
|
|
|
+
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+ $this->assertNull($builder->{$get}(), 'Default value should be null');
|
|
|
+ $this->assertSame($builder, $builder->{$set}($value), 'Setter returns this');
|
|
|
+ $this->assertSame($value, $builder->{$get}(), 'Getter gets value.');
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Test string property accessor/mutator methods.
|
|
|
+ *
|
|
|
+ * @deprecated
|
|
|
+ * @dataProvider boolPropertyProvider
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testBoolProperties($property, $value)
|
|
|
+ {
|
|
|
+ $get = 'enable' . ucfirst($property);
|
|
|
+ $set = 'is' . ucfirst($property) . 'Enabled';
|
|
|
+
|
|
|
$builder = new ViewBuilder();
|
|
|
- $this->assertNull($builder->{$property}(), 'Default value should be null');
|
|
|
+ $this->assertFalse($builder->{$property}(), 'Default value should be null');
|
|
|
$this->assertSame($builder, $builder->{$property}($value), 'Setter returns this');
|
|
|
$this->assertSame($value, $builder->{$property}(), 'Getter gets value.');
|
|
|
}
|
|
|
@@ -79,10 +112,13 @@ class ViewBuilderTest extends TestCase
|
|
|
*/
|
|
|
public function testArrayProperties($property, $value)
|
|
|
{
|
|
|
+ $get = 'get' . ucfirst($property);
|
|
|
+ $set = 'set' . ucfirst($property);
|
|
|
+
|
|
|
$builder = new ViewBuilder();
|
|
|
- $this->assertSame([], $builder->{$property}(), 'Default value should be empty list');
|
|
|
- $this->assertSame($builder, $builder->{$property}($value), 'Setter returns this');
|
|
|
- $this->assertSame($value, $builder->{$property}(), 'Getter gets value.');
|
|
|
+ $this->assertSame([], $builder->{$get}(), 'Default value should be empty list');
|
|
|
+ $this->assertSame($builder, $builder->{$set}($value), 'Setter returns this');
|
|
|
+ $this->assertSame($value, $builder->{$get}(), 'Getter gets value.');
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -93,14 +129,89 @@ class ViewBuilderTest extends TestCase
|
|
|
*/
|
|
|
public function testArrayPropertyMerge($property, $value)
|
|
|
{
|
|
|
+ $get = 'get' . ucfirst($property);
|
|
|
+ $set = 'set' . ucfirst($property);
|
|
|
+
|
|
|
$builder = new ViewBuilder();
|
|
|
- $builder->{$property}($value);
|
|
|
+ $builder->{$set}($value);
|
|
|
+
|
|
|
+ $builder->{$set}(['Merged'], true);
|
|
|
+ $this->assertSame(array_merge($value, ['Merged']), $builder->{$get}(), 'Should merge');
|
|
|
+
|
|
|
+ $builder->{$set}($value, false);
|
|
|
+ $this->assertSame($value, $builder->{$get}(), 'Should replace');
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Test string property accessor/mutator methods.
|
|
|
+ *
|
|
|
+ * @deprecated
|
|
|
+ * @dataProvider stringPropertyProvider
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testStringPropertiesDeprecated($property, $value)
|
|
|
+ {
|
|
|
+ $this->deprecated(function () {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+ $this->assertNull($builder->{$property}(), 'Default value should be null');
|
|
|
+ $this->assertSame($builder, $builder->{$property}($value), 'Setter returns this');
|
|
|
+ $this->assertSame($value, $builder->{$property}(), 'Getter gets value.');
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Test string property accessor/mutator methods.
|
|
|
+ *
|
|
|
+ * @deprecated
|
|
|
+ * @dataProvider boolPropertyProvider
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testBoolPropertiesDeprecated($property, $value)
|
|
|
+ {
|
|
|
+ $this->deprecated(function () {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+ $this->assertNull($builder->{$property}(), 'Default value should be null');
|
|
|
+ $this->assertSame($builder, $builder->{$property}($value), 'Setter returns this');
|
|
|
+ $this->assertSame($value, $builder->{$property}(), 'Getter gets value.');
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Test array property accessor/mutator methods.
|
|
|
+ *
|
|
|
+ * @deprecated
|
|
|
+ * @dataProvider arrayPropertyProvider
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testArrayPropertiesDeprecated($property, $value)
|
|
|
+ {
|
|
|
+ $this->deprecated(function () {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+ $this->assertSame([], $builder->{$property}(), 'Default value should be empty list');
|
|
|
+ $this->assertSame($builder, $builder->{$property}($value), 'Setter returns this');
|
|
|
+ $this->assertSame($value, $builder->{$property}(), 'Getter gets value.');
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Test array property accessor/mutator methods.
|
|
|
+ *
|
|
|
+ * @deprecated
|
|
|
+ * @dataProvider arrayPropertyProvider
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testArrayPropertyMergeDeprecated($property, $value)
|
|
|
+ {
|
|
|
+ $this->deprecated(function () {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+ $builder->{$property}($value);
|
|
|
|
|
|
- $builder->{$property}(['Merged'], true);
|
|
|
- $this->assertSame(array_merge($value, ['Merged']), $builder->{$property}(), 'Should merge');
|
|
|
+ $builder->{$property}(['Merged'], true);
|
|
|
+ $this->assertSame(array_merge($value, ['Merged']), $builder->{$property}(), 'Should merge');
|
|
|
|
|
|
- $builder->{$property}($value, false);
|
|
|
- $this->assertSame($value, $builder->{$property}(), 'Should replace');
|
|
|
+ $builder->{$property}($value, false);
|
|
|
+ $this->assertSame($value, $builder->{$property}(), 'Should replace');
|
|
|
+ });
|
|
|
}
|
|
|
|
|
|
/**
|