Christophe Coevoet преди 14 години
родител
ревизия
cb0fa406aa
променени са 1 файла, в които са добавени 35 реда и са изтрити 0 реда
  1. 35 0
      tests/Symfony/Tests/Component/DependencyInjection/Configuration/ArrayNodeTest.php

+ 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());
+    }
 }