X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=tests%2Ftest_remove_old_files.py;h=93f8669eebe0dd7bbbb35169ae40cc53fc6ea069;hb=e78080336c7f7b636cbc6d168bac1d54cec41a09;hp=6f615ba0d57331eaba41cfa3b9528fc3c2802771;hpb=947977ce851e15e0065630f265b4047cd47ea1f1;p=ppu.git diff --git a/tests/test_remove_old_files.py b/tests/test_remove_old_files.py index 6f615ba..93f8669 100755 --- a/tests/test_remove_old_files.py +++ b/tests/test_remove_old_files.py @@ -1,59 +1,54 @@ #! /usr/bin/env python -import shutil +from time import time import os -from tempfile import mkdtemp +import subprocess +import sys +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 +old_time = time() - 1000 * 24 * 3600 # 1000 days ago - -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 _test_files_exist(files): - for fname in files: - assert os.path.exists(fname) - - -def _test_files_not_exist(files): - for fname in files: - assert not os.path.exists(fname) +test_prog_path = find_in_path('remove-old-files.py') +if not test_prog_path: + sys.exit("Cannot find remove-old-files.py in %s" % os.environ["PATH"]) def test_remove_old_files(): create_files(['test1', 'test2']) - _test_files_exist(['test1', 'test2']) - os.utime('test2', (0, 0)) - assert os.system("remove-old-files.py --older 100 .") == 0 - _test_files_exist(['test1']) - _test_files_not_exist(['test2']) + assert_files_exist(['test1', 'test2']) + os.utime('test2', (old_time, old_time)) + assert subprocess.call( + [sys.executable, test_prog_path, "--older", "100", "."]) == 0 + assert_files_exist('test1') + assert_files_not_exist('test2') def test_recursive(): create_files(['test3', 'test4'], 'subdir') test3 = os.path.join('subdir', 'test3') test4 = os.path.join('subdir', 'test4') - _test_files_exist([test3, test4]) - os.utime(test4, (0, 0)) - assert os.system("remove-old-files.py --older 100 .") == 0 - _test_files_exist([test3]) - _test_files_not_exist([test4]) + assert_files_exist([test3, test4]) + os.utime(test4, (old_time, old_time)) + assert subprocess.call( + [sys.executable, test_prog_path, "--older", "100", "."]) == 0 + assert_files_exist(test3) + assert_files_not_exist(test4) + + +def test_remove_empty_directory(): + create_files(['test3', 'test4'], 'subdir') + test3 = os.path.join('subdir', 'test3') + test4 = os.path.join('subdir', 'test4') + assert_files_exist([test3, test4]) + os.utime(test3, (old_time, old_time)) + os.utime(test4, (old_time, old_time)) + assert subprocess.call( + [sys.executable, test_prog_path, "--older", "100", "."]) == 0 + assert_files_exist('subdir') + assert_files_not_exist([test3, test4]) + assert subprocess.call( + [sys.executable, test_prog_path, "-e", "--older", "100", "."]) == 0 + assert_files_not_exist('subdir')