public function testRenderVersion()
{
$version = 'test';
$collection = $this->getMockBuilder(\Browscap\Data\DataCollection::class)->disableOriginalConstructor()->setMethods(['getGenerationDate'])->getMock();
$collection->expects(self::once())->method('getGenerationDate')->will(self::returnValue(new \DateTime()));
$mockFilter = $this->getMockBuilder(\Browscap\Filter\FullFilter::class)->disableOriginalConstructor()->setMethods(['isOutput', 'getType'])->getMock();
$mockFilter->expects(self::never())->method('isOutput')->will(self::returnValue(true));
$mockFilter->expects(self::once())->method('getType')->will(self::returnValue('Test'));
$mockFormatter = $this->getMockBuilder(\Browscap\Formatter\XmlFormatter::class)->disableOriginalConstructor()->setMethods(['getType'])->getMock();
$mockFormatter->expects(self::once())->method('getType')->will(self::returnValue('test'));
$logger = $this->createMock(\Monolog\Logger::class);
$mockWriter = $this->getMockBuilder(\Browscap\Writer\CsvWriter::class)->setMethods(['getFilter', 'getFormatter', 'getLogger'])->setConstructorArgs([$this->file])->getMock();
$mockWriter->expects(self::once())->method('getFilter')->will(self::returnValue($mockFilter));
$mockWriter->expects(self::once())->method('getFormatter')->will(self::returnValue($mockFormatter));
$mockWriter->expects(self::once())->method('getLogger')->will(self::returnValue($logger));
self::assertSame($this->object, $this->object->addWriter($mockWriter));
self::assertSame($this->object, $this->object->renderVersion($version, $collection));
self::assertSame($this->object, $this->object->close());
}