Skip to content

Commit 027d47e

Browse files
author
Shoshana Berleant
committed
smarter tests
1 parent 13838bd commit 027d47e

File tree

2 files changed

+27
-27
lines changed

2 files changed

+27
-27
lines changed

nipype/algorithms/tests/test_compcor.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import nibabel as nb
1010
import numpy as np
1111
import os
12-
from hashlib import sha1
1312

1413
class TestCompCor(unittest.TestCase):
1514
''' Note: Tests currently do a poor job of testing functionality '''

nipype/algorithms/tests/test_tsnr.py

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: nil -*-
22
# vi: set ft=python sts=4 ts=4 sw=4 et:
3-
import nipype
4-
from ...testing import assert_equal, assert_true, skipif, utils
3+
4+
from ...testing import (assert_equal, assert_true, assert_almost_equal,
5+
skipif, utils)
56
from ..misc import TSNR
67

7-
from hashlib import sha1
88
import unittest
99
import mock
1010
import nibabel as nb
@@ -39,9 +39,9 @@ def test_tsnr(self):
3939

4040
# assert
4141
self.assert_expected_outputs(tsnrresult, {
42-
'mean_file': '1a55bcdf49901f25a2a838c90769989b9e4f2f19',
43-
'stddev_file': '0ba52a51fae90a9db6090c735432df5b742d663a',
44-
'tsnr_file': 'a794fc55766c8ad725437d3ff8b1153bd5f6e9b0'
42+
'mean_file': (2.8, 7.4),
43+
'stddev_file': (0.8, 2.9),
44+
'tsnr_file': (1.3, 9.25)
4545
})
4646

4747
def test_tsnr_withpoly1(self):
@@ -51,10 +51,10 @@ def test_tsnr_withpoly1(self):
5151

5252
# assert
5353
self.assert_expected_outputs_poly(tsnrresult, {
54-
'detrended_file': 'ee4f6c0b0e8c547617fc11aa50cf659436f9ccf0',
55-
'mean_file': '1a55bcdf49901f25a2a838c90769989b9e4f2f19',
56-
'stddev_file': 'e61d94e3cfea20b0c86c81bfdf80d82c55e9203b',
57-
'tsnr_file': 'a49f1cbd88f2aa71183dcd7aa4b86b17df622f0c'
54+
'detrended_file': (-0.1, 8.7),
55+
'mean_file': (2.8, 7.4),
56+
'stddev_file': (0.75, 2.75),
57+
'tsnr_file': (1.4, 9.9)
5858
})
5959

6060
def test_tsnr_withpoly2(self):
@@ -64,10 +64,10 @@ def test_tsnr_withpoly2(self):
6464

6565
# assert
6666
self.assert_expected_outputs_poly(tsnrresult, {
67-
'detrended_file': '22cb7f058d61cc090eb1a9dd7d31550bd4362a61',
68-
'mean_file': '4cee6776461f6bc238d11a55c0a8d1947a5732df',
69-
'stddev_file': '7267de4d9b63fcc553115c0198f1fa3bbb6a5a13',
70-
'tsnr_file': '1c6ed05f94806838f7b563df65900f37e60f8a6d'
67+
'detrended_file': (-0.22, 8.55),
68+
'mean_file': (2.8, 7.7),
69+
'stddev_file': (0.21, 2.4),
70+
'tsnr_file': (1.7, 35.9)
7171
})
7272

7373
def test_tsnr_withpoly3(self):
@@ -77,20 +77,20 @@ def test_tsnr_withpoly3(self):
7777

7878
# assert
7979
self.assert_expected_outputs_poly(tsnrresult, {
80-
'detrended_file': '3f2c1c7da233f128a7020b6fed79d6be2ec59fca',
81-
'mean_file': '4cee6776461f6bc238d11a55c0a8d1947a5732df',
82-
'stddev_file': '82bb793b76fab503d1d6b3e2d1b20a1bdebd7a2a',
83-
'tsnr_file': 'e004bd6096a0077b15058aabd4b0339bf6e21f64'
80+
'detrended_file': (1.8, 7.95),
81+
'mean_file': (2.8, 7.7),
82+
'stddev_file': (0.1, 1.7),
83+
'tsnr_file': (2.6, 57.3)
8484
})
8585

86-
def assert_expected_outputs_poly(self, tsnrresult, hash_dict):
86+
def assert_expected_outputs_poly(self, tsnrresult, expected_ranges):
8787
assert_equal(os.path.basename(tsnrresult.outputs.detrended_file),
8888
self.out_filenames['detrended_file'])
89-
self.assert_expected_outputs(tsnrresult, hash_dict)
89+
self.assert_expected_outputs(tsnrresult, expected_ranges)
9090

91-
def assert_expected_outputs(self, tsnrresult, hash_dict):
91+
def assert_expected_outputs(self, tsnrresult, expected_ranges):
9292
self.assert_default_outputs(tsnrresult.outputs)
93-
self.assert_unchanged(hash_dict)
93+
self.assert_unchanged(expected_ranges)
9494

9595
def assert_default_outputs(self, outputs):
9696
assert_equal(os.path.basename(outputs.mean_file),
@@ -100,10 +100,11 @@ def assert_default_outputs(self, outputs):
100100
assert_equal(os.path.basename(outputs.tsnr_file),
101101
self.out_filenames['tsnr_file'])
102102

103-
def assert_unchanged(self, expected_hashes):
104-
for key, hexhash in expected_hashes.iteritems():
105-
data = np.asanyarray(nb.load(self.out_filenames[key])._data)
106-
assert_equal(sha1(str(data)).hexdigest(), hexhash)
103+
def assert_unchanged(self, expected_ranges):
104+
for key, (min_, max_) in expected_ranges.iteritems():
105+
data = np.asarray(nb.load(self.out_filenames[key])._data)
106+
assert_almost_equal(np.amin(data), min_, decimal=1)
107+
assert_almost_equal(np.amax(data), max_, decimal=1)
107108

108109
def tearDown(self):
109110
utils.remove_nii(self.in_filenames.values())

0 commit comments

Comments
 (0)