From 6c3e391e88c9869a3bc1cd5e2e940b77da18baa3 Mon Sep 17 00:00:00 2001 From: wasinger Date: Fri, 28 Jun 2019 15:22:11 +0200 Subject: [PATCH] Bugfix: setText() should convert special chars. Closes #34. --- Tests/HtmlPageCrawlerTest.php | 8 ++++++++ src/HtmlPageCrawler.php | 1 + 2 files changed, 9 insertions(+) diff --git a/Tests/HtmlPageCrawlerTest.php b/Tests/HtmlPageCrawlerTest.php index 2589d6e..2b1191a 100644 --- a/Tests/HtmlPageCrawlerTest.php +++ b/Tests/HtmlPageCrawlerTest.php @@ -693,6 +693,14 @@ public function testText() $this->assertEquals('jklojklo', $c->text()); } + public function testSetText() + { + $c = HtmlPageCrawler::create('
"
'); + $this->assertEquals('"', $c->text()); + $c->setText('&'); + $this->assertEquals('&', $c->text()); + } + public function testMagicGet() { // $crawler->length should give us the number of nodes in the crawler diff --git a/src/HtmlPageCrawler.php b/src/HtmlPageCrawler.php index 5ad5baf..eeb6f1c 100644 --- a/src/HtmlPageCrawler.php +++ b/src/HtmlPageCrawler.php @@ -735,6 +735,7 @@ public function getCombinedText() */ public function setText($text) { + $text = htmlspecialchars($text); foreach ($this as $node) { /** @var \DOMNode $node */ $node->nodeValue = $text;