Przeglądaj źródła

Added unit tests

Christophe Coevoet 14 lat temu
rodzic
commit
cb0fa406aa

+ 35 - 0
tests/Symfony/Tests/Component/DependencyInjection/Configuration/ArrayNodeTest.php

@@ -14,4 +14,39 @@ class ArrayNodeTest extends \PHPUnit_Framework_TestCase
         $node = new ArrayNode('root');
         $node->normalize(false);
     }
+
+    /**
+     * @expectedException InvalidArgumentException
+     */
+    public function testSetDefaultValueThrowsExceptionWhenNotAnArray()
+    {
+        $node = new ArrayNode('root');
+        $node->setDefaultValue('test');
+    }
+
+    /**
+     * @expectedException RuntimeException
+     */
+    public function testSetDefaultValueThrowsExceptionWhenNotAnPrototype()
+    {
+        $node = new ArrayNode('root');
+        $node->setDefaultValue(array ('test'));
+    }
+
+    public function testGetDefaultValueReturnsAnEmptyArrayForPrototypes()
+    {
+        $node = new ArrayNode('root');
+        $prototype = new ArrayNode(null, $node);
+        $node->setPrototype($prototype);
+        $this->assertEmpty($node->getDefaultValue());
+    }
+
+    public function testGetDefaultValueReturnsDefaultValueForPrototypes()
+    {
+        $node = new ArrayNode('root');
+        $prototype = new ArrayNode(null, $node);
+        $node->setPrototype($prototype);
+        $node->setDefaultValue(array ('test'));
+        $this->assertEquals(array ('test'), $node->getDefaultValue());
+    }
 }