From 06ef0932d23c29c4cbd627d61dbfcfabc66ae2a8 Mon Sep 17 00:00:00 2001 From: Joshua Ramon Enslin Date: Sat, 31 Jan 2026 14:30:25 +0100 Subject: [PATCH] Make link checker in MD_STD_RSS_TEST non-final --- src/testing/MD_STD_RSS_TEST.php | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/testing/MD_STD_RSS_TEST.php b/src/testing/MD_STD_RSS_TEST.php index e40a7d7..29a8e3e 100644 --- a/src/testing/MD_STD_RSS_TEST.php +++ b/src/testing/MD_STD_RSS_TEST.php @@ -25,9 +25,22 @@ abstract class MD_STD_RSS_TEST extends TestCase { $domDoc = new DomDocument(); self::assertTrue($domDoc->loadXML($this->feed)); - self::assertTrue($domDoc->schemaValidate(__DIR__ . "/../../assets/xsd/Rss2.xsd")); + + // Don't just validate, but validate after ignoring warning on + // the existence of a non-specified element. + libxml_use_internal_errors(true); + $domDoc->schemaValidate(__DIR__ . "/../../assets/xsd/Rss2.xsd"); + $errors = libxml_get_errors(); unset($domDoc); + foreach ($errors as $e) { + + if (str_contains((string)$e->message, '\'updated\': This element is not expected')) { + continue; + } + throw new Exception($e->message); + } + } /** @@ -35,7 +48,7 @@ abstract class MD_STD_RSS_TEST extends TestCase { * * @return void */ - final public function testRssFeedLinksAndEnclosure() { + public function testRssFeedLinksAndEnclosure() { if (!($xmlData = simplexml_load_string($this->feed))) { throw new Exception("Failed to load RSS feed string to SimpleXML element");