public function testGeneratesCorrectRouteReference() { $content = $this->getCompleteContent(); $routeReference = new RouteReference(ContentDownloadRouteReferenceListener::ROUTE_NAME, [ContentDownloadRouteReferenceListener::OPT_CONTENT => $content, ContentDownloadRouteReferenceListener::OPT_FIELD_IDENTIFIER => 'file']); $event = new RouteReferenceGenerationEvent($routeReference, new Request()); $eventListener = $this->getListener(); $this->translationHelperMock->expects($this->once())->method('getTranslatedField')->will($this->returnValue($content->getField('file', 'eng-GB'))); $eventListener->onRouteReferenceGeneration($event); self::assertEquals('42', $routeReference->get(ContentDownloadRouteReferenceListener::OPT_CONTENT_ID)); self::assertEquals('file', $routeReference->get(ContentDownloadRouteReferenceListener::OPT_FIELD_IDENTIFIER)); self::assertEquals('Test-file.pdf', $routeReference->get(ContentDownloadRouteReferenceListener::OPT_DOWNLOAD_NAME)); }
public function testIsFieldNotEmpty() { $contentTypeId = 123; $contentInfo = new ContentInfo(array('contentTypeId' => $contentTypeId)); $content = $this->getMock('eZ\\Publish\\API\\Repository\\Values\\Content\\Content'); $content->expects($this->any())->method('__get')->with('contentInfo')->will($this->returnValue($contentInfo)); $fieldDefIdentifier = 'my_field_definition'; $textLineFT = new TextLineType(); $nonEmptyValue = new Value('Vive le sucre !!!'); $emptyField = new Field(array('fieldDefIdentifier' => 'ezstring', 'value' => $nonEmptyValue)); $contentType = $this->getMockForAbstractClass('eZ\\Publish\\API\\Repository\\Values\\ContentType\\ContentType'); $fieldDefinition = $this->getMockBuilder('eZ\\Publish\\API\\Repository\\Values\\ContentType\\FieldDefinition')->setConstructorArgs(array(array('fieldTypeIdentifier' => 'ezstring')))->getMockForAbstractClass(); $contentType->expects($this->once())->method('getFieldDefinition')->with($fieldDefIdentifier)->will($this->returnValue($fieldDefinition)); $this->contentTypeServiceMock->expects($this->once())->method('loadContentType')->with($contentTypeId)->will($this->returnValue($contentType)); $this->translationHelper->expects($this->once())->method('getTranslatedField')->with($content, $fieldDefIdentifier)->will($this->returnValue($emptyField)); $this->fieldTypeServiceMock->expects($this->any())->method('getFieldType')->with('ezstring')->will($this->returnValue($textLineFT)); $this->assertFalse($this->fieldHelper->isFieldEmpty($content, $fieldDefIdentifier)); }