From 348785eec0c499dc4f79943cedcd78be279ca41d Mon Sep 17 00:00:00 2001 From: Graham Christensen Date: Tue, 20 Jun 2017 20:55:52 -0400 Subject: nixos tests: waitUntilTTYMatches: Log TTY contents on last try If the test has not passed yet, on the last attempt it now outputs: machine: Last chance to match /logine: / on TTY2, which currently contains: machine: running command: fold -w$(stty -F /dev/tty2 size | awk '{print $2}') /dev/vcs2 machine: exit status 0 machine: <<< Welcome to NixOS 17.09.git.a804ef4 (x86_64) - tty2 >>> machine login: to help debug the problem. Notice the "logine" typo in my check. --- nixos/lib/test-driver/Machine.pm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'nixos/lib/test-driver') diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm index c88f9f2bbbe..973e05542d5 100644 --- a/nixos/lib/test-driver/Machine.pm +++ b/nixos/lib/test-driver/Machine.pm @@ -518,6 +518,12 @@ sub waitUntilTTYMatches { $self->nest("waiting for $regexp to appear on tty $tty", sub { retry sub { + my ($retries_remaining) = @_; + if ($retries_remaining == 0) { + $self->log("Last chance to match /$regexp/ on TTY$tty, which currently contains:"); + $self->log($self->getTTYText($tty)); + } + return 1 if $self->getTTYText($tty) =~ /$regexp/; } }); -- cgit 1.4.1