INNER CODE UNIT · Go
extractExitCode
jwilder/dockerize · exec_error_test.go:11
func extractExitCode(err error) int {
if err == nil {
return 0
}
var exitErr *exec.ExitError
if errors.As(err, &exitErr) {
if status, ok := exitErr.Sys().(syscall.WaitStatus); ok {
return status.ExitStatus()
}
}
return 1
}
func TestExtractExitCode_FromExitError(t *testing.T) {
cmd := exec.Command("sh", "-c", "exit 42")
err := cmd.Run()