diff options
| author | Ophestra <cat@gensokyo.uk> | 2025-09-29 02:33:10 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2025-09-29 06:11:47 +0900 |
| commit | 46cd3a28c83e93b5d66c52d06a8366c11910d5c0 (patch) | |
| tree | 6e25c5078b5cd9de78b7a6c9b253f1132358812b /helper | |
| parent | ad1bc6794f0053c3e63eab408a0d530d53e8b51c (diff) | |
container: remove global msg
This frees all container instances of side effects.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'helper')
| -rw-r--r-- | helper/container.go | 3 | ||||
| -rw-r--r-- | helper/container_test.go | 6 | ||||
| -rw-r--r-- | helper/stub_test.go | 4 |
3 files changed, 6 insertions, 7 deletions
diff --git a/helper/container.go b/helper/container.go index a3b22575..9bab0df8 100644 --- a/helper/container.go +++ b/helper/container.go @@ -16,6 +16,7 @@ import ( // New initialises a Helper instance with wt as the null-terminated argument writer. func New( ctx context.Context, + msg container.Msg, pathname *container.Absolute, name string, wt io.WriterTo, stat bool, @@ -26,7 +27,7 @@ func New( var args []string h := new(helperContainer) h.helperFiles, args = newHelperFiles(ctx, wt, stat, argF, extraFiles) - h.Container = container.NewCommand(ctx, pathname, name, args...) + h.Container = container.NewCommand(ctx, msg, pathname, name, args...) h.WaitDelay = WaitDelay if cmdF != nil { cmdF(h.Container) diff --git a/helper/container_test.go b/helper/container_test.go index 9aaeec8e..a3f0a3f3 100644 --- a/helper/container_test.go +++ b/helper/container_test.go @@ -12,7 +12,7 @@ import ( func TestContainer(t *testing.T) { t.Run("start invalid container", func(t *testing.T) { - h := helper.New(t.Context(), container.MustAbs(container.Nonexistent), "hakurei", argsWt, false, argF, nil, nil) + h := helper.New(t.Context(), nil, container.MustAbs(container.Nonexistent), "hakurei", argsWt, false, argF, nil, nil) wantErr := "container: starting an invalid container" if err := h.Start(); err == nil || err.Error() != wantErr { @@ -22,7 +22,7 @@ func TestContainer(t *testing.T) { }) t.Run("valid new helper nil check", func(t *testing.T) { - if got := helper.New(t.Context(), container.MustAbs(container.Nonexistent), "hakurei", argsWt, false, argF, nil, nil); got == nil { + if got := helper.New(t.Context(), nil, container.MustAbs(container.Nonexistent), "hakurei", argsWt, false, argF, nil, nil); got == nil { t.Errorf("New(%q, %q) got nil", argsWt, "hakurei") return @@ -31,7 +31,7 @@ func TestContainer(t *testing.T) { t.Run("implementation compliance", func(t *testing.T) { testHelper(t, func(ctx context.Context, setOutput func(stdoutP, stderrP *io.Writer), stat bool) helper.Helper { - return helper.New(ctx, container.MustAbs(os.Args[0]), "helper", argsWt, stat, argF, func(z *container.Container) { + return helper.New(ctx, nil, container.MustAbs(os.Args[0]), "helper", argsWt, stat, argF, func(z *container.Container) { setOutput(&z.Stdout, &z.Stderr) z. Bind(container.AbsFHSRoot, container.AbsFHSRoot, 0). diff --git a/helper/stub_test.go b/helper/stub_test.go index dc057ac1..0679a737 100644 --- a/helper/stub_test.go +++ b/helper/stub_test.go @@ -6,12 +6,10 @@ import ( "hakurei.app/container" "hakurei.app/helper" - "hakurei.app/internal" - "hakurei.app/internal/hlog" ) func TestMain(m *testing.M) { - container.TryArgv0(hlog.Output{}, hlog.Prepare, internal.InstallOutput) + container.TryArgv0(nil) helper.InternalHelperStub() os.Exit(m.Run()) } |
