Initial commit to photo-dater with pytest test

This commit is contained in:
2022-04-26 22:54:52 -04:00
parent 1d50bbfe04
commit c05f4f5987
10 changed files with 427 additions and 2 deletions

View File

@@ -0,0 +1,43 @@
import pytest
import random
import string
import subprocess
from helpers import *
from fixtures import *
cmd = 'python3 updatescannedpics.py'
@pytest.mark.parametrize("cmd_line", ["-h", "--help"])
def test_help(cmd_line):
command = f'{cmd} {cmd_line}'.split()
output = subprocess.run(command, capture_output=True, encoding='UTF-8')
assert output.returncode == 1
assert output.stdout == "-i Input Directory\n-o Output Directory\n-m My Pre-Configured Directory Layout\nDefaults directory to PWD\n"
def test_bad_param():
bad_options = [char for char in string.ascii_letters]
bad_options.remove('h')
bad_options.remove('i')
bad_options.remove('o')
bad_options.remove('m')
rand_bad_opt = random.choice(bad_options)
command = f'{cmd} -{rand_bad_opt}'.split()
output = subprocess.run(command, capture_output=True, encoding='UTF-8')
assert output.returncode == 2
assert output.stdout == f"option -{rand_bad_opt} not recognized\n-i Input Directory\n-o Output Directory\n-m My Pre-Configured Directory Layout\nDefaults directory to PWD\n"
@pytest.mark.parametrize("cmd_line, expected", [("", "Not Using"), ("-m", "Using")])
def test_my_format(cmd_line, expected, log_file):
command = f'{cmd} {cmd_line}'
run_successfull_cmd(command)
with open(log_file, 'r') as my_log:
lines = my_log.readlines()
assert f"{expected} pre formated directories" in lines[2]