Test types.NotificationTypes#Value()

This commit is contained in:
Alexander A. Klimov 2024-09-05 16:03:01 +02:00
parent a4632323ab
commit 7a1d2f0036

View file

@ -32,3 +32,27 @@ func TestNotificationTypes_UnmarshalJSON(t *testing.T) {
})
}
}
func TestNotificationTypes_Value(t *testing.T) {
subtests := []struct {
name string
io NotificationTypes
error bool
}{
{name: "out-of-range", io: ^NotificationTypes(0), error: true},
{name: "empty", io: 0},
{name: "single", io: 32},
{name: "multiple", io: 48},
}
for _, st := range subtests {
t.Run(st.name, func(t *testing.T) {
if v, err := st.io.Value(); st.error {
require.Error(t, err)
} else {
require.NoError(t, err)
require.Equal(t, int64(st.io), v)
}
})
}
}