Merge branch '2.8' into 3.2
* 2.8: [Form] backport DependencyInjectionExtension tests [Form] Fixed typo in a test after #21877
This commit is contained in:
commit
4d91022480
@ -35,9 +35,9 @@ class DependencyInjectionExtensionTest extends TestCase
|
|||||||
->willReturn('other');
|
->willReturn('other');
|
||||||
|
|
||||||
$services = array(
|
$services = array(
|
||||||
'extension1' => $typeExtension1,
|
'extension1' => $typeExtension1 = $this->createFormTypeExtensionMock('test'),
|
||||||
'extension2' => $typeExtension2,
|
'extension2' => $typeExtension2 = $this->createFormTypeExtensionMock('test'),
|
||||||
'extension3' => $typeExtension3,
|
'extension3' => $typeExtension3 = $this->createFormTypeExtensionMock('other'),
|
||||||
);
|
);
|
||||||
|
|
||||||
$container->expects($this->any())
|
$container->expects($this->any())
|
||||||
@ -78,4 +78,33 @@ class DependencyInjectionExtensionTest extends TestCase
|
|||||||
|
|
||||||
$extension->getTypeExtensions('test');
|
$extension->getTypeExtensions('test');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testGetTypeGuesser()
|
||||||
|
{
|
||||||
|
$container = $this->getMockBuilder('Symfony\Component\DependencyInjection\ContainerInterface')->getMock();
|
||||||
|
$container
|
||||||
|
->expects($this->once())
|
||||||
|
->method('get')
|
||||||
|
->with('foo')
|
||||||
|
->willReturn($this->getMockBuilder('Symfony\Component\Form\FormTypeGuesserInterface')->getMock());
|
||||||
|
$extension = new DependencyInjectionExtension($container, array(), array(), array('foo'));
|
||||||
|
|
||||||
|
$this->assertInstanceOf('Symfony\Component\Form\FormTypeGuesserChain', $extension->getTypeGuesser());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testGetTypeGuesserReturnsNullWhenNoTypeGuessersHaveBeenConfigured()
|
||||||
|
{
|
||||||
|
$container = $this->getMockBuilder('Symfony\Component\DependencyInjection\ContainerInterface')->getMock();
|
||||||
|
$extension = new DependencyInjectionExtension($container, array(), array(), array());
|
||||||
|
|
||||||
|
$this->assertNull($extension->getTypeGuesser());
|
||||||
|
}
|
||||||
|
|
||||||
|
private function createFormTypeExtensionMock($extendedType)
|
||||||
|
{
|
||||||
|
$extension = $this->getMockBuilder('Symfony\Component\Form\FormTypeExtensionInterface')->getMock();
|
||||||
|
$extension->expects($this->any())->method('getExtendedType')->willReturn($extendedType);
|
||||||
|
|
||||||
|
return $extension;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -517,22 +517,20 @@ class SimpleFormTest extends AbstractFormTest
|
|||||||
$this->assertSame('default', $form->getData());
|
$this->assertSame('default', $form->getData());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testPresSetDataChangesDataIfDataIsLocked()
|
public function testPreSetDataChangesDataIfDataIsLocked()
|
||||||
{
|
{
|
||||||
$config = new FormConfigBuilder('name', null, $this->dispatcher);
|
$config = new FormConfigBuilder('name', null, $this->dispatcher);
|
||||||
$config
|
$config
|
||||||
->setData('default')
|
->setData('default')
|
||||||
->setDataLocked(true)
|
->setDataLocked(true)
|
||||||
->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
|
->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
|
||||||
$event->setData('foobar');
|
$event->setData('foobar');
|
||||||
});
|
});
|
||||||
$form = new Form($config);
|
$form = new Form($config);
|
||||||
|
|
||||||
$form->submit(false);
|
|
||||||
|
|
||||||
$this->assertTrue($form->isValid());
|
|
||||||
|
|
||||||
$this->assertSame('foobar', $form->getData());
|
$this->assertSame('foobar', $form->getData());
|
||||||
|
$this->assertSame('foobar', $form->getNormData());
|
||||||
|
$this->assertSame('foobar', $form->getViewData());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testSubmitConvertsEmptyToNullIfNoTransformer()
|
public function testSubmitConvertsEmptyToNullIfNoTransformer()
|
||||||
|
Reference in New Issue
Block a user