From: Oleg Broytman Date: Sun, 30 Apr 2017 17:14:15 +0000 (+0300) Subject: Refactor tests: move common functions to ppu_tu.py X-Git-Tag: 0.2.0~2 X-Git-Url: https://git.phdru.name/?p=ppu.git;a=commitdiff_plain;h=e78080336c7f7b636cbc6d168bac1d54cec41a09 Refactor tests: move common functions to ppu_tu.py --- diff --git a/tests/find_in_path.py b/tests/find_in_path.py deleted file mode 100644 index 4d00613..0000000 --- a/tests/find_in_path.py +++ /dev/null @@ -1,9 +0,0 @@ -import os - - -def find_in_path(name): - for path in os.environ["PATH"].split(os.pathsep): - path = path.strip('"') - test_prog_path = os.path.join(path, name) - if os.path.exists(test_prog_path): - return test_prog_path diff --git a/tests/ppu_tu.py b/tests/ppu_tu.py new file mode 100644 index 0000000..563774a --- /dev/null +++ b/tests/ppu_tu.py @@ -0,0 +1,49 @@ +"""PPU test utilities""" + + +import os +import shutil +from tempfile import mkdtemp + + +def setup(): + global tmp_dir + tmp_dir = mkdtemp() + os.chdir(tmp_dir) + + +def teardown(): + os.chdir(os.sep) # To the root of the FS + shutil.rmtree(tmp_dir) + + +def find_in_path(name): + for path in os.environ["PATH"].split(os.pathsep): + path = path.strip('"') + test_prog_path = os.path.join(path, name) + if os.path.exists(test_prog_path): + return test_prog_path + + +def create_files(files, subdirectory=None): + if subdirectory: + os.makedirs(subdirectory) + else: + subdirectory = '' + for fname in files: + with open(os.path.join(subdirectory, fname), 'w'): + pass + + +def assert_files_exist(files): + if isinstance(files, str): + files = [files] + for fname in files: + assert os.path.exists(fname) + + +def assert_files_not_exist(files): + if isinstance(files, str): + files = [files] + for fname in files: + assert not os.path.exists(fname) diff --git a/tests/test_cmp.py b/tests/test_cmp.py index 49b48ac..b701837 100755 --- a/tests/test_cmp.py +++ b/tests/test_cmp.py @@ -1,11 +1,9 @@ #! /usr/bin/env python import os -import shutil import subprocess import sys -from tempfile import mkdtemp -from find_in_path import find_in_path +from ppu_tu import setup, teardown, find_in_path # noqa tmp_dir = None @@ -15,17 +13,6 @@ if not test_prog_path: sys.exit("Cannot find cmp.py in %s" % os.environ["PATH"]) -def setup(): - global tmp_dir - tmp_dir = mkdtemp() - os.chdir(tmp_dir) - - -def teardown(): - os.chdir(os.sep) # To the root of the FS - shutil.rmtree(tmp_dir) - - def create_file(name, content): with open(name, 'w') as fp: fp.write(content) diff --git a/tests/test_remove_old_files.py b/tests/test_remove_old_files.py index 95dd98c..93f8669 100755 --- a/tests/test_remove_old_files.py +++ b/tests/test_remove_old_files.py @@ -2,11 +2,10 @@ from time import time import os -import shutil import subprocess import sys -from tempfile import mkdtemp -from find_in_path import find_in_path +from ppu_tu import setup, teardown, find_in_path # noqa +from ppu_tu import create_files, assert_files_exist, assert_files_not_exist tmp_dir = None @@ -17,41 +16,6 @@ if not test_prog_path: sys.exit("Cannot find remove-old-files.py in %s" % os.environ["PATH"]) -def setup(): - global tmp_dir - tmp_dir = mkdtemp() - os.chdir(tmp_dir) - - -def teardown(): - os.chdir(os.sep) # To the root of the FS - shutil.rmtree(tmp_dir) - - -def create_files(files, subdirectory=None): - if subdirectory: - os.makedirs(subdirectory) - else: - subdirectory = '' - for fname in files: - with open(os.path.join(subdirectory, fname), 'w'): - pass - - -def assert_files_exist(files): - if isinstance(files, str): - files = [files] - for fname in files: - assert os.path.exists(fname) - - -def assert_files_not_exist(files): - if isinstance(files, str): - files = [files] - for fname in files: - assert not os.path.exists(fname) - - def test_remove_old_files(): create_files(['test1', 'test2']) assert_files_exist(['test1', 'test2'])