diff options
| author | 2024-03-25 02:57:50 -0400 | |
|---|---|---|
| committer | 2024-03-25 02:57:50 -0400 | |
| commit | 039aecad63a074bdcc75bd4f30c84bdc4a1a244f (patch) | |
| tree | 39997d0361f67208c716fba6717895b42ee309d1 /test/test_results.py | |
| parent | 77d11300e15ee4045b187a58ee6e039624e5d69c (diff) | |
| parent | 6e662211019a89caec44de8a57c675872b0b5498 (diff) | |
Update upstream source from tag 'upstream/1.26.9'
Update to upstream version '1.26.9'
with Debian dir e04ff15132747292d335c9d456bd879aca333115
Diffstat (limited to 'test/test_results.py')
| -rw-r--r-- | test/test_results.py | 32 |
1 files changed, 17 insertions, 15 deletions
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): |
