mirror of
https://github.com/vlang/v.git
synced 2025-09-13 09:25:45 -04:00
tools: ease diagnosing CI failures of vtimeout_test.v
This commit is contained in:
parent
f9a4f8f19f
commit
e90c0a8eb0
@ -1,4 +1,5 @@
|
|||||||
import os
|
import os
|
||||||
|
import time
|
||||||
|
|
||||||
const qvexe = os.quoted_path(@VEXE)
|
const qvexe = os.quoted_path(@VEXE)
|
||||||
|
|
||||||
@ -18,24 +19,32 @@ fn depend_on_command(cmd string) ? {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn execute(cmd string) os.Result {
|
||||||
|
sw := time.new_stopwatch()
|
||||||
|
res := os.execute(cmd)
|
||||||
|
dt := sw.elapsed().milliseconds()
|
||||||
|
eprintln('>> command: `${cmd:-60s}`, took: ${dt:5} ms, exit_code: ${res.exit_code:3}, output.len: ${res.output.len}')
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
fn test_normal_exit_without_timeout_echo() {
|
fn test_normal_exit_without_timeout_echo() {
|
||||||
depend_on_command('echo') or { return }
|
depend_on_command('echo') or { return }
|
||||||
ee := os.execute('${qvexe} timeout 0.2 echo')
|
ee := execute('${qvexe} timeout 0.2 echo')
|
||||||
assert ee.exit_code == 0, ee.output
|
assert ee.exit_code == 0, ee.output
|
||||||
res := os.execute('${qvexe} timeout 0.2 echo z123')
|
res := execute('${qvexe} timeout 0.2 echo z123')
|
||||||
assert res.exit_code == 0, res.output
|
assert res.exit_code == 0, res.output
|
||||||
assert res.output.contains('z123')
|
assert res.output.contains('z123')
|
||||||
}
|
}
|
||||||
|
|
||||||
fn test_normal_exit_without_timeout_sleep() {
|
fn test_normal_exit_without_timeout_sleep() {
|
||||||
depend_on_command('sleep') or { return }
|
depend_on_command('sleep') or { return }
|
||||||
res := os.execute('${qvexe} timeout 0.4 sleep 0.1')
|
res := execute('${qvexe} timeout 0.4 sleep 0.1')
|
||||||
assert res.exit_code == 0, res.output
|
assert res.exit_code == 0, res.output
|
||||||
assert res.output == ''
|
assert res.output == ''
|
||||||
}
|
}
|
||||||
|
|
||||||
fn test_exit_with_timeout() {
|
fn test_exit_with_timeout() {
|
||||||
depend_on_command('sleep') or { return }
|
depend_on_command('sleep') or { return }
|
||||||
res := os.execute('${qvexe} timeout 0.2 sleep 2')
|
res := execute('${qvexe} timeout 0.2 sleep 2')
|
||||||
assert res.exit_code == 124, res.output
|
assert res.exit_code == 124, res.output
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user