Skip to content

Commit c1cf2bc

Browse files
HaoZekeP-Kaempf
andcommitted
TST: F2PY test regression on variables
Co-authored-by: P-Kaempf <[email protected]>
1 parent 7c0e2e4 commit c1cf2bc

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
MODULE MOD_TYPES
2+
INTEGER, PARAMETER :: SP = SELECTED_REAL_KIND(6, 37)
3+
INTEGER, PARAMETER :: DP = SELECTED_REAL_KIND(15, 307)
4+
END MODULE
5+
!
6+
MODULE F_GLOBALS
7+
USE MOD_TYPES
8+
IMPLICIT NONE
9+
INTEGER, PARAMETER :: N_MAX = 16
10+
INTEGER, PARAMETER :: I_MAX = 18
11+
INTEGER, PARAMETER :: J_MAX = 72
12+
REAL(SP) :: XREF
13+
END MODULE F_GLOBALS
14+
!
15+
SUBROUTINE DUMMY ()
16+
!
17+
USE F_GLOBALS
18+
USE MOD_TYPES
19+
IMPLICIT NONE
20+
!
21+
REAL(SP) :: MINIMAL
22+
MINIMAL = 0.01*XREF
23+
RETURN
24+
!
25+
END SUBROUTINE DUMMY

numpy/f2py/tests/test_regression.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,3 +151,15 @@ def test_gh25784():
151151
)
152152
except ImportError as rerr:
153153
assert "unknown_subroutine_" in str(rerr)
154+
155+
156+
@pytest.mark.slow
157+
class TestAssignmentOnlyModules(util.F2PyTest):
158+
# Ensure that variables are exposed without functions or subroutines in a module
159+
sources = [util.getpath("tests", "src", "regression", "assignOnlyModule.f90")]
160+
161+
@pytest.mark.slow
162+
def test_gh27167(self):
163+
assert (self.module.f_globals.n_max == 16)
164+
assert (self.module.f_globals.i_max == 18)
165+
assert (self.module.f_globals.j_max == 72)

0 commit comments

Comments
 (0)