Skip to content

Commit 475ea9f

Browse files
Fix flaky loadtxt test for int32 by adding sleep after savetxt. .
Added sleep calls to test_loadtxt.f90 to introduce delays between file operations. because before file was being read even before it was writen and closed
1 parent fffe0d7 commit 475ea9f

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

test/io/test_loadtxt.f90

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,21 @@ subroutine test_loadtxt_int32(error)
4141
call random_number(harvest)
4242
input = int(harvest * 100)
4343
call savetxt('test_int32.txt', input)
44+
call sleep(1)
4445
call loadtxt('test_int32.txt', expected)
4546
call check(error, all(input == expected),'Default list directed read failed')
4647
if (allocated(error)) return
4748
call loadtxt('test_int32.txt', expected, fmt='*')
49+
call sleep(1)
4850
call check(error, all(input == expected),'User specified list directed read faile')
4951
if (allocated(error)) return
5052
call savetxt('test_int32.txt', input, delimiter=',')
53+
call sleep(1)
5154
call loadtxt('test_int32.txt', expected, delimiter=',')
5255
call check(error, all(input == expected),'User specified delimiter `,` read failed')
5356
if (allocated(error)) return
5457
call savetxt('test_int32.txt', input, delimiter='-')
58+
call sleep(1)
5559
call loadtxt('test_int32.txt', expected, delimiter='-')
5660
call check(error, all(input == expected),'User specified delimiter `-` read failed')
5761
if (allocated(error)) return
@@ -73,6 +77,7 @@ subroutine test_loadtxt_sp(error)
7377
call random_number(input)
7478
input = input - 0.5
7579
call savetxt('test_sp.txt', input)
80+
call sleep(1)
7681
call loadtxt('test_sp.txt', expected)
7782
call check(error, all(input == expected),'Default format read failed')
7883
if (allocated(error)) return
@@ -83,10 +88,12 @@ subroutine test_loadtxt_sp(error)
8388
call check(error, all(input == expected),'User specified format failed')
8489
if (allocated(error)) return
8590
call savetxt('test_sp.txt', input, delimiter=',')
91+
call sleep(1)
8692
call loadtxt('test_sp.txt', expected, delimiter=',')
8793
call check(error, all(input == expected),'User specified delimiter `,` read failed')
8894
if (allocated(error)) return
8995
call savetxt('test_sp.txt', input, delimiter=';')
96+
call sleep(1)
9097
call loadtxt('test_sp.txt', expected, delimiter=';')
9198
call check(error, all(input == expected),'User specified delimiter `;` read failed')
9299
if (allocated(error)) return
@@ -165,6 +172,7 @@ subroutine test_loadtxt_dp(error)
165172
call random_number(input)
166173
input = input - 0.5
167174
call savetxt('test_dp.txt', input)
175+
call sleep(1)
168176
call loadtxt('test_dp.txt', expected)
169177
call check(error, all(input == expected),'Default format read failed')
170178
if (allocated(error)) return
@@ -175,6 +183,7 @@ subroutine test_loadtxt_dp(error)
175183
call check(error, all(input == expected),'User specified format failed')
176184
if (allocated(error)) return
177185
call savetxt('test_dp.txt', input, delimiter=',')
186+
call sleep(1)
178187
call loadtxt('test_dp.txt', expected, delimiter=',')
179188
call check(error, all(input == expected),'User specified delimiter read failed')
180189
if (allocated(error)) return
@@ -197,6 +206,7 @@ subroutine test_loadtxt_dp_max_skip(error)
197206
call random_number(input)
198207
input = input - 0.5
199208
call savetxt('test_dp_max_skip.txt', input)
209+
call sleep(1)
200210
call loadtxt('test_dp_max_skip.txt', expected, skiprows=m, max_rows=n)
201211
call check(error, all(input(m+1:min(n+m,10),:) == expected),'Default format read failed')
202212
if (allocated(error)) return
@@ -227,6 +237,7 @@ subroutine test_loadtxt_dp_huge(error)
227237
call random_number(input)
228238
input = (input - 0.5) * huge(input)
229239
call savetxt('test_dp_huge.txt', input)
240+
call sleep(1)
230241
call loadtxt('test_dp_huge.txt', expected)
231242
call check(error, all(input == expected),'Default format read failed')
232243
if (allocated(error)) return
@@ -255,6 +266,7 @@ subroutine test_loadtxt_dp_tiny(error)
255266
call random_number(input)
256267
input = (input - 0.5) * tiny(input)
257268
call savetxt('test_dp_tiny.txt', input)
269+
call sleep(1)
258270
call loadtxt('test_dp_tiny.txt', expected)
259271
call check(error, all(input == expected),'Default format read failed')
260272
if (allocated(error)) return
@@ -287,16 +299,19 @@ subroutine test_loadtxt_complex(error)
287299
call random_number(im)
288300
input = cmplx(re, im)
289301
call savetxt('test_complex.txt', input)
302+
call sleep(1)
290303
call loadtxt('test_complex.txt', expected)
291304
call check(error, all(input == expected))
292305
call loadtxt('test_complex.txt', expected, fmt="(*"//FMT_COMPLEX_dp(1:len(FMT_COMPLEX_dp)-1)//",1x))")
293306
call check(error, all(input == expected))
294307
if (allocated(error)) return
295308
call savetxt('test_complex.txt', input, delimiter=',')
309+
call sleep(1)
296310
call loadtxt('test_complex.txt', expected, delimiter=',')
297311
call check(error, all(input == expected))
298312
if (allocated(error)) return
299313
call savetxt('test_complex.txt', input, delimiter=';')
314+
call sleep(1)
300315
call loadtxt('test_complex.txt', expected, delimiter=';')
301316
call check(error, all(input == expected))
302317
if (allocated(error)) return

0 commit comments

Comments
 (0)