From 85ac8beaa6b3cd1737b878160e99223c54813a00 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Wed, 15 Jan 2025 15:35:14 -0300 Subject: Add tests for panicky functions --- src/gobang.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/gobang.go b/src/gobang.go index 57a087d..2217236 100644 --- a/src/gobang.go +++ b/src/gobang.go @@ -15,7 +15,6 @@ import ( "runtime/debug" "slices" "strings" - "syscall" "time" "guuid" @@ -57,6 +56,7 @@ var ( testOutput io.Writer = os.Stderr testExitFn = os.Exit + randomReader = rand.Reader SourceInfoSkip = 3 @@ -116,11 +116,13 @@ func SomeFnError(fns ...func() error) error { return SomeError(errs...) } -func Random(length int) []byte { +func Random(length int) ([]byte, error) { buffer := make([]byte, length) - _, err := io.ReadFull(rand.Reader, buffer) - FatalIf(err) - return buffer + _, err := io.ReadFull(randomReader, buffer) + if err != nil { + return nil, err + } + return buffer, nil } func sourceInfo(skip int) slog.Attr { @@ -393,6 +395,7 @@ func TAssertEqualI[T any](givenarr []T, expectedarr []T) { expectedarr[givenlen:], ) testExitFn(100) + return } if givenlen > expectedlen { @@ -404,6 +407,7 @@ func TAssertEqualI[T any](givenarr []T, expectedarr []T) { givenarr[expectedlen:], ) testExitFn(100) + return } for i, _ := range givenarr { @@ -497,8 +501,7 @@ func Fatal(err error) { "error", err, "stack", string(debug.Stack()), ) - syscall.Kill(os.Getpid(), syscall.SIGABRT) - os.Exit(3) + panic(err) } func FatalIf(err error) { -- cgit v1.2.3