From 915c39a86249c456e549f2f1a97e54ad621bc5f9 Mon Sep 17 00:00:00 2001 From: Philipp Stephani Date: Wed, 9 Sep 2026 19:29:19 +0200 Subject: [PATCH] Simplify code using decowriter package --- MODULE.bazel | 1 + go.mod | 1 + go.sum | 2 ++ tests/integration/BUILD | 1 + tests/integration/ert_test.go | 24 +++++------------------- 5 files changed, 10 insertions(+), 19 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 8f8e68c5..6eb38e35 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -144,6 +144,7 @@ go_deps.from_file(go_mod = "//:go.mod") use_repo( go_deps, "com_github_bazelbuild_buildtools", + "com_github_goaux_decowriter", "com_github_google_addlicense", "com_github_google_go_cmp", "com_github_lvthillo_gomodzip", diff --git a/go.mod b/go.mod index 017f2306..ceecf171 100644 --- a/go.mod +++ b/go.mod @@ -29,6 +29,7 @@ require ( require ( github.com/bazel-contrib/bazel-gazelle/v2 v2.0.0-3 // indirect github.com/bmatcuk/doublestar/v4 v4.9.1 // indirect + github.com/goaux/decowriter v1.0.0 github.com/google/addlicense v1.2.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/lvthillo/gomodzip v0.2.0 diff --git a/go.sum b/go.sum index 91e48387..ed5bf005 100644 --- a/go.sum +++ b/go.sum @@ -18,6 +18,8 @@ github.com/bmatcuk/doublestar/v4 v4.0.2/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTS github.com/bmatcuk/doublestar/v4 v4.9.1 h1:X8jg9rRZmJd4yRy7ZeNDRnM+T3ZfHv15JiBJ/avrEXE= github.com/bmatcuk/doublestar/v4 v4.9.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= +github.com/goaux/decowriter v1.0.0 h1:f1mfBWGFIo3Upev3gswfGLQzQvC4SBVYi2ZAkNZsIaU= +github.com/goaux/decowriter v1.0.0/go.mod h1:8GKUmiBlNCYxVHU2vlZoQHwLvYh7Iw1c7/tRekJbX7o= github.com/google/addlicense v1.2.0 h1:W+DP4A639JGkcwBGMDvjSurZHvaq2FN0pP7se9czsKA= github.com/google/addlicense v1.2.0/go.mod h1:Sm/DHu7Jk+T5miFHHehdIjbi4M5+dJDRS3Cq0rncIxA= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= diff --git a/tests/integration/BUILD b/tests/integration/BUILD index 5f314bdd..c5b9b082 100644 --- a/tests/integration/BUILD +++ b/tests/integration/BUILD @@ -72,6 +72,7 @@ go_test( ], deps = [ "//internal/testutil", + "@com_github_goaux_decowriter//:decowriter", "@com_github_google_go_cmp//cmp", "@com_github_google_go_cmp//cmp/cmpopts", "@rules_go//go/runfiles", diff --git a/tests/integration/ert_test.go b/tests/integration/ert_test.go index a12d7742..d97c3288 100644 --- a/tests/integration/ert_test.go +++ b/tests/integration/ert_test.go @@ -15,12 +15,10 @@ package integration_test import ( - "bufio" "context" "encoding/xml" "flag" "fmt" - "io" "os" "os/exec" "path/filepath" @@ -33,6 +31,7 @@ import ( _ "embed" "github.com/bazelbuild/rules_go/go/runfiles" + "github.com/goaux/decowriter" "github.com/google/go-cmp/cmp" "github.com/google/go-cmp/cmp/cmpopts" @@ -534,23 +533,10 @@ func run(t *testing.T, p string, c *exec.Cmd) error { if c.Stderr != nil { t.Fatalf("%s: exec.Cmd.Stderr already set", p) } - r, err := c.StdoutPipe() - if err != nil { - t.Fatalf("%s: %s", p, err) - } - c.Stderr = c.Stdout - if err := c.Start(); err != nil { - t.Fatalf("%s: %s", p, err) - } - s := bufio.NewScanner(r) - for s.Scan() { - t.Logf("[%s] %s", p, s.Bytes()) - } - if err := s.Err(); err != nil { - t.Errorf("[%s] error: %s", p, err) - } - io.Copy(io.Discard, r) - return c.Wait() + w := decowriter.New(t.Output(), []byte(fmt.Sprintf("[%s] ", p)), nil) + c.Stdout = w + c.Stderr = w + return c.Run() } type timestamp time.Time