Browscap\Writer\XmlWriter::setFilter PHP Method

setFilter() public method

public setFilter ( Browscap\Filter\FilterInterface $filter ) : Browscap\Writer\WriterInterface
$filter Browscap\Filter\FilterInterface
return Browscap\Writer\WriterInterface
    public function setFilter(FilterInterface $filter)
    {
        $this->type = $filter;
        $this->outputProperties = [];
        return $this;
    }

Usage Example

Example #1
0
 /**
  * tests rendering the body of one section
  *
  * @group writer
  * @group sourcetest
  */
 public function testRenderSectionBodyIfNotSilentWithDefaultPropertiesAsParent()
 {
     $this->object->setSilent(false);
     $section = array('Parent' => 'DefaultProperties', 'Comment' => '1', 'Win16' => true, 'Platform' => 'bcd');
     $sections = array('X2' => $section);
     $expectedAgents = array(0 => array('properties' => array('Comment' => '12', 'Win16' => true, 'Platform' => 'bcd')));
     $mockDivision = $this->getMock('\\Browscap\\Data\\Division', array('getUserAgents'), array(), '', false);
     $mockDivision->expects(self::once())->method('getUserAgents')->will(self::returnValue($expectedAgents));
     $mockCollection = $this->getMock('\\Browscap\\Data\\DataCollection', array('getDefaultProperties'), array(), '', false);
     $mockCollection->expects(self::once())->method('getDefaultProperties')->will(self::returnValue($mockDivision));
     $mockFormatter = $this->getMock('\\Browscap\\Formatter\\XmlFormatter', array('formatPropertyName'), array(), '', false);
     $mockFormatter->expects(self::exactly(3))->method('formatPropertyName')->will(self::returnArgument(0));
     self::assertSame($this->object, $this->object->setFormatter($mockFormatter));
     $map = array(array('Comment', $this->object, true), array('Win16', $this->object, false), array('Platform', $this->object, true), array('Parent', $this->object, true));
     $mockFilter = $this->getMock('\\Browscap\\Filter\\StandardFilter', array('isOutputProperty'), array(), '', false);
     $mockFilter->expects(self::exactly(4))->method('isOutputProperty')->will(self::returnValueMap($map));
     self::assertSame($this->object, $this->object->setFilter($mockFilter));
     self::assertSame($this->object, $this->object->renderSectionBody($section, $mockCollection, $sections));
     self::assertSame('<item name="Parent" value="DefaultProperties"/>' . PHP_EOL . '<item name="Comment" value="1"/>' . PHP_EOL . '<item name="Platform" value="bcd"/>' . PHP_EOL, file_get_contents($this->file));
 }
All Usage Examples Of Browscap\Writer\XmlWriter::setFilter