summaryrefslogtreecommitdiff
path: root/numpy/f2py/tests/test_regression.py
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2014-10-09 19:35:18 -0600
committerCharles Harris <charlesr.harris@gmail.com>2014-10-09 19:39:07 -0600
commite98686d912ddc641f11b7531d164a5b09194b1df (patch)
tree6cce437ae983fad2ca03df61b847145d3c2fbf42 /numpy/f2py/tests/test_regression.py
parent1d6ef527cc9e63272cf20bdfab0accb40cb12635 (diff)
downloadnumpy-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.py32
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()