diff --git a/figlet/__init__.py b/figlet/__init__.py index 48d5a2ec..d8171062 100644 --- a/figlet/__init__.py +++ b/figlet/__init__.py @@ -8,6 +8,15 @@ def exists(): check50.exists("figlet.py") +@check50.check(exists) +def test_no_arguments(): + """figlet.py exits given no command-line arguments""" + text = 'Random text' + exit = check50.run("python3 figlet.py").stdin(text, prompt=False).exit() + if exit != 0: + raise check50.Failure(f"Expected non-zero exit code.") + + @check50.check(exists) def test_one_argument(): """figlet.py exits given one command-line argument""" @@ -63,3 +72,16 @@ def check_font_rendering(font, text): for line in lines: output += line check50.run(f"python3 figlet.py -f {font}").stdin(text, prompt=False).stdout(regex(output), output, regex=True).exit(0) + + +@check50.check(exists) +def check_imports_random(exists): + """figlet.py imports random""" + import re + import_regex = re.compile(r'^import random$') + from_regex = re.compile(r'^from random import') + with open('figlet.py') as file: + for line in file.readlines(): + if (match := import_regex.search(line)) or (match := from_regex.search(line)): + return + raise check50.Failure("Random library was not used")