Skip to content
Snippets Groups Projects

Draft: add test for util_stride

Open Jonas Jucker requested to merge test_util_stride into master
1 file
+ 73
4
Compare changes
  • Side-by-side
  • Inline
@@ -11,18 +11,87 @@
MODULE test_mo_util_timer
USE FORTUTF
USE ISO_C_BINDING, ONLY: c_double, c_int, c_ptr, c_double
USE mo_util_timer
CONTAINS
SUBROUTINE TEST_cputime
USE ISO_C_BINDING, ONLY: c_ptr, c_double, c_int
USE mo_util_timer
SUBROUTINE TEST_gettimeofday
REAL(c_double) :: time1, time2
CALL TAG_TEST("TEST_gettimeofday")
time1 = util_gettimeofday()
time2 = util_gettimeofday()
CALL ASSERT_ALMOST_EQUAL(time1, time2)
END SUBROUTINE
END SUBROUTINE TEST_gettimeofday
SUBROUTINE TEST_util_cputime
INTEGER(c_int) :: f_result
REAL(c_double) :: user_time, system_time
CALL TAG_TEST("TEST_util_cputime")
f_result = util_cputime(user_time, system_time)
CALL ASSERT_EQUAL(f_result, 0)
END SUBROUTINE TEST_util_cputime
SUBROUTINE TEST_util_walltime
USE ISO_C_BINDING, ONLY: c_double
REAL(c_double) :: f_result
CALL TAG_TEST("TEST_util_walltime")
f_result = util_walltime()
CALL ASSERT_EQUAL(f_result >= 0.0, .TRUE.)
END SUBROUTINE TEST_util_walltime
SUBROUTINE TEST_util_init_real_time
CALL TAG_TEST("TEST_util_init_real_time")
CALL util_init_real_time()
CALL SUCCEED
END SUBROUTINE TEST_util_init_real_time
SUBROUTINE TEST_util_get_real_time_size
USE ISO_C_BINDING, ONLY: c_int
INTEGER(c_int) :: rt_size
CALL TAG_TEST("TEST_util_get_real_time_size")
CALL util_get_real_time_size(rt_size)
CALL ASSERT_EQUAL(rt_size > 0, .TRUE.)
END SUBROUTINE TEST_util_get_real_time_size
SUBROUTINE TEST_util_read_real_time
USE ISO_C_BINDING, ONLY: c_ptr, c_loc
TYPE(c_ptr) :: it
REAL, DIMENSION(1), TARGET :: array
CALL TAG_TEST("TEST_util_read_real_time")
array = [0.0]
it = C_LOC(array(1))
CALL util_read_real_time(it)
CALL SUCCEED
END SUBROUTINE TEST_util_read_real_time
SUBROUTINE TEST_util_diff_real_time
USE ISO_C_BINDING, ONLY: c_ptr, c_double, c_loc
TYPE(c_ptr) :: it1, it2
REAL(c_double) :: t
REAL, DIMENSION(1), TARGET :: array
CALL TAG_TEST("TEST_util_diff_real_time")
array = [0.0]
it1 = C_LOC(array(1))
CALL util_read_real_time(it1)
array = [0.0]
it2 = C_LOC(array(1))
CALL util_read_real_time(it2)
CALL util_diff_real_time(it1, it2, t)
CALL ASSERT_EQUAL(t >= 0.0, .TRUE.)
END SUBROUTINE TEST_util_diff_real_time
END MODULE test_mo_util_timer
Loading