Fix unit tests - make caplog checks more robust, having added a new logger/debug call

This commit is contained in:
Patrick Robertson
2025-03-13 16:07:49 +00:00
parent 10ceb7aa15
commit 2e25e59fa6

View File

@@ -37,9 +37,8 @@ class TestTiktokTikwmExtractor(TestExtractorBase):
assert self.extractor.download(make_item(self.VALID_EXAMPLE_URL)) == False
mock_get.assert_called_once()
mock_get.return_value.json.assert_called_once()
assert len(caplog.records) == 2
# first message is just the 'Skipping using ytdlp to download files for TikTok' message
assert "failed to parse JSON response from tikwm.com for url='https://www.tiktok.com/@example/video/1234'" in caplog.records[1].message
assert "failed to parse JSON response from tikwm.com for url='https://www.tiktok.com/@example/video/1234'" in caplog.text
mock_get.return_value.json.side_effect = Exception
with caplog.at_level('ERROR'):
@@ -47,8 +46,7 @@ class TestTiktokTikwmExtractor(TestExtractorBase):
mock_get.assert_called()
assert mock_get.call_count == 2
assert mock_get.return_value.json.call_count == 2
assert len(caplog.records) == 2
assert "failed to parse JSON response from tikwm.com for url='https://www.tiktok.com/@example/video/1234'" in caplog.records[1].message
assert "failed to parse JSON response from tikwm.com for url='https://www.tiktok.com/@example/video/1234'" in caplog.text
@pytest.mark.parametrize("response", [
({"msg": "failure"}),
@@ -61,7 +59,7 @@ class TestTiktokTikwmExtractor(TestExtractorBase):
assert self.extractor.download(make_item(self.VALID_EXAMPLE_URL)) == False
mock_get.assert_called_once()
mock_get.return_value.json.assert_called_once()
assert "failed to get a valid response from tikwm.com" in caplog.records[1].message
assert "failed to get a valid response from tikwm.com" in caplog.text
@pytest.mark.parametrize("response,has_vid", [
({"data": {"id": 123}}, False),