diff options
Diffstat (limited to 'internal/stub/errors_test.go')
| -rw-r--r-- | internal/stub/errors_test.go | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/internal/stub/errors_test.go b/internal/stub/errors_test.go new file mode 100644 index 00000000..2e5d9930 --- /dev/null +++ b/internal/stub/errors_test.go @@ -0,0 +1,42 @@ +package stub_test + +import ( + "errors" + "syscall" + "testing" + + "hakurei.app/internal/stub" +) + +func TestUniqueError(t *testing.T) { + t.Parallel() + + t.Run("format", func(t *testing.T) { + t.Parallel() + want := "unique error 2989 injected by the test suite" + if got := stub.UniqueError(0xbad).Error(); got != want { + t.Errorf("Error: %q, want %q", got, want) + } + }) + + t.Run("is", func(t *testing.T) { + t.Parallel() + + t.Run("type", func(t *testing.T) { + t.Parallel() + if errors.Is(stub.UniqueError(0), syscall.ENOTRECOVERABLE) { + t.Error("Is: unexpected true") + } + }) + + t.Run("val", func(t *testing.T) { + t.Parallel() + if errors.Is(stub.UniqueError(0), stub.UniqueError(1)) { + t.Error("Is: unexpected true") + } + if !errors.Is(stub.UniqueError(0xbad), stub.UniqueError(0xbad)) { + t.Error("Is: unexpected false") + } + }) + }) +} |
