diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/test_downloader.py | 6 | ||||
| -rw-r--r-- | test/test_extractor.py | 2 | ||||
| -rw-r--r-- | test/test_results.py | 24 |
3 files changed, 23 insertions, 9 deletions
diff --git a/test/test_downloader.py b/test/test_downloader.py index 840e078..f10465e 100644 --- a/test/test_downloader.py +++ b/test/test_downloader.py @@ -214,7 +214,8 @@ class TestHTTPDownloader(TestDownloaderBase): self.downloader.minsize = 100 with self.assertLogs(self.downloader.log, "WARNING"): success = self.downloader.download(url, pathfmt) - self.assertFalse(success) + self.assertTrue(success) + self.assertEqual(pathfmt.temppath, "") def test_http_filesize_max(self): url = self.address + "/jpg" @@ -222,7 +223,8 @@ class TestHTTPDownloader(TestDownloaderBase): self.downloader.maxsize = 100 with self.assertLogs(self.downloader.log, "WARNING"): success = self.downloader.download(url, pathfmt) - self.assertFalse(success) + self.assertTrue(success) + self.assertEqual(pathfmt.temppath, "") class TestTextDownloader(TestDownloaderBase): diff --git a/test/test_extractor.py b/test/test_extractor.py index 29ccf97..d2dd643 100644 --- a/test/test_extractor.py +++ b/test/test_extractor.py @@ -142,6 +142,8 @@ class TestExtractorModule(unittest.TestCase): if cls.category == "ytdl": continue extr = cls.from_url(cls.example) + if not extr and cls.basecategory and not cls.instances: + continue extr.initialize() extr.finalize() diff --git a/test/test_results.py b/test/test_results.py index f275bbf..c7a5001 100644 --- a/test/test_results.py +++ b/test/test_results.py @@ -192,22 +192,22 @@ class TestExtractorResults(unittest.TestCase): subtest = True self._test_kwdict(value[idx], item) if not subtest: - self.assertEqual(value, test, msg=key) + self.assertEqual(test, value, msg=key) elif isinstance(test, str): if test.startswith("re:"): self.assertRegex(value, test[3:], msg=key) elif test.startswith("dt:"): self.assertIsInstance(value, datetime.datetime, msg=key) - self.assertEqual(str(value), test[3:], msg=key) + self.assertEqual(test[3:], str(value), msg=key) elif test.startswith("type:"): - self.assertEqual(type(value).__name__, test[5:], msg=key) + self.assertEqual(test[5:], type(value).__name__, msg=key) elif test.startswith("len:"): self.assertIsInstance(value, (list, tuple), msg=key) - self.assertEqual(len(value), int(test[4:]), msg=key) + self.assertEqual(int(test[4:]), len(value), msg=key) else: - self.assertEqual(value, test, msg=key) + self.assertEqual(test, value, msg=key) else: - self.assertEqual(value, test, msg=key) + self.assertEqual(test, value, msg=key) class ResultJob(job.DownloadJob): @@ -405,7 +405,17 @@ def generate_tests(): def _generate_method(result): def test(self): print("\n" + result["#url"]) - self._run_test(result) + try: + self._run_test(result) + except KeyboardInterrupt as exc: + v = input("\n[e]xit | [f]ail | [S]kip ? ").strip().lower() + if v in ("e", "exit"): + raise + if v in ("f", "fail"): + self.fail("manual test failure") + else: + self._skipped.append((result["#url"], exc)) + self.skipTest(exc) return test # enable selective testing for direct calls |
