Package: golang-github-google-goexpect / 0.0~git20210430.ab937bf-2

Metadata

Package Version Patches format
golang-github-google-goexpect 0.0~git20210430.ab937bf-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
extend timeout SendSignal_Batch test.patch | (download)

expect_test.go | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 increase timeout for sendsignal_batch test

Increase the timeout for the ExampleGExpect_SendSignal_Batch test from
20s to 30s. This test was failing in the Salsa CI environment due to a
timeout, suggesting the test process takes longer to respond there
compared to local environments.

fix test panic seen on ppc64el.patch | (download)

expect_test.go | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 fix testtee panic on spawn error seen on ppc64el

The `TestTee` function was susceptible to a panic due to a nil pointer
dereference if the `Spawn` function failed as observed on the `ppc64el`
architecture during autopkgtests:

    github.com/google/goexpect
       dh_auto_test -O--builddirectory=debian/.build/upstream -O--buildsystem=golang
    ^Icd debian/.build/upstream && go test -vet=off -v -p 16 github.com/google/goexpect
    === RUN   TestBatcher
    2025/08/22 06:57:28 at login prompt
    2025/08/22 06:57:28 at password prompt
    2025/08/22 06:57:28 Done sent
    E0822 06:57:28.425817    7480 expect_test.go:138] Accept failed: accept tcp [::]:42685: use of closed network connection
    
skip pty tests on unsupported platforms.patch | (download)

expect_test.go | 40 37 + 3 - 0 !
1 file changed, 37 insertions(+), 3 deletions(-)

 skip pty-dependent tests on unsupported platforms (mainly ppc64el)

The `goexpect` test suite includes tests that rely on pseudo-terminal
(PTY) support. On some architectures and builders, such as `ppc64el` on
both Debian buildd and Ubuntu Launchpad, the test environment may didn't
seem to provide full PTY functionality, leading to `inappropriate ioctl
for device` errors when `Spawn` or `SpawnWithArgs` are called.

Fix multiple tests to detect the `inappropriate ioctl for device` error
and skip the test gracefully, allowing the package to build
successfully.

The `TestSpawnWithArgs` test also adds a `defer e.Close()` to ensure the
expecter is properly closed, regardless of test outcome.

improve reliability of TestSpawnWithArgs on s390x.patch | (download)

expect_test.go | 9 6 + 3 - 0 !
1 file changed, 6 insertions(+), 3 deletions(-)

 fix testspawnwithargs race condition on fast systems (mainly s390x)

The `TestSpawnWithArgs` test was failing on the Ubuntu Launchpad `s390x`
builders with the error "Expect(a   b) failed: expect: Process not
running". This indicates a race condition where the `echo` command
executed and terminated too quickly for the `Expect` function to read
its output before the process was gone.

To address this, wait with `read`, that command pauses the shell script
indefinitely until input is received, which is a more robust and
portable way to keep the process alive for the duration of the test.
After the necessary `Expect` calls, an explicit `e.Send("\n")` is added
to unblock the `read` command and allow the spawned process to exit
cleanly.

Additionally, the `t.Fatalf` message has been updated to include the
`args` slice for better debugging context if `SpawnWithArgs` fails.