@@ -150,9 +150,9 @@ subroutine test_case_report(name, suite)
150150 end do
151151
152152 end subroutine test_case_report
153-
153+
154154 subroutine test_suite_report (suite )
155-
155+
156156 type (test_suite_type), intent (in ), optional , target :: suite
157157 type (test_suite_type), pointer :: dummy_suite
158158 type (test_case_type), pointer :: test_case
@@ -167,30 +167,30 @@ subroutine test_suite_report(suite)
167167 else
168168 dummy_suite = > default_test_suite
169169 end if
170-
170+
171171 call log_header(log_out_unit, ' Report of Suite: ' // trim (dummy_suite% name))
172-
172+
173173 num_test_case = 0
174174 num_all_succeed_assert = 0
175175 num_all_assert = 0
176-
176+
177177 ! prints all test cases
178178 if (associated (dummy_suite% test_case_head)) then
179179 write (log_out_unit, * ) ' +-> Details:'
180180 write (log_out_unit, * ) ' | |'
181-
181+
182182 test_case = > dummy_suite% test_case_head
183183 do while (associated (test_case))
184184 num_test_case = num_test_case + 1
185-
185+
186186 write (log_out_unit, * ) ' | +-> ' // trim (test_case% name) // ' : ' , trim (to_string(test_case% num_succeed_assert)), ' of ' // &
187187 trim (to_string(test_case% num_assert)) // ' assertions succeed.'
188-
188+
189189 num_all_succeed_assert = num_all_succeed_assert + test_case% num_succeed_assert
190190 num_all_assert = num_all_assert + test_case% num_assert
191-
191+
192192 assert_result = > test_case% assert_result_head
193-
193+
194194 do while (associated (assert_result))
195195 if (.not. assert_result% passed) then
196196 write (log_err_unit, * ) ' | | |'
@@ -206,19 +206,19 @@ subroutine test_suite_report(suite)
206206 end if
207207 assert_result = > assert_result% next
208208 end do
209-
209+
210210 test_case = > test_case% next
211211 write (log_err_unit, * ) ' | |'
212212 end do
213213 end if
214-
214+
215215 write (log_out_unit, * ) ' |'
216- write (log_out_unit, * ) ' +-> Summary:'
216+ write (log_out_unit, * ) ' +-> Summary:'
217217 write (log_out_unit, * ) ' | +-> ' // trim (dummy_suite% name) // ' : ' , trim (to_string(num_all_succeed_assert)), ' of ' // &
218218 trim (to_string(num_all_assert)) // ' assertions succeed.'
219-
219+
220220 call log_footer(log_out_unit)
221-
221+
222222 end subroutine test_suite_report
223223
224224 subroutine test_case_append_assert (assert_operator , passed , left_operand , right_operand , file_name , line_number , suite )
@@ -240,6 +240,8 @@ subroutine test_case_append_assert(assert_operator, passed, left_operand, right_
240240 dummy_suite = > default_test_suite
241241 end if
242242
243+ if (.not. associated (dummy_suite% test_case_tail)) call test_case_create(' default' )
244+
243245 if (.not. associated (dummy_suite% test_case_tail% assert_result_head)) then
244246 allocate (dummy_suite% test_case_tail% assert_result_head)
245247 dummy_suite% test_case_tail% assert_result_tail = > dummy_suite% test_case_tail% assert_result_head
0 commit comments