1+ .. _dev_testing_nipype :
2+
13==============
24Testing nipype
35==============
@@ -14,25 +16,69 @@ If both batteries of tests are passing, the following badges should be shown in
1416 :target: https://circleci.com/gh/nipy/nipype/tree/master
1517
1618
17- Tests implementation
18- --------------------
19+ Installation for developers
20+ ---------------------------
21+
22+ To check out the latest development version::
23+
24+ git clone https://github.com/nipy/nipype.git
25+
26+ After cloning::
27+
28+ cd nipype
29+ pip install -r requirements.txt
30+ python setup.py develop
31+
32+ or::
33+
34+ cd nipype
35+ pip install -r requirements.txt
36+ pip install -e .[tests]
37+
38+
39+
40+ Test implementation
41+ -------------------
1942
2043Nipype testing framework is built upon `nose <http://nose.readthedocs.io/en/latest/ >`_.
2144By the time these guidelines are written, Nipype implements 17638 tests.
2245
23- To run the tests locally, first get nose installed::
46+ After installation in developer mode, the tests can be run with the
47+ following simple command at the root folder of the project ::
48+
49+ make tests
2450
25- pip install nose
51+ If `` make `` is not installed in the system, it is possible to run the tests using::
2652
53+ python -W once:FSL:UserWarning:nipype `which nosetests` --with-doctest \
54+ --with-doctest-ignore-unicode --logging-level=DEBUG --verbosity=3 nipype
2755
28- Then, after nipype is `installed in developer mode <../users/install.html#nipype-for-developers >`_,
29- the tests can be run with the following simple command::
3056
31- make tests
57+ A successful test run should complete in a few minutes and end with
58+ something like::
3259
60+ ----------------------------------------------------------------------
61+ Ran 17922 tests in 107.254s
62+
63+ OK (SKIP=27)
64+
65+
66+ All tests should pass (unless you're missing a dependency). If the ``SUBJECTS_DIR` ``
67+ environment variable is not set, some FreeSurfer related tests will fail.
68+ If any of the tests failed, please report them on our `bug tracker
69+ <http://github.com/nipy/nipype/issues> `_.
70+
71+ On Debian systems, set the following environment variable before running
72+ tests::
73+
74+ export MATLABCMD=$pathtomatlabdir/bin/$platform/MATLAB
75+
76+ where ``$pathtomatlabdir `` is the path to your matlab installation and
77+ ``$platform `` is the directory referring to x86 or x64 installations
78+ (typically ``glnxa64 `` on 64-bit installations).
3379
3480Skip tests
35- ----------
81+ ~~~~~~~~~~
3682
3783Nipype will skip some tests depending on the currently available software and data
3884dependencies. Installing software dependencies and downloading the necessary data
@@ -45,6 +91,16 @@ To enable the tests depending on these data, just unpack the targz file and set
4591variable to point to that folder.
4692
4793
94+ Avoiding any MATLAB calls from testing
95+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
96+
97+ On unix systems, set an empty environment variable::
98+
99+ export NIPYPE_NO_MATLAB=
100+
101+ This will skip any tests that require matlab.
102+
103+
48104Testing Nipype using Docker
49105---------------------------
50106
0 commit comments