/** * @test */ public function canRegisterFormInstanceForTable() { $table = 'this_table_does_not_exist'; $form = Form::create(); Core::registerFormForTable($table, $form); $forms = Core::getRegisteredFormsForTables(); $this->assertArrayHasKey($table, $forms); $returnedForm = Core::getRegisteredFormForTable($table); $incorrectReturnedForm = Core::getRegisteredFormForTable($table . 'badname'); $this->assertSame($form, $returnedForm); $this->assertNull($incorrectReturnedForm); }
/** * @test */ public function canCreateTcaFromFluxForm() { $table = 'this_table_does_not_exist'; $field = 'input'; $form = Form::create(); $form->setExtensionName('FluidTYPO3.Flux'); $form->createField('Input', $field); $form->setOption('labels', array('title')); Core::registerFormForTable($table, $form); $object = GeneralUtility::getUserObj('FluidTYPO3\\Flux\\Backend\\TableConfigurationPostProcessor'); $object->processData(); $this->assertArrayHasKey($table, $GLOBALS['TCA']); $this->assertArrayHasKey($field, $GLOBALS['TCA'][$table]['columns']); $this->assertContains($field, $GLOBALS['TCA'][$table]['interface']['showRecordFieldList']); $this->assertContains($field, $GLOBALS['TCA'][$table]['types'][0]['showitem']); $this->assertEquals($GLOBALS['TCA'][$table]['ctrl']['label'], 'title'); $this->assertContains('flux.this_table_does_not_exist', $GLOBALS['TCA'][$table]['ctrl']['title']); }
/** * @test */ public function registerFormForTableSetsExtensionNameFromExtensionKeyGlobal() { $GLOBALS['_EXTKEY'] = 'test'; $form = $this->getMock('FluidTYPO3\\Flux\\Form', array('setExtensionName')); $form->expects($this->once())->method('setExtensionName')->with('Test'); Core::registerFormForTable('foobar', $form); unset($GLOBALS['_EXTKEY']); }