diff options
| author | Stefan Majewsky <majewsky@gmx.net> | 2025-01-11 12:23:31 +0100 |
|---|---|---|
| committer | Stefan Majewsky <majewsky@gmx.net> | 2025-01-11 12:23:31 +0100 |
| commit | 7eec3798588243c493791a421e6224680870d0e2 (patch) | |
| tree | e6893f9c883c2e3d4d453ae3d54756b13c32e222 /option/option_test.go | |
| parent | 49a7790edc4ec9526a7b846399339068990ce7de (diff) | |
| download | go-gg-7eec3798588243c493791a421e6224680870d0e2.tar.gz | |
add options.IsNoneOrZero
Also, add the tests for IsSomeAnd and IsNoneOr that I forgot.
Diffstat (limited to 'option/option_test.go')
| -rw-r--r-- | option/option_test.go | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/option/option_test.go b/option/option_test.go index 0fa255f..28e6d49 100644 --- a/option/option_test.go +++ b/option/option_test.go @@ -33,11 +33,12 @@ func TestAsSlice(t *testing.T) { AssertEqual(t, Some(42).AsSlice(), []int{42}) } -func TestFilter(t *testing.T) { - isEven := func(x int) bool { - return x%2 == 0 - } +func isEven(x int) bool { + // an example predicate for testing the various functions that take predicates + return x%2 == 0 +} +func TestFilter(t *testing.T) { AssertEqual(t, None[int]().Filter(isEven), None[int]()) AssertEqual(t, Some(41).Filter(isEven), None[int]()) AssertEqual(t, Some(42).Filter(isEven), Some(42)) @@ -48,11 +49,23 @@ func TestIsNone(t *testing.T) { AssertEqual(t, Some(42).IsNone(), false) } +func TestIsNoneOr(t *testing.T) { + AssertEqual(t, None[int]().IsNoneOr(isEven), true) + AssertEqual(t, Some(41).IsNoneOr(isEven), false) + AssertEqual(t, Some(42).IsNoneOr(isEven), true) +} + func TestIsSome(t *testing.T) { AssertEqual(t, None[int]().IsSome(), false) AssertEqual(t, Some(42).IsSome(), true) } +func TestIsSomeAnd(t *testing.T) { + AssertEqual(t, None[int]().IsSomeAnd(isEven), false) + AssertEqual(t, Some(41).IsSomeAnd(isEven), false) + AssertEqual(t, Some(42).IsSomeAnd(isEven), true) +} + func TestIsZero(t *testing.T) { AssertEqual(t, None[int]().IsZero(), true) AssertEqual(t, Some(42).IsZero(), false) |
