diff options
author | Charles Harris <charlesr.harris@gmail.com> | 2014-10-09 19:35:18 -0600 |
---|---|---|
committer | Charles Harris <charlesr.harris@gmail.com> | 2014-10-09 19:39:07 -0600 |
commit | e98686d912ddc641f11b7531d164a5b09194b1df (patch) | |
tree | 6cce437ae983fad2ca03df61b847145d3c2fbf42 /numpy/f2py/tests/test_regression.py | |
parent | 1d6ef527cc9e63272cf20bdfab0accb40cb12635 (diff) | |
download | numpy-e98686d912ddc641f11b7531d164a5b09194b1df.tar.gz |
TST: Add basic test for compiling with intent(in out).
This checks that the compilation works and that the expected error
is raised when non-contiguous arrays are passed as intent(in out).
Diffstat (limited to 'numpy/f2py/tests/test_regression.py')
-rw-r--r-- | numpy/f2py/tests/test_regression.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/numpy/f2py/tests/test_regression.py b/numpy/f2py/tests/test_regression.py new file mode 100644 index 000000000..9bd3f3fe3 --- /dev/null +++ b/numpy/f2py/tests/test_regression.py @@ -0,0 +1,32 @@ +from __future__ import division, absolute_import, print_function + +import os +import math + +import numpy as np +from numpy.testing import dec, assert_raises, assert_equal + +import util + +def _path(*a): + return os.path.join(*((os.path.dirname(__file__),) + a)) + +class TestIntentInOut(util.F2PyTest): + # Check that intent(in out) translates as intent(inout) + sources = [_path('src', 'regression', 'inout.f90')] + + @dec.slow + def test_inout(self): + # non-contiguous should raise error + x = np.arange(6, dtype=np.float32)[::2] + assert_raises(ValueError, self.module.foo, x) + + # check values with contiguous array + x = np.arange(3, dtype=np.float32) + self.module.foo(x) + assert_equal(x, [3, 1, 2]) + + +if __name__ == "__main__": + import nose + nose.runmodule() |