forked from TrueCloudLab/frostfs-api-go
616b4b71a1
Implement `String` / `FromString` method pair in all levels of enum definitions. From now `String()` returns canonical protojson-compatible values. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
43 lines
817 B
Go
43 lines
817 B
Go
package netmap
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/nspcc-dev/neofs-api-go/v2/netmap"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestClauseFromV2(t *testing.T) {
|
|
for _, item := range []struct {
|
|
c Clause
|
|
cV2 netmap.Clause
|
|
}{
|
|
{
|
|
c: ClauseUnspecified,
|
|
cV2: netmap.UnspecifiedClause,
|
|
},
|
|
{
|
|
c: ClauseSame,
|
|
cV2: netmap.Same,
|
|
},
|
|
{
|
|
c: ClauseDistinct,
|
|
cV2: netmap.Distinct,
|
|
},
|
|
} {
|
|
require.Equal(t, item.c, ClauseFromV2(item.cV2))
|
|
require.Equal(t, item.cV2, item.c.ToV2())
|
|
}
|
|
}
|
|
|
|
func TestClause_String(t *testing.T) {
|
|
toPtr := func(v Clause) *Clause {
|
|
return &v
|
|
}
|
|
|
|
testEnumStrings(t, new(Clause), []enumStringItem{
|
|
{val: toPtr(ClauseDistinct), str: "DISTINCT"},
|
|
{val: toPtr(ClauseSame), str: "SAME"},
|
|
{val: toPtr(ClauseUnspecified), str: "CLAUSE_UNSPECIFIED"},
|
|
})
|
|
}
|