summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2025-01-15 15:35:14 -0300
committerEuAndreh <eu@euandre.org>2025-01-15 15:35:14 -0300
commit85ac8beaa6b3cd1737b878160e99223c54813a00 (patch)
tree1ac9cf31d2aa239f0ea798fc09a2c5b79ae04080 /src
parentMakefile: Simplify variable names (diff)
downloadgobang-85ac8beaa6b3cd1737b878160e99223c54813a00.tar.gz
gobang-85ac8beaa6b3cd1737b878160e99223c54813a00.tar.xz
Add tests for panicky functions
Diffstat (limited to 'src')
-rw-r--r--src/gobang.go17
1 files changed, 10 insertions, 7 deletions
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) {