bf9395e022
CI / license-header (push) Has been skipped
CI / e2e-dry-run (push) Has been skipped
CI / fast-gate (push) Failing after 0s
Test PR Label Logic / test-pr-labels (push) Failing after 1s
Skill Format Check / check-format (push) Failing after 2s
CI / security (push) Failing after 5s
CI / unit-test (push) Has been skipped
CI / lint (push) Has been skipped
CI / script-test (push) Has been skipped
CI / deterministic-gate (push) Has been skipped
CI / coverage (push) Has been skipped
CI / results (push) Has been cancelled
CI / deadcode (push) Has been cancelled
CI / e2e-live (push) Has been cancelled
24 lines
746 B
Go
24 lines
746 B
Go
// Copyright (c) 2026 Lark Technologies Pte. Ltd.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package hook
|
|
|
|
import "io"
|
|
|
|
// SetStderrForTesting redirects the hook layer's warning output to a
|
|
// custom writer and returns a restore function the caller MUST defer
|
|
// (or pass to `t.Cleanup`). Without the restore step, a later test in
|
|
// the same binary would inherit the override and either race on a
|
|
// shared bytes.Buffer or write user-visible garbage into a real test
|
|
// stderr.
|
|
//
|
|
// Production code never calls this; the default writer is os.Stderr
|
|
// via defaultStderr.
|
|
func SetStderrForTesting(w io.Writer) (restore func()) {
|
|
prev := stderr
|
|
stderr = func() interface{ Write(p []byte) (int, error) } {
|
|
return w
|
|
}
|
|
return func() { stderr = prev }
|
|
}
|