tests/functional: remove time.sleep usage from tuxrun tests
authorDaniel P. Berrangé <berrange@redhat.com>
Thu, 21 Nov 2024 16:57:43 +0000 (16:57 +0000)
committerAlex Bennée <alex.bennee@linaro.org>
Mon, 25 Nov 2024 10:13:41 +0000 (10:13 +0000)
commit97d79319f0475fe248962166d9ec4ecf6477d8cc
tree8473b0f68e95d6cd6ae0ffddbcb8e50efc4dd4e6
parentcdad03b74f759857d784e074755f0d96a64d69af
tests/functional: remove time.sleep usage from tuxrun tests

The tuxrun tests send a series of strings to the guest to login
and then run commands. Since we have been unable to match on
console output that isn't followed by a newline, the test used
many time.sleep() statements to pretend to synchronize with
the guest.

This has proved to be unreliable for the aarch64be instance of
the tuxrun tests, with the test often hanging. The hang is a
very subtle timing problem, and it is suspected that some
(otherwise apparently harmless) I/O error messages could be
resulting in full FIFO buffers, stalling interaction with
the guest.

With the newly rewritten console interaction able to match
strings that don't have a following newline, the tux run
tests can now match directly on the login prompt, and/or
shell PS1 prompt.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2689
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20241121154218.1423005-17-berrange@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-17-alex.bennee@linaro.org>
tests/functional/qemu_test/tuxruntest.py