aboutsummaryrefslogtreecommitdiff
path: root/gsql/gsql_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'gsql/gsql_test.go')
-rw-r--r--gsql/gsql_test.go29
1 files changed, 29 insertions, 0 deletions
diff --git a/gsql/gsql_test.go b/gsql/gsql_test.go
new file mode 100644
index 0000000..acf0bbf
--- /dev/null
+++ b/gsql/gsql_test.go
@@ -0,0 +1,29 @@
+// SPDX-FileCopyrightText: 2026 Stefan Majewsky <majewsky@gmx.net>
+// SPDX-License-Identifier: Apache-2.0
+
+package gsql_test
+
+import (
+ "database/sql"
+ "errors"
+ "testing"
+
+ "go.xyrillian.de/gg/assert"
+ "go.xyrillian.de/gg/gsql"
+ . "go.xyrillian.de/gg/option"
+)
+
+func TestNoneIfNoRows(t *testing.T) {
+ x, err := gsql.NoneIfNoRows(42, nil)
+ if assert.ErrEqual(t, err, nil) {
+ assert.Equal(t, x, Some(42))
+ }
+
+ x, err = gsql.NoneIfNoRows(0, sql.ErrNoRows)
+ if assert.ErrEqual(t, err, nil) {
+ assert.Equal(t, x, None[int]())
+ }
+
+ _, err = gsql.NoneIfNoRows(0, errors.New("kaboom"))
+ assert.ErrEqual(t, err, "kaboom")
+}