Skip to content

Commit 7b2c386

Browse files
committed
Fixed test failure on recent Python 3.13
1 parent 6207be3 commit 7b2c386

1 file changed

Lines changed: 10 additions & 3 deletions

File tree

linkcheck/tests/test_linkcheck.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import os
2+
import sys
23
from datetime import datetime, timedelta
34
from io import StringIO
45
from unittest.mock import patch
@@ -811,13 +812,19 @@ def test_video_with_time_anchor(self):
811812
self.assertEqual(uv.type, 'external')
812813

813814
def test_forged_video_with_time_anchor(self):
814-
uv = Url(url=f"{self.live_server_url}/static-files/fake-video.mp4#t=2.0")
815+
uv = Url(url=f"{self.live_server_url}/static-files/fake-video.mp4#<t=2.0")
815816
uv.check_url()
816-
self.assertEqual(uv.message, "200 OK, failed to parse HTML for anchor")
817+
if sys.version_info >= (3, 13):
818+
# Following fixes for https://github.com/python/cpython/issues/135661,
819+
# it is harder to make html parser fail.
820+
self.assertEqual(uv.message, "200 OK, broken external hash anchor")
821+
self.assertEqual(uv.anchor_message, "Broken anchor")
822+
else:
823+
self.assertEqual(uv.message, "200 OK, failed to parse HTML for anchor")
824+
self.assertEqual(uv.anchor_message, "Anchor could not be checked")
817825
self.assertEqual(uv.get_message, 'Working external link')
818826
self.assertEqual(uv.error_message, '')
819827
self.assertEqual(uv.status, True)
820-
self.assertEqual(uv.anchor_message, 'Anchor could not be checked')
821828
self.assertEqual(uv.ssl_status, None)
822829
self.assertEqual(uv.ssl_message, 'Insecure link')
823830
self.assertEqual(uv.get_status_code_display(), '200 OK')

0 commit comments

Comments
 (0)