aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2024-03-25 02:57:44 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2024-03-25 02:57:44 -0400
commit6e662211019a89caec44de8a57c675872b0b5498 (patch)
tree5d9d5a2b7efc3a24dd6074e99b253b639fe5af1d /test
parent01166fa52707cc282467427cf0e65c1b8983c4be (diff)
New upstream version 1.26.9.upstream/1.26.9
Diffstat (limited to 'test')
-rw-r--r--test/test_cache.py2
-rw-r--r--test/test_config.py2
-rw-r--r--test/test_cookies.py6
-rw-r--r--test/test_downloader.py3
-rw-r--r--test/test_extractor.py8
-rw-r--r--test/test_formatter.py32
-rw-r--r--test/test_job.py2
-rw-r--r--test/test_output.py2
-rw-r--r--test/test_postprocessor.py3
-rw-r--r--test/test_results.py32
-rw-r--r--test/test_text.py4
-rw-r--r--test/test_util.py2
12 files changed, 53 insertions, 45 deletions
diff --git a/test/test_cache.py b/test/test_cache.py
index 9b3623a..9951ef2 100644
--- a/test/test_cache.py
+++ b/test/test_cache.py
@@ -222,5 +222,5 @@ class TestCache(unittest.TestCase):
self.assertEqual(db.cache[2][0], 6)
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_config.py b/test/test_config.py
index 859faf5..06780be 100644
--- a/test/test_config.py
+++ b/test/test_config.py
@@ -214,5 +214,5 @@ class TestConfigFiles(unittest.TestCase):
raise unittest.SkipTest(path + " not available")
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_cookies.py b/test/test_cookies.py
index a6ad05f..208645d 100644
--- a/test/test_cookies.py
+++ b/test/test_cookies.py
@@ -63,7 +63,7 @@ class TestCookiejar(unittest.TestCase):
def _test_warning(self, filename, exc):
config.set((), "cookies", filename)
- log = logging.getLogger("test")
+ log = logging.getLogger("generic")
with mock.patch.object(log, "warning") as mock_warning:
cookies = _get_extractor("test").cookies
@@ -173,7 +173,7 @@ class TestCookieUtils(unittest.TestCase):
self.assertFalse(extr.cookies_domain, "empty")
now = int(time.time())
- log = logging.getLogger("test")
+ log = logging.getLogger("generic")
extr.cookies.set("a", "1", expires=now-100)
with mock.patch.object(log, "warning") as mw:
@@ -212,7 +212,7 @@ URLS = {
"idolcomplex": "https://idol.sankakucomplex.com/post/show/1",
"nijie" : "https://nijie.info/view.php?id=1",
"horne" : "https://horne.red/view.php?id=1",
- "test" : "test:",
+ "test" : "generic:https://example.org/",
}
diff --git a/test/test_downloader.py b/test/test_downloader.py
index f10465e..8027af5 100644
--- a/test/test_downloader.py
+++ b/test/test_downloader.py
@@ -33,7 +33,7 @@ class MockDownloaderModule(Mock):
class FakeJob():
def __init__(self):
- self.extractor = extractor.find("test:")
+ self.extractor = extractor.find("generic:https://example.org/")
self.extractor.initialize()
self.pathfmt = path.PathFormat(self.extractor)
self.out = output.NullOutput()
@@ -304,6 +304,7 @@ SAMPLES = {
("mp4" , b"????ftypavc1"),
("mp4" , b"????ftypiso3"),
("mp4" , b"????ftypM4V"),
+ ("mov" , b"????ftypqt "),
("webm", b"\x1A\x45\xDF\xA3"),
("ogg" , b"OggS"),
("wav" , b"RIFF????WAVE"),
diff --git a/test/test_extractor.py b/test/test_extractor.py
index 75a0b87..6af1226 100644
--- a/test/test_extractor.py
+++ b/test/test_extractor.py
@@ -45,7 +45,7 @@ class TestExtractorModule(unittest.TestCase):
"https://example.org/file.jpg",
"tumblr:foobar",
"oauth:flickr",
- "test:pixiv:",
+ "generic:https://example.org/",
"recursive:https://example.org/document.html",
)
@@ -208,7 +208,7 @@ class TestExtractorModule(unittest.TestCase):
class TestExtractorWait(unittest.TestCase):
def test_wait_seconds(self):
- extr = extractor.find("test:")
+ extr = extractor.find("generic:https://example.org/")
seconds = 5
until = time.time() + seconds
@@ -222,7 +222,7 @@ class TestExtractorWait(unittest.TestCase):
self._assert_isotime(calls[0][1][1], until)
def test_wait_until(self):
- extr = extractor.find("test:")
+ extr = extractor.find("generic:https://example.org/")
until = time.time() + 5
with patch("time.sleep") as sleep, patch.object(extr, "log") as log:
@@ -237,7 +237,7 @@ class TestExtractorWait(unittest.TestCase):
self._assert_isotime(calls[0][1][1], until)
def test_wait_until_datetime(self):
- extr = extractor.find("test:")
+ extr = extractor.find("generic:https://example.org/")
until = datetime.utcnow() + timedelta(seconds=5)
until_local = datetime.now() + timedelta(seconds=5)
diff --git a/test/test_formatter.py b/test/test_formatter.py
index dbdccba..89cb1aa 100644
--- a/test/test_formatter.py
+++ b/test/test_formatter.py
@@ -31,8 +31,9 @@ class TestFormatter(unittest.TestCase):
"h": "<p>foo </p> &amp; bar <p> </p>",
"u": "&#x27;&lt; / &gt;&#x27;",
"t": 1262304000,
- "dt": datetime.datetime(2010, 1, 1),
"ds": "2010-01-01T01:00:00+0100",
+ "dt": datetime.datetime(2010, 1, 1),
+ "dt_dst": datetime.datetime(2010, 6, 1),
"name": "Name",
"title1": "Title",
"title2": "",
@@ -236,19 +237,20 @@ class TestFormatter(unittest.TestCase):
self._run_test("{ds:D%Y-%m-%dT%H:%M:%S%z/O1}", "2010-01-01 01:00:00")
self._run_test("{t!d:O2}", "2010-01-01 02:00:00")
- orig_daylight = time.daylight
- orig_timezone = time.timezone
- orig_altzone = time.altzone
- try:
- time.daylight = False
- time.timezone = -3600
- self._run_test("{dt:O}", "2010-01-01 01:00:00")
- time.timezone = 7200
- self._run_test("{dt:Olocal}", "2009-12-31 22:00:00")
- finally:
- time.daylight = orig_daylight
- time.timezone = orig_timezone
- time.altzone = orig_altzone
+ def test_offset_local(self):
+ ts = self.kwdict["dt"].replace(
+ tzinfo=datetime.timezone.utc).timestamp()
+ offset = time.localtime(ts).tm_gmtoff
+ dt = self.kwdict["dt"] + datetime.timedelta(seconds=offset)
+ self._run_test("{dt:O}", str(dt))
+ self._run_test("{dt:Olocal}", str(dt))
+
+ ts = self.kwdict["dt_dst"].replace(
+ tzinfo=datetime.timezone.utc).timestamp()
+ offset = time.localtime(ts).tm_gmtoff
+ dt = self.kwdict["dt_dst"] + datetime.timedelta(seconds=offset)
+ self._run_test("{dt_dst:O}", str(dt))
+ self._run_test("{dt_dst:Olocal}", str(dt))
def test_sort(self):
self._run_test("{l:S}" , "['a', 'b', 'c']")
@@ -455,5 +457,5 @@ def noarg():
self.assertEqual(output, result, format_string)
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_job.py b/test/test_job.py
index a6e093f..141b1b2 100644
--- a/test/test_job.py
+++ b/test/test_job.py
@@ -413,5 +413,5 @@ class TestExtractorAlt(Extractor):
subcategory = "test_subcategory"
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_output.py b/test/test_output.py
index 84433f0..e81f768 100644
--- a/test/test_output.py
+++ b/test/test_output.py
@@ -152,5 +152,5 @@ class TestShortenEAW(unittest.TestCase):
self.assertEqual(f(s, 19, "") , "幻-想-郷###幻-想-郷")
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_postprocessor.py b/test/test_postprocessor.py
index fb1d739..0ee7cdb 100644
--- a/test/test_postprocessor.py
+++ b/test/test_postprocessor.py
@@ -30,7 +30,8 @@ class MockPostprocessorModule(Mock):
class FakeJob():
- def __init__(self, extr=extractor.find("test:")):
+ def __init__(self, extr=extractor.find("generic:https://example.org/")):
+ extr.directory_fmt = ("{category}",)
self.extractor = extr
self.pathfmt = path.PathFormat(extr)
self.out = output.NullOutput()
diff --git a/test/test_results.py b/test/test_results.py
index bceb271..0594618 100644
--- a/test/test_results.py
+++ b/test/test_results.py
@@ -214,44 +214,46 @@ class TestExtractorResults(unittest.TestCase):
for kwdict in tjob.kwdict_list:
self._test_kwdict(kwdict, metadata)
- def _test_kwdict(self, kwdict, tests):
+ def _test_kwdict(self, kwdict, tests, parent=None):
for key, test in tests.items():
if key.startswith("?"):
key = key[1:]
if key not in kwdict:
continue
- self.assertIn(key, kwdict, msg=key)
+ path = "{}.{}".format(parent, key) if parent else key
+ self.assertIn(key, kwdict, msg=path)
value = kwdict[key]
if isinstance(test, dict):
- self._test_kwdict(value, test)
+ self._test_kwdict(value, test, path)
elif isinstance(test, type):
- self.assertIsInstance(value, test, msg=key)
+ self.assertIsInstance(value, test, msg=path)
elif isinstance(test, range):
- self.assertRange(value, test, msg=key)
+ self.assertRange(value, test, msg=path)
elif isinstance(test, list):
subtest = False
for idx, item in enumerate(test):
if isinstance(item, dict):
subtest = True
- self._test_kwdict(value[idx], item)
+ subpath = "{}[{}]".format(path, idx)
+ self._test_kwdict(value[idx], item, subpath)
if not subtest:
- self.assertEqual(test, value, msg=key)
+ self.assertEqual(test, value, msg=path)
elif isinstance(test, str):
if test.startswith("re:"):
- self.assertRegex(value, test[3:], msg=key)
+ self.assertRegex(value, test[3:], msg=path)
elif test.startswith("dt:"):
- self.assertIsInstance(value, datetime.datetime, msg=key)
- self.assertEqual(test[3:], str(value), msg=key)
+ self.assertIsInstance(value, datetime.datetime, msg=path)
+ self.assertEqual(test[3:], str(value), msg=path)
elif test.startswith("type:"):
- self.assertEqual(test[5:], type(value).__name__, msg=key)
+ self.assertEqual(test[5:], type(value).__name__, msg=path)
elif test.startswith("len:"):
- self.assertIsInstance(value, (list, tuple), msg=key)
- self.assertEqual(int(test[4:]), len(value), msg=key)
+ self.assertIsInstance(value, (list, tuple), msg=path)
+ self.assertEqual(int(test[4:]), len(value), msg=path)
else:
- self.assertEqual(test, value, msg=key)
+ self.assertEqual(test, value, msg=path)
else:
- self.assertEqual(test, value, msg=key)
+ self.assertEqual(test, value, msg=path)
class ResultJob(job.DownloadJob):
diff --git a/test/test_text.py b/test/test_text.py
index 2c0be3b..c99729c 100644
--- a/test/test_text.py
+++ b/test/test_text.py
@@ -121,12 +121,14 @@ class TestText(unittest.TestCase):
def test_root_from_url(self, f=text.root_from_url):
result = "https://example.org"
+ self.assertEqual(f("https://example.org") , result)
self.assertEqual(f("https://example.org/") , result)
self.assertEqual(f("https://example.org/path"), result)
self.assertEqual(f("example.org/") , result)
self.assertEqual(f("example.org/path/") , result)
result = "http://example.org"
+ self.assertEqual(f("http://example.org") , result)
self.assertEqual(f("http://example.org/") , result)
self.assertEqual(f("http://example.org/path/"), result)
self.assertEqual(f("example.org/", "http://") , result)
@@ -457,5 +459,5 @@ class TestText(unittest.TestCase):
self.assertEqual(f("1970.01.01"), "1970.01.01")
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()
diff --git a/test/test_util.py b/test/test_util.py
index 780f475..83b44b7 100644
--- a/test/test_util.py
+++ b/test/test_util.py
@@ -774,5 +774,5 @@ class TestExtractorAlt(TestExtractor):
subcategory = "test_subcategory"
-if __name__ == '__main__':
+if __name__ == "__main__":
unittest.main()