From c7d0fea9ad7b86089f4f4dc974750d879f95eb46 Mon Sep 17 00:00:00 2001 From: ilyes kooli Date: Wed, 14 Dec 2016 17:04:05 +0200 Subject: [PATCH 1/4] #20921 [Config] Provide shorthand methods for ArrayNodeDefinition::prototype() --- .../Builder/ArrayNodeDefinition.php | 63 +++++++++++++++++++ .../Builder/ArrayNodeDefinitionTest.php | 42 +++++++++++++ 2 files changed, 105 insertions(+) diff --git a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php index dc1c2fd8db224..400f7a9ae3363 100644 --- a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php +++ b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php @@ -79,6 +79,69 @@ public function prototype($type) return $this->prototype = $this->getNodeBuilder()->node(null, $type)->setParent($this); } + /** + * Shorthand for prototype('variable') + * @return VariableNodeDefinition + */ + public function prototypeVariable() + { + return $this->prototype('variable'); + } + + /** + * Shorthand for prototype('scalar') + * @return ScalarNodeDefinition + */ + public function prototypeScalar() + { + return $this->prototype('scalar'); + } + + /** + * Shorthand for prototype('boolean') + * @return BooleanNodeDefinition + */ + public function prototypeBoolean() + { + return $this->prototype('boolean'); + } + + /** + * Shorthand for prototype('integer') + * @return IntegerNodeDefinition + */ + public function prototypeInteger() + { + return $this->prototype('integer'); + } + + /** + * Shorthand for prototype('float') + * @return FloatNodeDefinition + */ + public function prototypeFloat() + { + return $this->prototype('float'); + } + + /** + * Shorthand for prototype('array') + * @return ArrayNodeDefinition + */ + public function prototypeArray() + { + return $this->prototype('array'); + } + + /** + * Shorthand for prototype('enum') + * @return EnumNodeDefinition + */ + public function prototypeEnum() + { + return $this->prototype('enum'); + } + /** * Adds the default value if the node is not set in the configuration. * diff --git a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php index b07f6079ebd90..4b1f5b2beb337 100644 --- a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php +++ b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php @@ -227,6 +227,48 @@ public function testNormalizeKeys() $this->assertFalse($this->getField($node, 'normalizeKeys')); } + public function testPrototypeVariable() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('variable'), $node->prototypeVariable()); + } + + public function testPrototypeScalar() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('scalar'), $node->prototypeScalar()); + } + + public function testPrototypeBoolean() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('boolean'), $node->prototypeBoolean()); + } + + public function testPrototypeInteger() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('integer'), $node->prototypeInteger()); + } + + public function testPrototypeFloat() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('float'), $node->prototypeFloat()); + } + + public function testPrototypeArray() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('array'), $node->prototypeArray()); + } + + public function testPrototypeEnum() + { + $node = new ArrayNodeDefinition('root'); + $this->assertEquals($node->prototype('enum'), $node->prototypeEnum()); + } + public function getEnableableNodeFixtures() { return array( From 4238c1d8e5c93ac55caadfb111bcb5e18a10b8fb Mon Sep 17 00:00:00 2001 From: ilyes kooli Date: Wed, 14 Dec 2016 17:09:24 +0200 Subject: [PATCH 2/4] #20921 Fix coding standard --- .../Config/Definition/Builder/ArrayNodeDefinition.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php index 400f7a9ae3363..d8ee2d731774b 100644 --- a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php +++ b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php @@ -81,6 +81,7 @@ public function prototype($type) /** * Shorthand for prototype('variable') + * * @return VariableNodeDefinition */ public function prototypeVariable() @@ -90,6 +91,7 @@ public function prototypeVariable() /** * Shorthand for prototype('scalar') + * * @return ScalarNodeDefinition */ public function prototypeScalar() @@ -99,6 +101,7 @@ public function prototypeScalar() /** * Shorthand for prototype('boolean') + * * @return BooleanNodeDefinition */ public function prototypeBoolean() @@ -108,6 +111,7 @@ public function prototypeBoolean() /** * Shorthand for prototype('integer') + * * @return IntegerNodeDefinition */ public function prototypeInteger() @@ -117,6 +121,7 @@ public function prototypeInteger() /** * Shorthand for prototype('float') + * * @return FloatNodeDefinition */ public function prototypeFloat() @@ -126,6 +131,7 @@ public function prototypeFloat() /** * Shorthand for prototype('array') + * * @return ArrayNodeDefinition */ public function prototypeArray() @@ -135,6 +141,7 @@ public function prototypeArray() /** * Shorthand for prototype('enum') + * * @return EnumNodeDefinition */ public function prototypeEnum() From cf553bda9df90dc0a356e89953cbd8e499083ea9 Mon Sep 17 00:00:00 2001 From: ilyes kooli Date: Wed, 14 Dec 2016 17:23:40 +0200 Subject: [PATCH 3/4] #20921 Fix coding standard, add dot to methods comment header --- .../Definition/Builder/ArrayNodeDefinition.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php index d8ee2d731774b..71131d9f3b204 100644 --- a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php +++ b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php @@ -80,7 +80,7 @@ public function prototype($type) } /** - * Shorthand for prototype('variable') + * Shorthand for prototype('variable'). * * @return VariableNodeDefinition */ @@ -90,7 +90,7 @@ public function prototypeVariable() } /** - * Shorthand for prototype('scalar') + * Shorthand for prototype('scalar'). * * @return ScalarNodeDefinition */ @@ -100,7 +100,7 @@ public function prototypeScalar() } /** - * Shorthand for prototype('boolean') + * Shorthand for prototype('boolean'). * * @return BooleanNodeDefinition */ @@ -110,7 +110,7 @@ public function prototypeBoolean() } /** - * Shorthand for prototype('integer') + * Shorthand for prototype('integer'). * * @return IntegerNodeDefinition */ @@ -120,7 +120,7 @@ public function prototypeInteger() } /** - * Shorthand for prototype('float') + * Shorthand for prototype('float'). * * @return FloatNodeDefinition */ @@ -130,7 +130,7 @@ public function prototypeFloat() } /** - * Shorthand for prototype('array') + * Shorthand for prototype('array'). * * @return ArrayNodeDefinition */ @@ -140,7 +140,7 @@ public function prototypeArray() } /** - * Shorthand for prototype('enum') + * Shorthand for prototype('enum'). * * @return EnumNodeDefinition */ From 1a61e95a079a1869fd2d65c4dc59c60955e27f6b Mon Sep 17 00:00:00 2001 From: ilyes kooli Date: Thu, 15 Dec 2016 10:27:21 +0200 Subject: [PATCH 4/4] #20921 Rename shorthand methods and remove useless doc --- .../Builder/ArrayNodeDefinition.php | 28 +++++-------------- .../Builder/ArrayNodeDefinitionTest.php | 14 +++++----- 2 files changed, 14 insertions(+), 28 deletions(-) diff --git a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php index 71131d9f3b204..4ad218bb4aeb3 100644 --- a/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php +++ b/src/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.php @@ -80,71 +80,57 @@ public function prototype($type) } /** - * Shorthand for prototype('variable'). - * * @return VariableNodeDefinition */ - public function prototypeVariable() + public function variablePrototype() { return $this->prototype('variable'); } /** - * Shorthand for prototype('scalar'). - * * @return ScalarNodeDefinition */ - public function prototypeScalar() + public function scalarPrototype() { return $this->prototype('scalar'); } /** - * Shorthand for prototype('boolean'). - * * @return BooleanNodeDefinition */ - public function prototypeBoolean() + public function booleanPrototype() { return $this->prototype('boolean'); } /** - * Shorthand for prototype('integer'). - * * @return IntegerNodeDefinition */ - public function prototypeInteger() + public function integerPrototype() { return $this->prototype('integer'); } /** - * Shorthand for prototype('float'). - * * @return FloatNodeDefinition */ - public function prototypeFloat() + public function floatPrototype() { return $this->prototype('float'); } /** - * Shorthand for prototype('array'). - * * @return ArrayNodeDefinition */ - public function prototypeArray() + public function arrayPrototype() { return $this->prototype('array'); } /** - * Shorthand for prototype('enum'). - * * @return EnumNodeDefinition */ - public function prototypeEnum() + public function enumPrototype() { return $this->prototype('enum'); } diff --git a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php index 4b1f5b2beb337..1dcc147ed223b 100644 --- a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php +++ b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php @@ -230,43 +230,43 @@ public function testNormalizeKeys() public function testPrototypeVariable() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('variable'), $node->prototypeVariable()); + $this->assertEquals($node->prototype('variable'), $node->variablePrototype()); } public function testPrototypeScalar() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('scalar'), $node->prototypeScalar()); + $this->assertEquals($node->prototype('scalar'), $node->scalarPrototype()); } public function testPrototypeBoolean() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('boolean'), $node->prototypeBoolean()); + $this->assertEquals($node->prototype('boolean'), $node->booleanPrototype()); } public function testPrototypeInteger() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('integer'), $node->prototypeInteger()); + $this->assertEquals($node->prototype('integer'), $node->integerPrototype()); } public function testPrototypeFloat() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('float'), $node->prototypeFloat()); + $this->assertEquals($node->prototype('float'), $node->floatPrototype()); } public function testPrototypeArray() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('array'), $node->prototypeArray()); + $this->assertEquals($node->prototype('array'), $node->arrayPrototype()); } public function testPrototypeEnum() { $node = new ArrayNodeDefinition('root'); - $this->assertEquals($node->prototype('enum'), $node->prototypeEnum()); + $this->assertEquals($node->prototype('enum'), $node->enumPrototype()); } public function getEnableableNodeFixtures()