patch etsf-io tests (#32666)
(Patches from meisam.tabriz@mpcdf.mpg.de and smoke tests from @fangohr)
This commit is contained in:
parent
7d250c4bea
commit
3ffc7f4281
@ -25,6 +25,9 @@ class EtsfIo(Package):
|
||||
depends_on("netcdf-fortran")
|
||||
depends_on("hdf5+mpi~cxx", when="+mpi") # required for NetCDF-4 support
|
||||
|
||||
patch("tests_module.patch")
|
||||
patch("tests_init.patch")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = ["--prefix=%s" % prefix]
|
||||
oapp = options.append
|
||||
@ -48,3 +51,24 @@ def install(self, spec, prefix):
|
||||
make()
|
||||
make("check")
|
||||
make("install")
|
||||
|
||||
def test(self):
|
||||
"""Run this smoke test when requested explicitly"""
|
||||
|
||||
# Test is to run "etsf_io --help"
|
||||
spec = self.spec
|
||||
exe = join_path(spec["etsf-io"].prefix.bin, "etsf_io")
|
||||
options = ["--help"]
|
||||
purpose = "Check etsf_io can execute (--help)"
|
||||
expected = ["Usage: etsf_io"]
|
||||
|
||||
self.run_test(
|
||||
exe,
|
||||
options=options,
|
||||
expected=expected,
|
||||
status=[0],
|
||||
installed=False,
|
||||
purpose=purpose,
|
||||
skip_missing=False,
|
||||
work_dir=None,
|
||||
)
|
||||
|
14
var/spack/repos/builtin/packages/etsf-io/tests_init.patch
Normal file
14
var/spack/repos/builtin/packages/etsf-io/tests_init.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- etsf-io/tests/group_level/tests_init.f90.orig 2022-06-13 21:38:17.550243223 +0200
|
||||
+++ etsf-io/tests/group_level/tests_init.f90 2022-06-13 21:35:32.735709916 +0200
|
||||
@@ -20,9 +20,9 @@
|
||||
type(etsf_io_low_error), intent(in) :: error
|
||||
|
||||
if (lstat) then
|
||||
- write(*, "(A,A,A,A)") "== ", name, repeat(" ", 68 - len(name)), "OK =="
|
||||
+ write(*, "(A,A,A,A)") "== ", name, repeat(" ", 88 - len(name)), "OK =="
|
||||
else
|
||||
- write(*, "(A,A,A,A)") "== ", name, repeat(" ", 68 - len(name)), "Failed =="
|
||||
+ write(*, "(A,A,A,A)") "== ", name, repeat(" ", 88 - len(name)), "Failed =="
|
||||
call etsf_io_low_error_handle(error)
|
||||
end if
|
||||
end subroutine tests_write_status
|
21
var/spack/repos/builtin/packages/etsf-io/tests_module.patch
Normal file
21
var/spack/repos/builtin/packages/etsf-io/tests_module.patch
Normal file
@ -0,0 +1,21 @@
|
||||
--- etsf-io/tests/group_level/tests_module.f90.orig 2022-06-13 21:28:19.013027453 +0200
|
||||
+++ etsf-io/tests/group_level/tests_module.f90 2022-06-13 21:34:27.062699770 +0200
|
||||
@@ -85,7 +85,7 @@
|
||||
character(len = *), parameter :: me = "check_read_nD"
|
||||
integer, allocatable :: int_array(:)
|
||||
double precision, allocatable :: dbl_array(:)
|
||||
- character(len = 256), allocatable :: strings(:)
|
||||
+ character(len = dims(1)), allocatable :: strings(:)
|
||||
|
||||
! Allocate temporary read space
|
||||
if (type == "integer") then
|
||||
@@ -370,8 +370,8 @@
|
||||
end subroutine allocate_str_1D
|
||||
|
||||
subroutine check_mem_str_0D(string, length, varname, lstat, error_data)
|
||||
- character(len = length), intent(in) :: string
|
||||
integer, intent(in) :: length
|
||||
+ character(len = length), intent(in) :: string
|
||||
character(len = *), intent(in) :: varname
|
||||
logical, intent(out) :: lstat
|
||||
type(etsf_io_low_error), intent(inout) :: error_data
|
Loading…
Reference in New Issue
Block a user