From c8c3307e9e636406491572d9b8dda3a84929613d Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 25 Jun 2026 12:09:52 +0300 Subject: task 0r0: wrap task exec errors --- internal/task/task_test.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'internal/task/task_test.go') diff --git a/internal/task/task_test.go b/internal/task/task_test.go index f4567ba..570cc86 100644 --- a/internal/task/task_test.go +++ b/internal/task/task_test.go @@ -212,6 +212,13 @@ func TestRunLineReturnsCapturedErrorOutput(t *testing.T) { if result.Stderr != "bad-output\n" { t.Fatalf("stderr = %q", result.Stderr) } + var exitErr *exec.ExitError + if !errors.As(err, &exitErr) { + t.Fatalf("error = %v, want wrapped *exec.ExitError", err) + } + if exitErr.ExitCode() != 2 { + t.Fatalf("exit code = %d, want 2", exitErr.ExitCode()) + } if !strings.Contains(err.Error(), "bad-output") { t.Fatalf("error did not include stderr: %v", err) } @@ -259,6 +266,13 @@ func TestExportReturnsCapturedErrorOutput(t *testing.T) { if err == nil { t.Fatal("expected error") } + var exitErr *exec.ExitError + if !errors.As(err, &exitErr) { + t.Fatalf("error = %v, want wrapped *exec.ExitError", err) + } + if exitErr.ExitCode() != 2 { + t.Fatalf("exit code = %d, want 2", exitErr.ExitCode()) + } if !strings.Contains(err.Error(), "export-failed") { t.Fatalf("error did not include stderr: %v", err) } -- cgit v1.2.3