如何使用 PHPUnit 测试 Symfony 中的字符引用?
How to test for character references in Symfony with PHPUnit?
我想测试这个由我的 PHP/Symfony 项目生成的非常简单的页面
<div>Simple ! Tranquille ! Excellent !</div>
(它是法语的,所以感叹号前需要
硬空格。)
我想到了一个同样简单的测试,例如
$this->assertSelectorTextContains('div', 'Simple ! Tranquille ! Excellent !');
会成功,但我失败了。
进一步查询得知
$texte = $crawler->filter("div")->first();
$this->assertEquals($texte->text(), "Simple ! Tranquille ! Excellent !");
returns
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'Simple ! Tranquille ! Excellent !'
+'Simple ! Tranquille ! Excellent !'
那么,我如何帮助 assertSelectorTextContains()
(以及更普遍的 PHPUnit)理解这两个字符串实际上是相同的? (或至少相当?)
更改我的搜索条件得到了答案,html_entity_decode()
:
$this->assertSelectorTextContains('div', html_entity_decode('Simple ! Tranquille ! Excellent !'));
完成任务。
我想测试这个由我的 PHP/Symfony 项目生成的非常简单的页面
<div>Simple ! Tranquille ! Excellent !</div>
(它是法语的,所以感叹号前需要
硬空格。)
我想到了一个同样简单的测试,例如
$this->assertSelectorTextContains('div', 'Simple ! Tranquille ! Excellent !');
会成功,但我失败了。
进一步查询得知
$texte = $crawler->filter("div")->first();
$this->assertEquals($texte->text(), "Simple ! Tranquille ! Excellent !");
returns
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'Simple ! Tranquille ! Excellent !'
+'Simple ! Tranquille ! Excellent !'
那么,我如何帮助 assertSelectorTextContains()
(以及更普遍的 PHPUnit)理解这两个字符串实际上是相同的? (或至少相当?)
更改我的搜索条件得到了答案,html_entity_decode()
:
$this->assertSelectorTextContains('div', html_entity_decode('Simple ! Tranquille ! Excellent !'));
完成任务。