Skip to content

Commit

Permalink
Updated tests - removed old ones and created the structure for the ne…
Browse files Browse the repository at this point in the history
…w ones
  • Loading branch information
Javinator9889 committed Jun 1, 2020
1 parent 1496c40 commit b234aee
Show file tree
Hide file tree
Showing 12 changed files with 80 additions and 426 deletions.
6 changes: 5 additions & 1 deletion YouTubeMDBot/.idea/YouTubeMDBot.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions YouTubeMDBot/__main__.py
Expand Up @@ -13,6 +13,6 @@
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from .tests.multiprocess_tests import main

main()
if __name__ == '__main__':
# TODO
pass
2 changes: 1 addition & 1 deletion YouTubeMDBot/downloader/youtube_downloader.py
Expand Up @@ -86,7 +86,7 @@ def download(self, yt_obj: YouTubeDownloader) -> Tuple[BytesIO, bytes]:

def download_async(self,
yt_obj: YouTubeDownloader,
callback: Callable[[Any], Any] = None,
callback: Callable[[tuple], Any] = None,
error_callback: Callable[[Any], Any] = None):
return super().execute(yt_obj.download,
callback=callback,
Expand Down
35 changes: 0 additions & 35 deletions YouTubeMDBot/tests/converter.py

This file was deleted.

41 changes: 0 additions & 41 deletions YouTubeMDBot/tests/database.py

This file was deleted.

71 changes: 71 additions & 0 deletions YouTubeMDBot/tests/download_test.py
@@ -0,0 +1,71 @@
import unittest
import logging

from YouTubeMDBot.downloader import YouTubeDownloader
from YouTubeMDBot.downloader import M4AYouTubeDownloader
from YouTubeMDBot.downloader import MultipleYouTubeDownloader

from YouTubeMDBot.utils import CBarrier

log = logging.basicConfig()


class DownloadTest(unittest.TestCase):
lock = Lock()

@property
def finished(self):
with self.lock:
return self.__finished

@finished.setter
def finished(self, value):
with self.lock:
self.__finished = value

def test_single_download(self):
downloader = YouTubeDownloader(
url="https://www.youtube.com/watch?v=Inm-N5rLUSI"
)
self._test_download(downloader)

def test_single_download_to_m4a(self):
downloader = M4AYouTubeDownloader(
url="https://www.youtube.com/watch?v=Inm-N5rLUSI"
)
self._test_download(downloader)

def test_multiple_downloader(self):
downloader = MultipleYouTubeDownloader()
self.finished = 0
urls = {
"https://www.youtube.com/watch?v=Inm-N5rLUSI",
"https://www.youtube.com/watch?v=-_ZwpOdXXcA",
"https://www.youtube.com/watch?v=WOGWZD5iT10",
"https://www.youtube.com/watch?v=GfKV9KaNJXc",
"https://www.youtube.com/watch?v=DiItGE3eAyQ",
"https://www.youtube.com/watch?v=GuZzuQvv7uc"
}
for url in urls:
yt_downloader = YouTubeDownloader(url)
downloader.download_async(yt_downloader,
callback=self._download_finished_callback,
error_callback=self._download_failed_callback)
while self.finished != 6:
sleep(1)

def _test_download(self, downloader: YouTubeDownloader):
io, data = downloader.download()
self.assertEqual(io.read(), data)

def _download_finished_callback(self, data):
print("Video download finished")
print(type(data))
self.finished += 1

def _download_failed_callback(self, err):
print(f"Captured error: {err}")


if __name__ == '__main__':
unittest.main()
59 changes: 0 additions & 59 deletions YouTubeMDBot/tests/downloader.py

This file was deleted.

124 changes: 0 additions & 124 deletions YouTubeMDBot/tests/identifier.py

This file was deleted.

29 changes: 0 additions & 29 deletions YouTubeMDBot/tests/m4adownloader.py

This file was deleted.

0 comments on commit b234aee

Please sign in to comment.