writing tests will be tricky as: - it seems native aligns waits on wall clock seconds, not on elapsed milliseconds (so a N second wait can really take between )N-1,N+1( seconds); can be worked around by taking some latitude in the measured elapse interval - as Myah stated, output is refreshed at least once per second (didn't check if it was more), but not sure we want to mimic that char by char. moreover, timeout.exe is more about its behavior rather than its output (contrary to the MR you're referring to) - timeout fails if input is not bound to a console (so harder to write tests to interrupt a timeout by keystrokes); console keystrokes can be simulated though but not very straightforward
so this leaves us with: - simple child process creation with something like "timeout /t 6" and measure child run time and assume success for say runtime between say 4 and 8 seconds (I wouldn't even care for output at this stage)