Yaffs site version 1.1
[yaffs-website] / vendor / phpdocumentor / reflection-docblock / tests / phpDocumentor / Reflection / DocBlock / Tag / ThrowsTagTest.php
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTagTest.php
new file mode 100644 (file)
index 0000000..3c669d5
--- /dev/null
@@ -0,0 +1,102 @@
+<?php
+/**
+ * phpDocumentor Throws tag test.
+ * 
+ * PHP version 5.3
+ *
+ * @author    Mike van Riel <mike.vanriel@naenius.com>
+ * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
+ * @license   http://www.opensource.org/licenses/mit-license.php MIT
+ * @link      http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\DocBlock\Tag;
+
+/**
+ * Test class for \phpDocumentor\Reflection\DocBlock\ThrowsTag
+ *
+ * @author    Mike van Riel <mike.vanriel@naenius.com>
+ * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
+ * @license   http://www.opensource.org/licenses/mit-license.php MIT
+ * @link      http://phpdoc.org
+ */
+class ThrowsTagTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag can
+     * understand the @throws DocBlock.
+     *
+     * @param string $type
+     * @param string $content
+     * @param string $extractedType
+     * @param string $extractedTypes
+     * @param string $extractedDescription
+     *
+     * @covers \phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag
+     * @dataProvider provideDataForConstructor
+     *
+     * @return void
+     */
+    public function testConstructorParsesInputsIntoCorrectFields(
+        $type,
+        $content,
+        $extractedType,
+        $extractedTypes,
+        $extractedDescription
+    ) {
+        $tag = new ThrowsTag($type, $content);
+
+        $this->assertEquals($type, $tag->getName());
+        $this->assertEquals($extractedType, $tag->getType());
+        $this->assertEquals($extractedTypes, $tag->getTypes());
+        $this->assertEquals($extractedDescription, $tag->getDescription());
+    }
+
+    /**
+     * Data provider for testConstructorParsesInputsIntoCorrectFields()
+     *
+     * @return array
+     */
+    public function provideDataForConstructor()
+    {
+        return array(
+            array('throws', '', '', array(), ''),
+            array('throws', 'int', 'int', array('int'), ''),
+            array(
+                'throws',
+                'int Number of Bobs',
+                'int',
+                array('int'),
+                'Number of Bobs'
+            ),
+            array(
+                'throws',
+                'int|double Number of Bobs',
+                'int|double',
+                array('int', 'double'),
+                'Number of Bobs'
+            ),
+            array(
+                'throws',
+                "int Number of \n Bobs",
+                'int',
+                array('int'),
+                "Number of \n Bobs"
+            ),
+            array(
+                'throws',
+                " int Number of Bobs",
+                'int',
+                array('int'),
+                "Number of Bobs"
+            ),
+            array(
+                'throws',
+                "int\nNumber of Bobs",
+                'int',
+                array('int'),
+                "Number of Bobs"
+            )
+        );
+    }
+}