Add test for site downloader gallery
This commit is contained in:
@@ -6,7 +6,7 @@ import logging
|
|||||||
import requests
|
import requests
|
||||||
from praw.models import Submission
|
from praw.models import Submission
|
||||||
|
|
||||||
from bulkredditdownloader.errors import ResourceNotFound, NotADownloadableLinkError
|
from bulkredditdownloader.errors import NotADownloadableLinkError, ResourceNotFound
|
||||||
from bulkredditdownloader.site_downloaders.base_downloader import BaseDownloader
|
from bulkredditdownloader.site_downloaders.base_downloader import BaseDownloader
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@@ -33,7 +33,7 @@ class Gallery(BaseDownloader):
|
|||||||
except KeyError:
|
except KeyError:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
return [self._download_album(images)]
|
return self._download_album(images)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _get_data(link: str) -> dict:
|
def _get_data(link: str) -> dict:
|
||||||
@@ -62,7 +62,6 @@ class Gallery(BaseDownloader):
|
|||||||
|
|
||||||
def _download_album(self, images: dict):
|
def _download_album(self, images: dict):
|
||||||
out = []
|
out = []
|
||||||
for i, image in enumerate(images):
|
for image_key in images.keys():
|
||||||
out.append(self._download_resource(image['url']))
|
out.append(self._download_resource(images[image_key]['url']))
|
||||||
|
|
||||||
return out
|
return out
|
||||||
|
|||||||
22
bulkredditdownloader/tests/downloaders/test_gallery.py
Normal file
22
bulkredditdownloader/tests/downloaders/test_gallery.py
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# coding=utf-8
|
||||||
|
|
||||||
|
import praw
|
||||||
|
import praw.models
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
from bulkredditdownloader.resource import Resource
|
||||||
|
from bulkredditdownloader.site_downloaders.gallery import Gallery
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture()
|
||||||
|
def reddit_submission() -> praw.models.Submission:
|
||||||
|
rd = praw.Reddit(client_id='U-6gk4ZCh3IeNQ', client_secret='7CZHY6AmKweZME5s50SfDGylaPg', user_agent='test')
|
||||||
|
return rd.submission(id='ljyy27')
|
||||||
|
|
||||||
|
|
||||||
|
def test_gallery(reddit_submission: praw.models.Submission):
|
||||||
|
gallery = Gallery(reddit_submission)
|
||||||
|
results = gallery.download()
|
||||||
|
assert len(results) == 4
|
||||||
|
assert all([isinstance(result, Resource) for result in results])
|
||||||
Reference in New Issue
Block a user