From 65b6011cc5225260d3c45c0149bbde0e14553898 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Mon, 11 Sep 2023 17:20:06 +0200 Subject: [PATCH] update test/test_extractor.py --- test/results/35photo.py | 2 ++ test/results/generic.py | 16 ++++++++-------- test/results/horne.py | 2 +- test/results/nijie.py | 2 +- test/test_extractor.py | 25 ++++++++++++++----------- 5 files changed, 26 insertions(+), 21 deletions(-) diff --git a/test/results/35photo.py b/test/results/35photo.py index b9c7673a..c0e29d53 100644 --- a/test/results/35photo.py +++ b/test/results/35photo.py @@ -19,6 +19,8 @@ __tests__ = ( { "#url" : "https://35photo.pro/suhoveev", + "#comment" : "last photo ID (1267028) isn't given as 'photo-id=\"\" - " + "there are only 23 photos without the last one", "#category": ("", "35photo", "user"), "#class" : _35photo._35photoUserExtractor, "#count" : ">= 33", diff --git a/test/results/generic.py b/test/results/generic.py index dea9f7cd..5ec0400e 100644 --- a/test/results/generic.py +++ b/test/results/generic.py @@ -9,7 +9,7 @@ from gallery_dl.extractor import generic __tests__ = ( { - "#url" : "https://www.nongnu.org/lzip/", + "#url" : "generic:https://www.nongnu.org/lzip/", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, "#count" : 1, @@ -22,7 +22,7 @@ __tests__ = ( }, { - "#url" : "https://räksmörgås.josefsson.org/", + "#url" : "generic:https://räksmörgås.josefsson.org/", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, "#pattern" : "^https://räksmörgås.josefsson.org/", @@ -30,37 +30,37 @@ __tests__ = ( }, { - "#url" : "https://en.wikipedia.org/Main_Page", + "#url" : "generic:https://en.wikipedia.org/Main_Page", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, { - "#url" : "https://example.org/path/to/file?que=1?&ry=2/#fragment", + "#url" : "generic:https://example.org/path/to/file?que=1?&ry=2/#fragment", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, { - "#url" : "https://example.org/%27%3C%23/%23%3E%27.htm?key=%3C%26%3E", + "#url" : "generic:https://example.org/%27%3C%23/%23%3E%27.htm?key=%3C%26%3E", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, { - "#url" : "https://en.wikipedia.org/Main_Page", + "#url" : "generic:https://en.wikipedia.org/Main_Page", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, { - "#url" : "https://example.org/path/to/file?que=1?&ry=2/#fragment", + "#url" : "generic:https://example.org/path/to/file?que=1?&ry=2/#fragment", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, { - "#url" : "https://example.org/%27%3C%23/%23%3E%27.htm?key=%3C%26%3E", + "#url" : "generic:https://example.org/%27%3C%23/%23%3E%27.htm?key=%3C%26%3E", "#category": ("", "generic", ""), "#class" : generic.GenericExtractor, }, diff --git a/test/results/horne.py b/test/results/horne.py index eb7b0a79..1cea3a0e 100644 --- a/test/results/horne.py +++ b/test/results/horne.py @@ -68,7 +68,7 @@ __tests__ = ( { "#url" : "https://horne.red/like_my.php", "#category": ("Nijie", "horne", "followed"), - "#class" : nijie.NijiefollowedExtractor, + "#class" : nijie.NijieFollowedExtractor, }, { diff --git a/test/results/nijie.py b/test/results/nijie.py index b2b10a70..2b5785af 100644 --- a/test/results/nijie.py +++ b/test/results/nijie.py @@ -86,7 +86,7 @@ __tests__ = ( { "#url" : "https://nijie.info/like_my.php", "#category": ("Nijie", "nijie", "followed"), - "#class" : nijie.NijiefollowedExtractor, + "#class" : nijie.NijieFollowedExtractor, }, { diff --git a/test/test_extractor.py b/test/test_extractor.py index fb164af4..41f47394 100644 --- a/test/test_extractor.py +++ b/test/test_extractor.py @@ -93,20 +93,24 @@ class TestExtractorModule(unittest.TestCase): FakeExtractor.from_url(invalid) def test_unique_pattern_matches(self): - test_urls = [] + try: + import test.results + except ImportError: + raise unittest.SkipTest("no test data") # collect testcase URLs + test_urls = [] append = test_urls.append - for extr in extractor.extractors(): - for testcase in extr._get_tests(): - append((testcase[0], extr)) + + for result in test.results.all(): + append((result["#url"], result["#class"])) # iterate over all testcase URLs for url, extr1 in test_urls: matches = [] # ... and apply all regex patterns to each one - for extr2 in extractor._cache: + for extr2 in _list_classes(): # skip DirectlinkExtractor pattern if it isn't tested if extr1 != DirectlinkExtractor and \ @@ -133,15 +137,14 @@ class TestExtractorModule(unittest.TestCase): self.assertIs(extr1, matches[0][1], url) def test_init(self): - """Test for exceptions in Extractor.initialize(()""" + """Test for exceptions in Extractor.initialize() and .finalize()""" for cls in extractor.extractors(): if cls.category == "ytdl": continue - for test in cls._get_tests(): - extr = cls.from_url(test[0]) - extr.initialize() - extr.finalize() - break + extr = cls.from_url(cls.example) + extr.initialize() + extr.finalize() + break @unittest.skipIf(sys.hexversion < 0x3060000, "test fails in CI") def test_init_ytdl(self):