From 7f304d03aa07a73f3ed81f9f35e82401d7fc17da Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 28 May 2025 00:51:49 +0200 Subject: [PATCH] tests: Check encoding was preserved in `testHtmlLang` The fix introduced in efbbc86df9716a3ab1ed8a351d9e8316f3a2aab0 alongside this test also manipulates `meta[charset]` but we were not checking if it does not break encoding. --- tests/ReadabilityTest.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tests/ReadabilityTest.php b/tests/ReadabilityTest.php index fc9f6d5..0d753ab 100644 --- a/tests/ReadabilityTest.php +++ b/tests/ReadabilityTest.php @@ -493,21 +493,21 @@ class ReadabilityTest extends \PHPUnit\Framework\TestCase { return [ 'meta' => [ - '
' . str_repeat('

This is the awesome content :)

', 7) . '
', + '
' . str_repeat('

Tous les êtres humains naissent libres et égaux en dignité et en droits. Ils sont doués de raison et de conscience et doivent agir les uns envers les autres dans un esprit de fraternité.

', 7) . '
', 'fr', ], 'head' => [ - 'Foo
' . str_repeat('

This is the awesome content :)

', 7) . '
', + 'Foo
' . str_repeat('

Tous les êtres humains naissent libres et égaux en dignité et en droits. Ils sont doués de raison et de conscience et doivent agir les uns envers les autres dans un esprit de fraternité.

', 7) . '
', 'fr', ], 'headless' => [ - '
' . str_repeat('

This is the awesome content :)

', 7) . '
', + '
' . str_repeat('

Tous les êtres humains naissent libres et égaux en dignité et en droits. Ils sont doués de raison et de conscience et doivent agir les uns envers les autres dans un esprit de fraternité.

', 7) . '
', 'fr', // tidy would add tag. false, ], 'fragment' => [ - '
' . str_repeat('

This is the awesome content :)

', 7) . '
', + '
' . str_repeat('

Tous les êtres humains naissent libres et égaux en dignité et en droits. Ils sont doués de raison et de conscience et doivent agir les uns envers les autres dans un esprit de fraternité.

', 7) . '
', '', // tidy would add . false, @@ -526,6 +526,8 @@ class ReadabilityTest extends \PHPUnit\Framework\TestCase $this->assertTrue($res); $this->assertInstanceOf(\DOMDocument::class, $readability->dom); $this->assertSame($lang, $readability->dom->documentElement->getAttribute('lang')); + $this->assertInstanceOf('Readability\JSLikeHTMLElement', $readability->getContent()); + $this->assertStringContainsString('êtres', $readability->getContent()->getInnerHtml()); } private function getReadability($html, $url = null, $parser = 'libxml', $useTidy = true)