hakurei/container/stub/exit_test.go
Ophestra 3057964cc9
All checks were successful
Test / Create distribution (push) Successful in 36s
Test / Sandbox (push) Successful in 2m5s
Test / Hakurei (push) Successful in 3m3s
Test / Hpkg (push) Successful in 4m6s
Test / Sandbox (race detector) (push) Successful in 4m32s
Test / Hakurei (race detector) (push) Successful in 5m6s
Test / Flake checks (push) Successful in 1m26s
container/stub: export stub helpers
These are very useful in many packages containing relatively large amount of code making calls to difficult or impossible to stub functions.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-09-01 01:39:11 +09:00

31 lines
492 B
Go

package stub_test
import (
"testing"
"hakurei.app/container/stub"
)
func TestHandleExit(t *testing.T) {
t.Run("exit", func(t *testing.T) {
defer stub.HandleExit()
panic(stub.PanicExit)
})
t.Run("nil", func(t *testing.T) {
defer stub.HandleExit()
})
t.Run("passthrough", func(t *testing.T) {
defer func() {
want := 0xcafebabe
if r := recover(); r != want {
t.Errorf("recover: %v, want %v", r, want)
}
}()
defer stub.HandleExit()
panic(0xcafebabe)
})
}