-
-
Notifications
You must be signed in to change notification settings - Fork 54
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* 5.4: [Mailer] Include all transports' debug messages in RoundRobin transport exception [FrameworkBundle] fix: fix help message Use relative timestamps [Cache] Fix dealing with ext-redis' multi/exec returning a bool [Messenger][Amqp] Added missing rpc_timeout option [Serializer] Prevent GetSetMethodNormalizer from creating invalid magic method call [HttpFoundation] Fix dumping array cookies [WebProfilerBundle] Fix dump header not being displayed TraceableHttpClient: increase decorator's priority Use static methods inside data providers [FrameworkBundle] Allow configuring `framework.exceptions` with a config builder bug #48313 [Mime] Fix MessagePart serialization [ErrorHandler][DebugClassLoader] Fix some new return types support Fix getting the name of closures on PHP 8.1.11+ [Translator] Fix typo "internal" / "interval" fix dumping top-level tagged values
- Loading branch information
Showing
3 changed files
with
105 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
<?php | ||
|
||
/* | ||
* This file is part of the Symfony package. | ||
* | ||
* (c) Fabien Potencier <fabien@symfony.com> | ||
* | ||
* For the full copyright and license information, please view the LICENSE | ||
* file that was distributed with this source code. | ||
*/ | ||
|
||
namespace Symfony\Bundle\WebProfilerBundle\Tests\Twig; | ||
|
||
use PHPUnit\Framework\TestCase; | ||
use Symfony\Bundle\WebProfilerBundle\Twig\WebProfilerExtension; | ||
use Symfony\Component\VarDumper\Cloner\VarCloner; | ||
use Twig\Environment; | ||
use Twig\Extension\CoreExtension; | ||
use Twig\Extension\EscaperExtension; | ||
|
||
class WebProfilerExtensionTest extends TestCase | ||
{ | ||
/** | ||
* @dataProvider provideMessages | ||
*/ | ||
public function testDumpHeaderIsDisplayed(string $message, array $context, bool $dump1HasHeader, bool $dump2HasHeader) | ||
{ | ||
class_exists(CoreExtension::class); // Load twig_convert_encoding() | ||
class_exists(EscaperExtension::class); // Load twig_escape_filter() | ||
|
||
$twigEnvironment = $this->mockTwigEnvironment(); | ||
$varCloner = new VarCloner(); | ||
|
||
$webProfilerExtension = new WebProfilerExtension(); | ||
|
||
$needle = 'window.Sfdump'; | ||
|
||
$dump1 = $webProfilerExtension->dumpLog($twigEnvironment, $message, $varCloner->cloneVar($context)); | ||
self::assertSame($dump1HasHeader, str_contains($dump1, $needle)); | ||
|
||
$dump2 = $webProfilerExtension->dumpData($twigEnvironment, $varCloner->cloneVar([])); | ||
self::assertSame($dump2HasHeader, str_contains($dump2, $needle)); | ||
} | ||
|
||
public function provideMessages(): iterable | ||
{ | ||
yield ['Some message', ['foo' => 'foo', 'bar' => 'bar'], false, true]; | ||
yield ['Some message {@see some text}', ['foo' => 'foo', 'bar' => 'bar'], false, true]; | ||
yield ['Some message {foo}', ['foo' => 'foo', 'bar' => 'bar'], true, false]; | ||
yield ['Some message {foo}', ['bar' => 'bar'], false, true]; | ||
} | ||
|
||
private function mockTwigEnvironment() | ||
{ | ||
$twigEnvironment = $this->createMock(Environment::class); | ||
|
||
$twigEnvironment->expects($this->any())->method('getCharset')->willReturn('UTF-8'); | ||
|
||
return $twigEnvironment; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters