Contao\CoreBundle\Test\Contao\ImageTest::testExecuteResizeSvg PHP Method

testExecuteResizeSvg() public method

Tests resizing an SVG image.
    public function testExecuteResizeSvg()
    {
        file_put_contents(self::$rootDir . '/dummy.svg', '<?xml version="1.0" encoding="utf-8"?>
            <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
            <svg
                version="1.1"
                xmlns="http://www.w3.org/2000/svg"
                width="400px"
                height="200px"
                viewBox="100 100 400 200"
            ></svg>');
        $file = new \File('dummy.svg');
        $imageObj = new Image($file);
        $imageObj->setTargetWidth(100)->setTargetHeight(100);
        $imageObj->executeResize();
        $resultFile = new \File($imageObj->getResizedPath());
        $this->assertEquals(100, $resultFile->width);
        $this->assertEquals(100, $resultFile->height);
        $doc = new \DOMDocument();
        $doc->loadXML($resultFile->getContent());
        $this->assertEquals('100 100 400 200', $doc->documentElement->firstChild->getAttribute('viewBox'));
        $this->assertEquals('-50', $doc->documentElement->firstChild->getAttribute('x'));
        $this->assertEquals('0', $doc->documentElement->firstChild->getAttribute('y'));
        $this->assertEquals('200', $doc->documentElement->firstChild->getAttribute('width'));
        $this->assertEquals('100', $doc->documentElement->firstChild->getAttribute('height'));
    }