From 0864bae22e3d71eadebd834f33f0b4fc7ad089cf Mon Sep 17 00:00:00 2001 From: Paul McCarthy <pauldmccarthy@gmail.com> Date: Tue, 21 Jul 2020 11:45:19 +0100 Subject: [PATCH] TEST: Had two imglob test scripts --- tests/test_imglob.py | 87 ------------------------------- tests/test_scripts/test_imglob.py | 80 +++++++++++++++++++++++++++- 2 files changed, 78 insertions(+), 89 deletions(-) delete mode 100644 tests/test_imglob.py diff --git a/tests/test_imglob.py b/tests/test_imglob.py deleted file mode 100644 index 9a8e838d1..000000000 --- a/tests/test_imglob.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/env python -# -# test_imglob.py - -# -# Author: Paul McCarthy <pauldmccarthy@gmail.com> -# - -import pytest - -import fsl.scripts.imglob as imglob - -from . import testdir - - -def test_imglob_shouldPass(): - - # (files to create, paths, output, expected) - tests = [ - - # normal usage, one file - ('file.hdr file.img', 'file', None, 'file'), - ('file.hdr file.img', 'file', 'prefix', 'file'), - ('file.hdr file.img', 'file', 'primary', 'file.hdr'), - ('file.hdr file.img', 'file', 'all', 'file.hdr file.img'), - - # incomplete file pair - ('file.hdr', 'file', 'prefix', 'file'), - ('file.hdr', 'file.hdr', 'prefix', 'file'), - ('file.hdr', 'file.img', 'prefix', 'file'), - ('file.hdr', 'file', 'primary', 'file.hdr'), - ('file.hdr', 'file.hdr', 'primary', 'file.hdr'), - ('file.hdr', 'file.img', 'primary', 'file.hdr'), - ('file.hdr', 'file', 'all', 'file.hdr'), - ('file.hdr', 'file.hdr', 'all', 'file.hdr'), - ('file.hdr', 'file.img', 'all', 'file.hdr'), - - # same file specified multiple times - ('file.hdr file.img', 'file file', 'prefix', 'file'), - ('file.hdr file.img', 'file file.img', 'prefix', 'file'), - ('file.hdr file.img', 'file file.img file.hdr', 'prefix', 'file'), - ('file.hdr file.img', 'file file', 'primary', 'file.hdr'), - ('file.hdr file.img', 'file file.img', 'primary', 'file.hdr'), - ('file.hdr file.img', 'file file.img file.hdr', 'primary', 'file.hdr'), - ('file.hdr file.img', 'file file', 'all', 'file.hdr file.img'), - ('file.hdr file.img', 'file file.img', 'all', 'file.hdr file.img'), - ('file.hdr file.img', 'file file.img file.hdr', 'all', 'file.hdr file.img'), - - # multiple files same prefix - ('file.hdr file.img file.nii', 'file', 'prefix', 'file'), - ('file.hdr file.img file.nii', 'file', 'primary', 'file.hdr file.nii'), - ('file.hdr file.img file.nii', 'file', 'all', 'file.hdr file.img file.nii'), - - # multiple files - ('file1.hdr file1.img file2.nii', 'file1', 'prefix', 'file1'), - ('file1.hdr file1.img file2.nii', 'file1', 'primary', 'file1.hdr'), - ('file1.hdr file1.img file2.nii', 'file1', 'all', 'file1.hdr file1.img'), - - ('file1.hdr file1.img file2.nii', 'file1 file2', 'prefix', 'file1 file2'), - ('file1.hdr file1.img file2.nii', 'file1 file2', 'primary', 'file1.hdr file2.nii'), - ('file1.hdr file1.img file2.nii', 'file1 file2', 'all', 'file1.hdr file1.img file2.nii'), - - # no file - ('file.nii', 'bag', 'prefix', ''), - ('file.nii', 'bag', 'primary', ''), - ('file.nii', 'bag', 'all', ''), - - # incomplete prefix - ('file.nii', 'fi', 'prefix', ''), - ('file.nii', 'fi', 'primary', ''), - ('file.nii', 'fi', 'all', ''), - ] - - - for to_create, paths, output, expected in tests: - with testdir(to_create.split()) as td: - - paths = paths.split() - expected = expected.split() - result = imglob.imglob(paths, output) - - assert sorted(result) == sorted(expected) - - -def test_imglob_shouldFail(): - - with pytest.raises(ValueError): - imglob.imglob([], 'bag') diff --git a/tests/test_scripts/test_imglob.py b/tests/test_scripts/test_imglob.py index 0f8e93450..5ce2c2bc5 100644 --- a/tests/test_scripts/test_imglob.py +++ b/tests/test_scripts/test_imglob.py @@ -1,6 +1,9 @@ #!/usr/bin/env python -import mock + +from unittest import mock + +import pytest import fsl.scripts.imglob as imglob @@ -8,7 +11,7 @@ from .. import testdir from .. import CaptureStdout -def test_imglob_script_shouldPass(): +def test_imglob_shouldPass1(): # (files to create, args, expected) tests = [ @@ -50,8 +53,81 @@ def test_imglob_script_shouldPass(): assert capture.stdout.strip().split() == expected.split() +def test_imglob_shouldPass2(): + + # (files to create, paths, output, expected) + tests = [ + + # normal usage, one file + ('file.hdr file.img', 'file', None, 'file'), + ('file.hdr file.img', 'file', 'prefix', 'file'), + ('file.hdr file.img', 'file', 'primary', 'file.hdr'), + ('file.hdr file.img', 'file', 'all', 'file.hdr file.img'), + + # incomplete file pair + ('file.hdr', 'file', 'prefix', 'file'), + ('file.hdr', 'file.hdr', 'prefix', 'file'), + ('file.hdr', 'file.img', 'prefix', 'file'), + ('file.hdr', 'file', 'primary', 'file.hdr'), + ('file.hdr', 'file.hdr', 'primary', 'file.hdr'), + ('file.hdr', 'file.img', 'primary', 'file.hdr'), + ('file.hdr', 'file', 'all', 'file.hdr'), + ('file.hdr', 'file.hdr', 'all', 'file.hdr'), + ('file.hdr', 'file.img', 'all', 'file.hdr'), + + # same file specified multiple times + ('file.hdr file.img', 'file file', 'prefix', 'file'), + ('file.hdr file.img', 'file file.img', 'prefix', 'file'), + ('file.hdr file.img', 'file file.img file.hdr', 'prefix', 'file'), + ('file.hdr file.img', 'file file', 'primary', 'file.hdr'), + ('file.hdr file.img', 'file file.img', 'primary', 'file.hdr'), + ('file.hdr file.img', 'file file.img file.hdr', 'primary', 'file.hdr'), + ('file.hdr file.img', 'file file', 'all', 'file.hdr file.img'), + ('file.hdr file.img', 'file file.img', 'all', 'file.hdr file.img'), + ('file.hdr file.img', 'file file.img file.hdr', 'all', 'file.hdr file.img'), + + # multiple files same prefix + ('file.hdr file.img file.nii', 'file', 'prefix', 'file'), + ('file.hdr file.img file.nii', 'file', 'primary', 'file.hdr file.nii'), + ('file.hdr file.img file.nii', 'file', 'all', 'file.hdr file.img file.nii'), + + # multiple files + ('file1.hdr file1.img file2.nii', 'file1', 'prefix', 'file1'), + ('file1.hdr file1.img file2.nii', 'file1', 'primary', 'file1.hdr'), + ('file1.hdr file1.img file2.nii', 'file1', 'all', 'file1.hdr file1.img'), + + ('file1.hdr file1.img file2.nii', 'file1 file2', 'prefix', 'file1 file2'), + ('file1.hdr file1.img file2.nii', 'file1 file2', 'primary', 'file1.hdr file2.nii'), + ('file1.hdr file1.img file2.nii', 'file1 file2', 'all', 'file1.hdr file1.img file2.nii'), + + # no file + ('file.nii', 'bag', 'prefix', ''), + ('file.nii', 'bag', 'primary', ''), + ('file.nii', 'bag', 'all', ''), + + # incomplete prefix + ('file.nii', 'fi', 'prefix', ''), + ('file.nii', 'fi', 'primary', ''), + ('file.nii', 'fi', 'all', ''), + ] + + + for to_create, paths, output, expected in tests: + with testdir(to_create.split()) as td: + + paths = paths.split() + expected = expected.split() + result = imglob.imglob(paths, output) + + assert sorted(result) == sorted(expected) + + + def test_imglob_script_shouldFail(): + with pytest.raises(ValueError): + imglob.imglob([], 'bag') + capture = CaptureStdout() with capture: -- GitLab