Compare commits

...

2 Commits

Author SHA1 Message Date
Lukáš Kucharczyk 6095290195
test: check if destination exists 2021-06-25 21:37:16 +02:00
Lukáš Kucharczyk afd46ee7d2
Move import to top 2021-06-25 20:45:49 +02:00
2 changed files with 28 additions and 3 deletions

View File

@ -3,6 +3,7 @@ Manga checker and downloader
"""
import argparse
import os
if __name__ == '__main__':
parser = argparse.ArgumentParser(
@ -18,4 +19,11 @@ if __name__ == '__main__':
'-n', '--notify', type=str, default=None, help="Apprise notification string."
)
args = parser.parse_args()
args = parser.parse_args()
destination = os.path.abspath(args.destination)
if not os.path.exists(destination):
print(f'Destination {destination} does not exist.')
if not os.path.isdir(destination):
print(f'Destination {destination} is not a directory.')

View File

@ -1,12 +1,29 @@
from subprocess import CalledProcessError
import unittest
import subprocess
import os
class FirstTestClass(unittest.TestCase):
class ArgumentTestClass(unittest.TestCase):
def setUp(self):
import tempfile
self.existing_dir = tempfile.mkdtemp()
def test_argument_required(self):
import subprocess
with self.assertRaises(CalledProcessError):
subprocess.check_output(['python', 'manga_up'])
def test_destination_exists(self):
result = subprocess.check_output(['python', 'manga_up', '--destination', 'nonexistent'])
self.assertIn('does not exist', str(result))
def test_destination_is_not_directory(self):
result = subprocess.check_output(['python', 'manga_up', '--destination', self.existing_file])
self.assertIn('not a directory', str(result))
def tearDown(self) -> None:
os.rmdir(self.existing_dir)
if __name__ == '__main__':
unittest.main()