public function testConfigureOptions() { /* @var $resolver \PHPUnit_Framework_MockObject_MockObject|OptionsResolver */ $resolver = $this->getMock('Symfony\\Component\\OptionsResolver\\OptionsResolver'); $resolver->expects($this->once())->method('setDefaults')->with($this->callback(function (array $options) { $this->assertArrayHasKey('data_class', $options); $this->assertArrayHasKey('compact_units', $options); $this->assertArrayHasKey('intention', $options); $this->assertArrayHasKey('extra_fields_message', $options); return true; })); $this->formType->configureOptions($resolver); }
/** * @param RequestProductItem $inputData * @param array $expectedData * * @dataProvider preSetDataProvider */ public function testPreSetData(RequestProductItem $inputData = null, array $expectedData = []) { $unitCode = $inputData ? $inputData->getProductUnitCode() : ''; $this->translator->expects($expectedData['empty_value'] ? $this->once() : $this->never())->method('trans')->with($expectedData['empty_value'], ['{title}' => $unitCode])->will($this->returnValue($expectedData['empty_value'])); $form = $this->factory->create($this->formType); $this->formType->preSetData(new FormEvent($form, $inputData)); $this->assertTrue($form->has('productUnit')); $config = $form->get('productUnit')->getConfig(); $this->assertEquals(ProductUnitSelectionType::NAME, $config->getType()->getName()); $options = $form->get('productUnit')->getConfig()->getOptions(); foreach ($expectedData as $key => $value) { $this->assertEquals($value, $options[$key], $key); } }
/** * @param TranslatorInterface $translator * @return RequestProductItemType */ protected function prepareRequestProductItemType(TranslatorInterface $translator) { $requestProductItemType = new RequestProductItemType($translator); $requestProductItemType->setDataClass('OroB2B\\Bundle\\RFPBundle\\Entity\\RequestProductItem'); return $requestProductItemType; }
/** * @return RequestProductItemType */ protected function prepareRequestProductItemType() { $requestProductItemType = new RequestProductItemType(); $requestProductItemType->setDataClass('OroB2B\\Bundle\\RFPBundle\\Entity\\RequestProductItem'); return $requestProductItemType; }