summaryrefslogtreecommitdiff
path: root/internal/task/task_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-06-25 12:09:52 +0300
committerPaul Buetow <paul@buetow.org>2026-06-25 12:09:52 +0300
commitc8c3307e9e636406491572d9b8dda3a84929613d (patch)
treec3001666cd1fda8c14ff5f586c1b75cfca2ff261 /internal/task/task_test.go
parent66a6556b567bee551de79de8fcae699ca34aabc7 (diff)
task 0r0: wrap task exec errors
Diffstat (limited to 'internal/task/task_test.go')
-rw-r--r--internal/task/task_test.go14
1 files changed, 14 insertions, 0 deletions
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)
}