11 public :: utest_start_test, utest_stop_test, utest_start_timer, &
12 utest_stop_timer, utest_v_r, utest_r, utest_exit_tests
14 integer :: utest_testcount, utest_errorcount
19 subroutine utest_start_test (name)
20 character(len=*),
intent(in) :: name
23 print *,
"testing ", name,
":"
24 end subroutine utest_start_test
26 subroutine utest_stop_test ()
27 if (utest_errorcount == 0)
then
28 print *,
"all",utest_testcount,
"test(s) succeeded"
30 write(0,*) utest_errorcount,
" out of ", &
31 utest_testcount,
" test(s) failed"
33 end subroutine utest_stop_test
35 subroutine utest_start_timer (name)
36 character(len=*),
intent(in) :: name
38 print *,
"start timing ", name
39 end subroutine utest_start_timer
41 subroutine utest_stop_timer ()
43 print
'(" elapsed time:",f6.3," seconds.")',
end-start
44 end subroutine utest_stop_timer
46 subroutine utest_v_r(arg, file, line)
48 logical,
intent(in) :: arg
49 integer,
intent(in) :: line
50 character(len=*),
intent(in) :: file
52 utest_testcount = utest_testcount + 1
54 print *,
"- test", utest_testcount,
"succeeded"
57 utest_errorcount = utest_errorcount + 1
58 write(0,*)
"- test", utest_testcount,
"failed (",file,
" :", line,
")"
61 end subroutine utest_v_r
63 subroutine utest_r(arg, file, line)
65 logical,
intent(in) :: arg
66 integer,
intent(in) :: line
67 character(len=*),
intent(in) :: file
69 utest_testcount = utest_testcount + 1
71 print *,
"- test", utest_testcount,
"succeeded"
74 utest_errorcount = utest_errorcount + 1
75 write(0,*)
"- test", utest_testcount,
"failed (",file,
" :", line,
")"
78 end subroutine utest_r
80 subroutine utest_exit_tests()
82 if (utest_errorcount > 0)
then
85 end subroutine utest_exit_tests