fn: add conversions between Result and Option

This commit is contained in:
Keagan McClelland committed 2024-11-06 16:39:33 -07:00
1 parent a741c54175
commit 5faad77f33
4 files changed
+58

No files matched your search

+17
View File
@@ -1,6 +1,8 @@
package fn
import (
"errors"
"fmt"
"testing"
"github.com/stretchr/testify/require"
@@ -9,3 +11,18 @@ import (
func TestOptionUnwrapOrFail(t *testing.T) {
require.Equal(t, Some(1).UnwrapOrFail(t), 1)
}
func TestSomeToOk(t *testing.T) {
err := errors.New("err")
require.Equal(t, Some(1).SomeToOk(err), Ok(1))
require.Equal(t, None[uint8]().SomeToOk(err), Err[uint8](err))
}
func TestSomeToOkf(t *testing.T) {
errStr := "err"
require.Equal(t, Some(1).SomeToOkf(errStr), Ok(1))
require.Equal(
t, None[uint8]().SomeToOkf(errStr),
Err[uint8](fmt.Errorf(errStr)),
)
}