/** * @test */ public function hiddenFieldsContainDataOfBoundPropertyIfNoValueArgumentIsSetAndNoResourceHasBeenUploaded() { $mockResourceUuid = '79ecda60-1a27-69ca-17bf-a5d9e80e6c39'; /** @var Result|\PHPUnit_Framework_MockObject_MockObject $mockValidationResults */ $mockValidationResults = $this->getMockBuilder(Result::class)->disableOriginalConstructor()->getMock(); $mockValidationResults->expects($this->atLeastOnce())->method('hasErrors')->will($this->returnValue(false)); $this->request->expects($this->atLeastOnce())->method('getInternalArgument')->with('__submittedArgumentValidationResults')->will($this->returnValue($mockValidationResults)); /** @var PersistentResource|\PHPUnit_Framework_MockObject_MockObject $mockPropertyResource */ $mockPropertyResource = $this->getMockBuilder(PersistentResource::class)->disableOriginalConstructor()->getMock(); $mockFormObject = array('foo' => $mockPropertyResource); $this->viewHelperVariableContainerData[FormViewHelper::class] = array('formObjectName' => 'someObject', 'formObject' => $mockFormObject); $mockPersistenceManager = $this->createMock(PersistenceManagerInterface::class); $mockPersistenceManager->expects($this->once())->method('getIdentifierByObject')->with($this->identicalTo($mockPropertyResource))->will($this->returnValue($mockResourceUuid)); $this->inject($this->viewHelper, 'persistenceManager', $mockPersistenceManager); $this->viewHelper->setArguments(array('property' => 'foo')); $expectedResult = '<input type="hidden" name="someObject[foo][originallySubmittedResource][__identity]" value="' . $mockResourceUuid . '" />'; $actualResult = $this->viewHelper->render(); $this->assertSame($expectedResult, $actualResult); }