예제 #1
0
    /**
     * @test
     */
    public function useDocComment()
    {
        $className = 'ExampleForDocComment';
        $docComment = "A tests class for DocComment.\n\n@package    example\n@copyright  2009 Foo Bar <*****@*****.**>";
        $formatedDocComment = "/**\n * A tests class for DocComment.\n *\n * @package    example\n * @copyright  2009 Foo Bar <*****@*****.**>\n */";
        $result = <<<EOF
/**
 * A tests class for DocComment.
 *
 * @package    example
 * @copyright  2009 Foo Bar <*****@*****.**>
 */
class ExampleForDocComment
{
}

EOF;
        $class = new Stagehand_PHP_Class($className);
        $class->setDocComment($docComment);
        $this->assertEquals($class->getDocComment(), $formatedDocComment);
        $this->assertEquals($class->render(), $result);
        $class->setDocComment($formatedDocComment, true);
        $this->assertEquals($class->getDocComment(), $formatedDocComment);
        $this->assertEquals($class->render(), $result);
        $class->defineFinal();
        $class->setParentClass('Foo');
        $result = <<<EOF
/**
 * A tests class for DocComment.
 *
 * @package    example
 * @copyright  2009 Foo Bar <*****@*****.**>
 */
final class ExampleForDocComment extends Foo
{
}

EOF;
        $this->assertEquals($class->render(), $result);
    }