diff options
| author | Rohit Goswami <rog32@hi.is> | 2021-12-04 19:33:43 +0000 |
|---|---|---|
| committer | Rohit Goswami <rog32@hi.is> | 2021-12-06 00:13:01 +0000 |
| commit | 8c588512d69574e4b6bfe0d21f1922a70ec56812 (patch) | |
| tree | c7ac031335da8f5b32140d05c7093f93d206f511 /numpy/f2py/tests/src/string/fixed_string.f90 | |
| parent | d14d2c359fcbd499b73d254f0c20dd1a884ff9a3 (diff) | |
| download | numpy-8c588512d69574e4b6bfe0d21f1922a70ec56812.tar.gz | |
MAINT,TST: Refactor F2PY tests
Diffstat (limited to 'numpy/f2py/tests/src/string/fixed_string.f90')
| -rw-r--r-- | numpy/f2py/tests/src/string/fixed_string.f90 | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/numpy/f2py/tests/src/string/fixed_string.f90 b/numpy/f2py/tests/src/string/fixed_string.f90 new file mode 100644 index 000000000..7fd158543 --- /dev/null +++ b/numpy/f2py/tests/src/string/fixed_string.f90 @@ -0,0 +1,34 @@ +function sint(s) result(i) + implicit none + character(len=*) :: s + integer :: j, i + i = 0 + do j=len(s), 1, -1 + if (.not.((i.eq.0).and.(s(j:j).eq.' '))) then + i = i + ichar(s(j:j)) * 10 ** (j - 1) + endif + end do + return + end function sint + + function test_in_bytes4(a) result (i) + implicit none + integer :: sint + character(len=4) :: a + integer :: i + i = sint(a) + a(1:1) = 'A' + return + end function test_in_bytes4 + + function test_inout_bytes4(a) result (i) + implicit none + integer :: sint + character(len=4), intent(inout) :: a + integer :: i + if (a(1:1).ne.' ') then + a(1:1) = 'E' + endif + i = sint(a) + return + end function test_inout_bytes4 |
