Revision tags: v9.2.0 |
|
#
cdad03b7 |
| 21-Nov-2024 |
Daniel P. Berrangé <berrange@redhat.com> |
tests/functional: rewrite console handling to be bytewise
The console interaction that waits for predicted strings uses readline(), and thus is only capable of waiting for strings that are followed
tests/functional: rewrite console handling to be bytewise
The console interaction that waits for predicted strings uses readline(), and thus is only capable of waiting for strings that are followed by a newline.
This is inconvenient when needing to match on some things, particularly login prompts, or shell prompts, causing tests to use time.sleep(...) instead, which is unreliable.
Switch to reading the console 1 byte at a time, comparing against the success/failure messages until we see a match, regardless of whether a newline is encountered.
The success/failure comparisons are done with the python bytes type, rather than strings, to avoid the problem of needing to decode partially received multibyte utf8 characters.
Heavily inspired by a patch proposed by Cédric, but written again to work in bytes, rather than strings.
Co-developed-by: Cédric Le Goater <clg@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20241121154218.1423005-16-berrange@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20241121165806.476008-16-alex.bennee@linaro.org>
show more ...
|
#
f03a8189 |
| 21-Nov-2024 |
Daniel P. Berrangé <berrange@redhat.com> |
tests/functional: require non-NULL success_message for console wait
When waiting for expected output, the 'success_message' is a mandatory parameter, with 'failure_message' defaulting to None.
The
tests/functional: require non-NULL success_message for console wait
When waiting for expected output, the 'success_message' is a mandatory parameter, with 'failure_message' defaulting to None.
The code has logic which indicates it was trying to cope with 'success_message' being None and 'failure_message' being non-None but it does not appear able to actually do anything useful. The check for 'success_message is None' will break out of the loop before any check for 'failure_message' has been performed.
IOW, for practcal purposes 'success_message' must be non-None unless 'send_string' is set. Assert this expectation and simplify the loop logic.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20241121154218.1423005-15-berrange@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20241121165806.476008-15-alex.bennee@linaro.org>
show more ...
|
#
6f0942b7 |
| 21-Nov-2024 |
Daniel P. Berrangé <berrange@redhat.com> |
tests/functional: logs details of console interaction operations
When functional tests go wrong, it will often be related to the console interaction wait state. By logging the messages that we're lo
tests/functional: logs details of console interaction operations
When functional tests go wrong, it will often be related to the console interaction wait state. By logging the messages that we're looking for, and data we're about to be sending, it'll be easier to diagnose where tests are getting stuck.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20241121154218.1423005-13-berrange@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20241121165806.476008-13-alex.bennee@linaro.org>
show more ...
|
Revision tags: v9.1.2, v9.1.1 |
|
#
59d10024 |
| 10-Sep-2024 |
Thomas Huth <thuth@redhat.com> |
tests/functional: Fix bad usage of has_cmd
has_cmd returns a tuple, not a boolean value. This fixes a crash when e.g. "tesseract" is not available in the test_m68k_nextcube test.
Reported-by: Richa
tests/functional: Fix bad usage of has_cmd
has_cmd returns a tuple, not a boolean value. This fixes a crash when e.g. "tesseract" is not available in the test_m68k_nextcube test.
Reported-by: Richard Henderson <richard.henderson@linaro.org> Message-ID: <20240910075820.51346-1-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
Revision tags: v9.1.0 |
|
#
1255f5e4 |
| 30-Aug-2024 |
Philippe Mathieu-Daudé <philmd@linaro.org> |
tests/functional: Convert Aarch64 Virt machine avocado tests
Straight forward conversion. Update the SHA1 hash to SHA256 since SHA1 should not be used anymore nowadays.
Provide get_qemu_img() helpe
tests/functional: Convert Aarch64 Virt machine avocado tests
Straight forward conversion. Update the SHA1 hash to SHA256 since SHA1 should not be used anymore nowadays.
Provide get_qemu_img() helper in qemu_test.
$ make check-functional-aarch64 V=1 ▶ 1/4 test_aarch64_virt.Aarch64VirtMachine.test_aarch64_virt_gicv2 OK ▶ 1/4 test_aarch64_virt.Aarch64VirtMachine.test_aarch64_virt_gicv3 OK ▶ 1/4 test_aarch64_virt.Aarch64VirtMachine.test_alpine_virt_tcg_gic_max OK 1/4 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_virt OK 30.44s 3 subtests passed ...
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240826103634.52384-1-philmd@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-ID: <20240830133841.142644-36-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
fa32a634 |
| 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
tests/functional: Add base classes for the upcoming pytest-based tests
The files are mostly a copy of the tests/avocado/avocado_qemu/__init__.py file with some adjustments to get rid of the Avocado
tests/functional: Add base classes for the upcoming pytest-based tests
The files are mostly a copy of the tests/avocado/avocado_qemu/__init__.py file with some adjustments to get rid of the Avocado dependencies (i.e. we also have to drop the LinuxSSHMixIn and LinuxTest for now).
The emulator binary and build directory are now passed via environment variables that will be set via meson.build later.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-ID: <20240830133841.142644-9-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|