From: Viktor Szakats Date: Tue, 18 Nov 2025 18:10:53 +0000 (+0100) Subject: tests/data: mark non-XML-compliant files as such, xmllint the rest in CI X-Git-Tag: rc-8_18_0-1~235 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7f3731ce142c1d74023abad183cc8ce0fd527fab;p=thirdparty%2Fcurl.git tests/data: mark non-XML-compliant files as such, xmllint the rest in CI There are 58 non-compliant files. Mark them with the `notxml` keyword. Also include the compliant ones in the GHA/checksrc xmllint CI job. Also: - delete XML prolog from the 3 test data files that had them. - FILEFORMAT.md: document the `notxml` keyword. - FILEFORMAT.md: fix a typo. Follow-up to de49cc89abc917cb4f273ebea8c6fb584d097de2 #19470 Follow-up to f3095f0dbd7e842d4a72c0300ba4817a755c74f5 #19528 Follow-up to 87ba80a6df1dfd7ceaaa52352c9f23afff0ed513 Closes #19595 --- diff --git a/.github/scripts/pyspelling.words b/.github/scripts/pyspelling.words index f6a5405999..5c96701cd0 100644 --- a/.github/scripts/pyspelling.words +++ b/.github/scripts/pyspelling.words @@ -463,6 +463,7 @@ libWebSocket libz libzstd LineageOS +linter linux lldb ln @@ -981,6 +982,7 @@ Xbox XDG xdigit Xilinx +xmllint XP Xtensa XYZ diff --git a/.github/workflows/checksrc.yml b/.github/workflows/checksrc.yml index 9ed049c13f..6076617356 100644 --- a/.github/workflows/checksrc.yml +++ b/.github/workflows/checksrc.yml @@ -128,7 +128,11 @@ jobs: persist-credentials: false - name: 'check' - run: git grep -z -i -l -E '^<\?xml' | xargs -0 -r xmllint >/dev/null + run: | + { + git grep -z -i -l -E '^<\?xml' || true + git grep -z -L -F 'notxml' 'tests/data/test*' || true + } | xargs -0 -r xmllint >/dev/null miscchecks: name: 'misc checks' diff --git a/docs/tests/FILEFORMAT.md b/docs/tests/FILEFORMAT.md index c5c1bcfe90..7851e08e25 100644 --- a/docs/tests/FILEFORMAT.md +++ b/docs/tests/FILEFORMAT.md @@ -239,7 +239,7 @@ When running a unit test and the keywords include `unittest`, the `` section can be left empty to use the standard unit test tool name `unitN` where `N` is the test number. -The `text-ci` make target automatically skips test with the `flaky` keyword. +The `test-ci` make target automatically skips test with the `flaky` keyword. Tests that have strict timing dependencies have the `timing-dependent` keyword. These are intended to eventually be treated specially on CI builds which are @@ -248,6 +248,11 @@ often run on overloaded machines with unpredictable timing. Tests using non-7-bit-ASCII characters must provide them with `%hex[]` or similar. +In most cases test files comply with the XML format, and pass xmllint cleanly. +If the data file uses the `&` character, or has other, non-compliant content, +and making it XML-compliant is not possible or unpractical, use the `notxml` +keyword to exclude it from linter checks. + ## `` ### `` diff --git a/tests/data/test1011 b/tests/data/test1011 index f4de4df6a2..4f5111dea2 100644 --- a/tests/data/test1011 +++ b/tests/data/test1011 @@ -4,6 +4,7 @@ HTTP HTTP POST followlocation +notxml # diff --git a/tests/data/test1012 b/tests/data/test1012 index d15e10f28e..ef2d679bfc 100644 --- a/tests/data/test1012 +++ b/tests/data/test1012 @@ -4,6 +4,7 @@ HTTP HTTP POST followlocation +notxml # diff --git a/tests/data/test1015 b/tests/data/test1015 index 9f2a53d49a..4fe79c7b99 100644 --- a/tests/data/test1015 +++ b/tests/data/test1015 @@ -4,6 +4,7 @@ HTTP HTTP POST --data-urlencode +notxml diff --git a/tests/data/test1034 b/tests/data/test1034 index f503d97700..db0528a789 100644 --- a/tests/data/test1034 +++ b/tests/data/test1034 @@ -1,4 +1,3 @@ - diff --git a/tests/data/test1076 b/tests/data/test1076 index 8613a9a922..08eba396c5 100644 --- a/tests/data/test1076 +++ b/tests/data/test1076 @@ -4,6 +4,7 @@ HTTP HTTP POST followlocation +notxml # diff --git a/tests/data/test1105 b/tests/data/test1105 index d23b92f560..ea42efb6a9 100644 --- a/tests/data/test1105 +++ b/tests/data/test1105 @@ -5,6 +5,7 @@ HTTP HTTP POST cookies cookiejar +notxml diff --git a/tests/data/test1138 b/tests/data/test1138 index 7579fcd21d..a3e65d0e0f 100644 --- a/tests/data/test1138 +++ b/tests/data/test1138 @@ -4,6 +4,7 @@ HTTP HTTP GET followlocation +notxml # diff --git a/tests/data/test1158 b/tests/data/test1158 index c2a7330fe6..a791c6fd4c 100644 --- a/tests/data/test1158 +++ b/tests/data/test1158 @@ -3,6 +3,7 @@ HTTP HTTP FORMPOST +notxml # Server-side diff --git a/tests/data/test1160 b/tests/data/test1160 index 6b7c904ceb..9eca524c65 100644 --- a/tests/data/test1160 +++ b/tests/data/test1160 @@ -1,4 +1,3 @@ - diff --git a/tests/data/test1186 b/tests/data/test1186 index f9edac8f36..7a8b69486b 100644 --- a/tests/data/test1186 +++ b/tests/data/test1186 @@ -3,6 +3,7 @@ HTTP HTTP FORMPOST +notxml # Server-side diff --git a/tests/data/test1189 b/tests/data/test1189 index 0fb354a88e..b5574cef50 100644 --- a/tests/data/test1189 +++ b/tests/data/test1189 @@ -3,6 +3,7 @@ HTTP HTTP FORMPOST +notxml # Server-side diff --git a/tests/data/test1221 b/tests/data/test1221 index 1bfc61bdee..12a82be1ee 100644 --- a/tests/data/test1221 +++ b/tests/data/test1221 @@ -5,6 +5,7 @@ HTTP HTTP POST --data-urlencode --url-query +notxml diff --git a/tests/data/test1332 b/tests/data/test1332 index c852d84b5d..f1b596e310 100644 --- a/tests/data/test1332 +++ b/tests/data/test1332 @@ -5,6 +5,7 @@ HTTP HTTP POST followlocation +notxml # diff --git a/tests/data/test1400 b/tests/data/test1400 index 5ed32360d9..1d2ece68e4 100644 --- a/tests/data/test1400 +++ b/tests/data/test1400 @@ -4,6 +4,7 @@ HTTP HTTP GET --libcurl +notxml diff --git a/tests/data/test1401 b/tests/data/test1401 index a24c81cb94..31259e079f 100644 --- a/tests/data/test1401 +++ b/tests/data/test1401 @@ -7,6 +7,7 @@ HTTP Basic auth HTTP set cookie cookies --libcurl +notxml diff --git a/tests/data/test1402 b/tests/data/test1402 index 9c0330532d..c256611b0d 100644 --- a/tests/data/test1402 +++ b/tests/data/test1402 @@ -4,6 +4,7 @@ HTTP HTTP POST --libcurl +notxml diff --git a/tests/data/test1403 b/tests/data/test1403 index 9632816894..2a2f3617cd 100644 --- a/tests/data/test1403 +++ b/tests/data/test1403 @@ -4,6 +4,7 @@ HTTP HTTP GET --libcurl +notxml diff --git a/tests/data/test1404 b/tests/data/test1404 index 7ae7d8b501..732c2678a6 100644 --- a/tests/data/test1404 +++ b/tests/data/test1404 @@ -6,6 +6,7 @@ HTTP HTTP FORMPOST HTTP file upload --libcurl +notxml diff --git a/tests/data/test1405 b/tests/data/test1405 index 1860f408c8..a71a522cfa 100644 --- a/tests/data/test1405 +++ b/tests/data/test1405 @@ -6,6 +6,7 @@ FTP post-quote pre-quote --libcurl +notxml # Server-side diff --git a/tests/data/test1406 b/tests/data/test1406 index 492b5b8b31..5f935d2d07 100644 --- a/tests/data/test1406 +++ b/tests/data/test1406 @@ -5,6 +5,7 @@ SMTP --libcurl +notxml diff --git a/tests/data/test1407 b/tests/data/test1407 index fad62abd06..9ab40cef40 100644 --- a/tests/data/test1407 +++ b/tests/data/test1407 @@ -6,6 +6,7 @@ POP3 Clear Text LIST --libcurl +notxml diff --git a/tests/data/test1420 b/tests/data/test1420 index dbd671b1aa..4a6be82437 100644 --- a/tests/data/test1420 +++ b/tests/data/test1420 @@ -6,6 +6,7 @@ IMAP Clear Text FETCH --libcurl +notxml diff --git a/tests/data/test1445 b/tests/data/test1445 index f52be8f725..705162be2d 100644 --- a/tests/data/test1445 +++ b/tests/data/test1445 @@ -3,6 +3,7 @@ FILE --remote-time +notxml diff --git a/tests/data/test1446 b/tests/data/test1446 index 8babaea5d5..448eefbc1f 100644 --- a/tests/data/test1446 +++ b/tests/data/test1446 @@ -3,6 +3,7 @@ SFTP --remote-time +notxml diff --git a/tests/data/test1461 b/tests/data/test1461 index 4ee109a122..f45d0dcd12 100644 --- a/tests/data/test1461 +++ b/tests/data/test1461 @@ -2,6 +2,7 @@ --help +notxml diff --git a/tests/data/test1463 b/tests/data/test1463 index 55174be508..e67bdfdae4 100644 --- a/tests/data/test1463 +++ b/tests/data/test1463 @@ -3,6 +3,7 @@ FILE --help +notxml diff --git a/tests/data/test1464 b/tests/data/test1464 index c005b5afca..4a4f6b3633 100644 --- a/tests/data/test1464 +++ b/tests/data/test1464 @@ -3,6 +3,7 @@ FILE --help +notxml diff --git a/tests/data/test1465 b/tests/data/test1465 index bef59be3c0..686c28b0ba 100644 --- a/tests/data/test1465 +++ b/tests/data/test1465 @@ -4,6 +4,7 @@ HTTP HTTP POST --libcurl +notxml diff --git a/tests/data/test1481 b/tests/data/test1481 index 3121ae5369..209c3f87e0 100644 --- a/tests/data/test1481 +++ b/tests/data/test1481 @@ -4,6 +4,7 @@ HTTP HTTP GET --libcurl +notxml diff --git a/tests/data/test1506 b/tests/data/test1506 index 98af4b19fe..cd7654a0d8 100644 --- a/tests/data/test1506 +++ b/tests/data/test1506 @@ -4,6 +4,7 @@ HTTP multi verbose logs +notxml diff --git a/tests/data/test1510 b/tests/data/test1510 index c4fca7251a..febe7d76ea 100644 --- a/tests/data/test1510 +++ b/tests/data/test1510 @@ -4,6 +4,7 @@ HTTP verbose logs flaky +notxml diff --git a/tests/data/test1512 b/tests/data/test1512 index cb1d8f72f1..3798d7325b 100644 --- a/tests/data/test1512 +++ b/tests/data/test1512 @@ -3,6 +3,7 @@ HTTP GLOBAL DNS CACHE +notxml diff --git a/tests/data/test1524 b/tests/data/test1524 index 05433d47c2..fcfd9f4c00 100644 --- a/tests/data/test1524 +++ b/tests/data/test1524 @@ -4,6 +4,7 @@ HTTP HTTP PUT followlocation +notxml # diff --git a/tests/data/test1542 b/tests/data/test1542 index dad66aff3d..044fe518a4 100644 --- a/tests/data/test1542 +++ b/tests/data/test1542 @@ -6,6 +6,7 @@ connection reuse persistent connection CURLOPT_MAXLIFETIME_CONN verbose logs +notxml diff --git a/tests/data/test1598 b/tests/data/test1598 index a85c124692..f3143432ed 100644 --- a/tests/data/test1598 +++ b/tests/data/test1598 @@ -5,6 +5,7 @@ HTTP HTTP POST CURLOPT_HTTPTRAILER_FUNCTION CURLOPT_HTTPTRAILER_DATA +notxml diff --git a/tests/data/test163 b/tests/data/test163 index 14332c16c7..7a7406c136 100644 --- a/tests/data/test163 +++ b/tests/data/test163 @@ -3,6 +3,7 @@ HTTP HTTP POST +notxml diff --git a/tests/data/test1683 b/tests/data/test1683 index 66f41cea55..47d280cd14 100644 --- a/tests/data/test1683 +++ b/tests/data/test1683 @@ -4,6 +4,7 @@ HTTP HTTP GET --no-clobber +notxml diff --git a/tests/data/test1705 b/tests/data/test1705 index c85886b96a..dc21207860 100644 --- a/tests/data/test1705 +++ b/tests/data/test1705 @@ -4,6 +4,7 @@ script documentation managen +notxml diff --git a/tests/data/test1706 b/tests/data/test1706 index f821618d27..dd24365d05 100644 --- a/tests/data/test1706 +++ b/tests/data/test1706 @@ -4,6 +4,7 @@ script documentation managen +notxml diff --git a/tests/data/test1977 b/tests/data/test1977 index b8e2bb4f2b..d62ed337e6 100644 --- a/tests/data/test1977 +++ b/tests/data/test1977 @@ -3,6 +3,7 @@ CURLOPT_CURLU CURLINFO_EFFECTIVE_URL +notxml diff --git a/tests/data/test199 b/tests/data/test199 index 763e7bf49e..fc8a8e96a0 100644 --- a/tests/data/test199 +++ b/tests/data/test199 @@ -4,6 +4,7 @@ HTTP HTTP GET globbing +notxml # diff --git a/tests/data/test2402 b/tests/data/test2402 index 1903534dc8..ba3fcc85b4 100644 --- a/tests/data/test2402 +++ b/tests/data/test2402 @@ -5,6 +5,7 @@ HTTP HTTP/2 multi verbose logs +notxml diff --git a/tests/data/test2404 b/tests/data/test2404 index 1ed03968db..5034a15c3c 100644 --- a/tests/data/test2404 +++ b/tests/data/test2404 @@ -5,6 +5,7 @@ HTTP HTTP/2 multi verbose logs +notxml diff --git a/tests/data/test2502 b/tests/data/test2502 index ab460c29d5..627cfdccad 100644 --- a/tests/data/test2502 +++ b/tests/data/test2502 @@ -5,6 +5,7 @@ HTTP HTTP/3 multi verbose logs +notxml diff --git a/tests/data/test3 b/tests/data/test3 index 3f4b4ee9e2..50fdfeea48 100644 --- a/tests/data/test3 +++ b/tests/data/test3 @@ -4,6 +4,7 @@ HTTP HTTP POST HTTP Basic auth +notxml # diff --git a/tests/data/test32 b/tests/data/test32 index d02a541ae3..94b9531ca5 100644 --- a/tests/data/test32 +++ b/tests/data/test32 @@ -4,6 +4,7 @@ HTTP HTTP GET -G +notxml # diff --git a/tests/data/test320 b/tests/data/test320 index 00615e5d71..0967823d38 100644 --- a/tests/data/test320 +++ b/tests/data/test320 @@ -4,6 +4,7 @@ HTTPS HTTP GET TLS-SRP +notxml diff --git a/tests/data/test39 b/tests/data/test39 index 02a4659e09..b006254337 100644 --- a/tests/data/test39 +++ b/tests/data/test39 @@ -3,6 +3,7 @@ HTTP HTTP FORMPOST +notxml # Server-side diff --git a/tests/data/test40 b/tests/data/test40 index 959a7505dc..04efdbbc70 100644 --- a/tests/data/test40 +++ b/tests/data/test40 @@ -4,6 +4,7 @@ HTTP HTTP GET followlocation +notxml # diff --git a/tests/data/test439 b/tests/data/test439 index 2659f139e9..8529797242 100644 --- a/tests/data/test439 +++ b/tests/data/test439 @@ -3,6 +3,7 @@ HTTP aws-sigv4 +notxml diff --git a/tests/data/test446 b/tests/data/test446 index ceae26b7e7..eeb9366bb5 100644 --- a/tests/data/test446 +++ b/tests/data/test446 @@ -1,4 +1,3 @@ - diff --git a/tests/data/test45 b/tests/data/test45 index 54c41dec92..3d4df02f13 100644 --- a/tests/data/test45 +++ b/tests/data/test45 @@ -4,6 +4,7 @@ HTTP HTTP GET followlocation +notxml # Server-side diff --git a/tests/data/test48 b/tests/data/test48 index 564e8f3a74..c161ba5dca 100644 --- a/tests/data/test48 +++ b/tests/data/test48 @@ -4,6 +4,7 @@ HTTP HTTP HEAD -G +notxml # diff --git a/tests/data/test568 b/tests/data/test568 index caadd95d12..a2438916d4 100644 --- a/tests/data/test568 +++ b/tests/data/test568 @@ -5,6 +5,7 @@ RTSP ANNOUNCE +notxml diff --git a/tests/data/test646 b/tests/data/test646 index 1ef0c9f21b..39fafa573c 100644 --- a/tests/data/test646 +++ b/tests/data/test646 @@ -3,6 +3,7 @@ SMTP MULTIPART +notxml diff --git a/tests/data/test733 b/tests/data/test733 index ffe058bf34..0bf953cca2 100644 --- a/tests/data/test733 +++ b/tests/data/test733 @@ -2,6 +2,7 @@ IPFS +notxml diff --git a/tests/data/test734 b/tests/data/test734 index e8d40141a3..01107fbf6b 100644 --- a/tests/data/test734 +++ b/tests/data/test734 @@ -2,6 +2,7 @@ IPFS +notxml diff --git a/tests/data/test735 b/tests/data/test735 index d78c3cc996..574d8bd492 100644 --- a/tests/data/test735 +++ b/tests/data/test735 @@ -2,6 +2,7 @@ IPFS +notxml diff --git a/tests/data/test739 b/tests/data/test739 index 41f3599e4d..3e712f513e 100644 --- a/tests/data/test739 +++ b/tests/data/test739 @@ -2,6 +2,7 @@ IPFS +notxml diff --git a/tests/data/test787 b/tests/data/test787 index 798d2d368f..e95a18d17b 100644 --- a/tests/data/test787 +++ b/tests/data/test787 @@ -3,6 +3,7 @@ HTTP --variable +notxml diff --git a/tests/data/test96 b/tests/data/test96 index a96b617623..de4b7c18ad 100644 --- a/tests/data/test96 +++ b/tests/data/test96 @@ -2,6 +2,7 @@ TrackMemory +notxml