Registers automatic Form instance building and use as TCA for a model object class/table.
public static registerAutoFormForModelObjectClassName ( string $className ) : void | ||
$className | string | |
Résultat | void |
/** * @test */ public function canRegisterAutoFormInstanceForModelClassName() { $class = 'Tx_Flux_Domain_Model_Fake'; Core::registerAutoFormForModelObjectClassName($class); $registered = Core::getRegisteredFormForModelObjectClass($class); $this->assertEquals(NULL, $registered); }
/** * @test */ public function triggersDomainModelAnalysisWhenFormsAreRegistered() { $class = 'FluidTYPO3\\Flux\\Domain\\Model\\Dummy'; $form = Form::create(); Core::registerAutoFormForModelObjectClassName($class); $object = GeneralUtility::getUserObj('FluidTYPO3\\Flux\\Backend\\TableConfigurationPostProcessor'); $object->processData(); Core::registerFormForModelObjectClassName($class, $form); $object->processData(); }
/** * @test */ public function testResolveDomainFormClassInstancesFromPackages() { $modelClassName = 'FluidTYPO3\\Flux\\Tests\\Fixtures\\Classes\\Domain\\Model\\Dummy'; Core::registerAutoFormForModelObjectClassName($modelClassName); $classNames = array('FluidTYPO3\\Flux\\Tests\\Fixtures\\Classes\\Domain\\Form\\DummyForm'); $resolver = $this->getMock('FluidTYPO3\\Flux\\Helper\\Resolver', array('resolveClassNamesInPackageSubNamespace')); $resolver->expects($this->once())->method('resolveClassNamesInPackageSubNamespace')->willReturn($classNames); $result = $resolver->resolveDomainFormClassInstancesFromPackages(array('foobar')); $this->assertInstanceOf($classNames[0], $result[$modelClassName]); }
/** * @test */ public function triggersDomainModelAnalysisWhenFormsAreRegistered() { $class = 'FluidTYPO3\\Flux\\Tests\\Fixtures\\Classes\\Domain\\Model\\Dummy'; $form = Form::create(); $form->setExtensionName('FluidTYPO3.Flux'); Core::registerAutoFormForModelObjectClassName($class); $object = GeneralUtility::getUserObj('FluidTYPO3\\Flux\\Backend\\TableConfigurationPostProcessor'); $object->processData(); Core::registerFormForModelObjectClassName($class, $form); $result = $object->processData(); $this->assertEmpty($result); }
/** * @test */ public function triggersDomainModelAnalysisWhenFormsAreRegistered() { $class = 'FluidTYPO3\\Flux\\Domain\\Model\\Dummy'; if ('6.2' !== substr(TYPO3_version, 0, 3)) { // note: mock contains a DateTime which has a constructor argument which ObjectManager tries to reflect; // causing an ReflectionException. Problem is suppressed on 6.2 only, at the time of writing this comment. $this->setExpectedException('ReflectionException'); } $form = Form::create(); Core::registerAutoFormForModelObjectClassName($class); $object = GeneralUtility::getUserObj('FluidTYPO3\\Flux\\Backend\\TableConfigurationPostProcessor'); $object->processData(); Core::registerFormForModelObjectClassName($class, $form); $object->processData(); }