From 44889d5264962e0899ba4e295deb7d7e99d744e1 Mon Sep 17 00:00:00 2001 From: Serene <33189705+Serene-Arc@users.noreply.github.com> Date: Tue, 30 Mar 2021 17:08:08 +1000 Subject: [PATCH] Tweak regex to fix incorrect match (#237) --- bulkredditdownloader/site_downloaders/download_factory.py | 2 +- .../tests/downloaders/test_download_factory.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/bulkredditdownloader/site_downloaders/download_factory.py b/bulkredditdownloader/site_downloaders/download_factory.py index 466dc3d..0431d30 100644 --- a/bulkredditdownloader/site_downloaders/download_factory.py +++ b/bulkredditdownloader/site_downloaders/download_factory.py @@ -44,7 +44,7 @@ class DownloadFactory: return Youtube elif re.match(url_beginning + r'i\.redd\.it.*', url): return Direct - elif re.match(url_beginning + r'.*\..{3,4}$', url): + elif re.match(url_beginning + r'.*/.*\.\w{3,4}$', url): return Direct else: raise NotADownloadableLinkError('No downloader module exists for url {}'.format(url)) diff --git a/bulkredditdownloader/tests/downloaders/test_download_factory.py b/bulkredditdownloader/tests/downloaders/test_download_factory.py index 5e1b1d0..6f7cba7 100644 --- a/bulkredditdownloader/tests/downloaders/test_download_factory.py +++ b/bulkredditdownloader/tests/downloaders/test_download_factory.py @@ -46,6 +46,10 @@ def test_factory_lever_good(test_submission_id: str, expected_class: BaseDownloa @pytest.mark.parametrize('test_url', ( 'random.com', 'bad', + 'https://www.google.com/', + 'https://www.google.com', + 'https://www.google.com/test', + 'https://www.google.com/test/', )) def test_factory_lever_bad(test_url: str): with pytest.raises(NotADownloadableLinkError):