Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[WebProfilerBundle] Fix the icon for the Cache panel #23160

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 8 commits into from
Closed
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 33 additions & 0 deletions src/Symfony/Bundle/WebProfilerBundle/Tests/Resources/IconTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<?php

/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <[email protected]>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/

namespace Symfony\Bundle\WebProfilerBundle\Tests\Resources;

use PHPUnit\Framework\TestCase;

class IconTest extends TestCase
{
/**
* @dataProvider provideIconFilePaths
*/
public function testIconFileContents($iconFilePath)
{
$this->assertRegExp('/<svg version="1.1" xmlns="http:\/\/www.w3.org\/2000\/svg" x="0px" y="0px" width="\d+" height="\d+" viewBox="0 0 \d+ \d+" enable-background="new 0 0 \d+ \d+" xml:space="preserve">.*<\/svg>/s', file_get_contents($iconFilePath), sprintf('The SVG metadata of the %s icon is different than expected (use the same as the other icons).', $iconFilePath));
Copy link
Contributor

@ro0NL ro0NL Jun 13, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what about using a different delimiter ({..} or my favorite ~...~ :)) so we dont need to escape / which occurs a few times :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh and please escape . :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hey wouldn't a assertStringStartsWith be easier at this place?
i mean we only want to check the head of the file

Copy link
Contributor

@ro0NL ro0NL Jun 14, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if we test this, lets test for a closing </svg> as well :) like currently. It doesnt hurt.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Hanmac yes, that would be easier and I used that at first ... but some icons have different sizes, so we can't use it :(

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@javiereguiluz: okay now i understand why you use regexp.
hm but if we/you guys want to do that you could check if the width and hight does correspond to the viewBox

i was just thinking that we only need to check the head of the svg
hm should we also test if the svg is valid xml?

PS: we could also add xml declaration like this

<?xml version="1.0" encoding="utf-8"?>

or can't we do that because its embedded?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't have the XML header in the icons and they look OK, so I guess it's optional to add it.

}

public function provideIconFilePaths()
{
return array_map(
function ($filePath) { return (array) $filePath; },
glob(__DIR__.'/../../Resources/views/Icon/*.svg')
);
}
}