diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2022-07-15 15:21:31 +1000 |
---|---|---|
committer | Stefano Brivio <sbrivio@redhat.com> | 2022-07-22 19:41:42 +0200 |
commit | 70fcba542e9f5fc52a322a935ae392359a687890 (patch) | |
tree | 7b62295ad1e4388ec30c13024122278e2b471ab2 | |
parent | 181efaa3fa24ad9c6e758ba0d7db67185eb98df0 (diff) | |
download | passt-70fcba542e9f5fc52a322a935ae392359a687890.tar passt-70fcba542e9f5fc52a322a935ae392359a687890.tar.gz passt-70fcba542e9f5fc52a322a935ae392359a687890.tar.bz2 passt-70fcba542e9f5fc52a322a935ae392359a687890.tar.lz passt-70fcba542e9f5fc52a322a935ae392359a687890.tar.xz passt-70fcba542e9f5fc52a322a935ae392359a687890.tar.zst passt-70fcba542e9f5fc52a322a935ae392359a687890.zip |
tests: Fix detection of empty 'hout' responses in passt{,_in_ns} tests
The dhcp/passt and dhcp/passt_in_ns tests at least, and maybe others
use 'hout' commands that need to be able to detect empty output.
However, we don't set PS1, which means the screen-scraping logic which
detects this may not be reliable. In addition, if the host is using a
recent bash, it will have bracketed paste mode enabled which will also
add escape codes which will mess up the empty output detection.
Set the prompt and disable bracketed paste mode from the passt and
passt_in_ns setups to avoid these problems.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rwxr-xr-x | test/lib/setup | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/lib/setup b/test/lib/setup index 64a6119..e010545 100755 --- a/test/lib/setup +++ b/test/lib/setup @@ -57,6 +57,13 @@ setup_passt() { " -device virtio-net-pci,netdev=hostnet0,x-txburst=16384" \ " -netdev socket,fd=5,id=hostnet0" pane_status GUEST + + # Set things up to reduce problems parsing host command output + pane_run HOST "PS1='$ '" + pane_wait HOST + # Non-bash shells will fail this, but also don't need it, so ignore errors + pane_run HOST "bind 'set enable-bracketed-paste off'" + pane_wait HOST } # setup_pasta() - Create a network and user namespace, connect pasta to it @@ -168,6 +175,13 @@ setup_passt_in_ns() { " -device virtio-net-pci,netdev=hostnet0,x-txburst=524288" \ " -netdev socket,fd=5,id=hostnet0" pane_status GUEST + + # Set things up to reduce problems parsing host command output + pane_run HOST "PS1='$ '" + pane_wait HOST + # Non-bash shells will fail this, but also don't need it, so ignore errors + pane_run HOST "bind 'set enable-bracketed-paste off'" + pane_wait HOST } # setup_two_guests() - Set up two namespace, run qemu and passt in both of them |