From 9b37637184e4600f9e7c8dfff363e87d8e42f90e Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Tue, 27 Sep 2011 10:12:54 +0200 Subject: [PATCH] [Form] added tests for previous merge --- CHANGELOG-2.1.md | 1 + .../Symfony/Tests/Component/Form/FormTest.php | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/CHANGELOG-2.1.md b/CHANGELOG-2.1.md index 8cda0ff9c4..7398b6ac52 100644 --- a/CHANGELOG-2.1.md +++ b/CHANGELOG-2.1.md @@ -42,6 +42,7 @@ To get the diff between two versions, go to https://github.com/symfony/symfony/c ### Form + * added Form::getErrorsAsString() to help debugging forms * allowed setting different options for RepeatedType fields (like the label) ### HttpFoundation diff --git a/tests/Symfony/Tests/Component/Form/FormTest.php b/tests/Symfony/Tests/Component/Form/FormTest.php index afcd358ec2..4fbf6ff9b7 100644 --- a/tests/Symfony/Tests/Component/Form/FormTest.php +++ b/tests/Symfony/Tests/Component/Form/FormTest.php @@ -1003,6 +1003,27 @@ class FormTest extends \PHPUnit_Framework_TestCase $this->assertSame($parent, $view->getParent()); } + public function testGetErrorsAsString() + { + $form = $this->getBuilder()->getForm(); + $form->addError(new FormError('Error!')); + + $this->assertEquals("ERROR: Error!\n", $form->getErrorsAsString()); + } + + public function testGetErrorsAsStringDeep() + { + $form = $this->getBuilder()->getForm(); + $form->addError(new FormError('Error!')); + + $parent = $this->getBuilder()->getForm(); + $parent->add($form); + + $parent->add($this->getBuilder('foo')->getForm()); + + $this->assertEquals("name:\n ERROR: Error!\nfoo:\n No errors\n", $parent->getErrorsAsString()); + } + protected function getBuilder($name = 'name', EventDispatcherInterface $dispatcher = null) { return new FormBuilder($name, $this->factory, $dispatcher ?: $this->dispatcher);