forked from TrueCloudLab/frostfs-api-go
[#356] netmap: Increase test coverage of IterateSubnets
Add both `False` and `True` subnet attributes. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
dfb780a2b6
commit
896cee4bb0
1 changed files with 25 additions and 10 deletions
|
@ -113,29 +113,44 @@ func TestSubnets(t *testing.T) {
|
||||||
t.Run("with correct attribute", func(t *testing.T) {
|
t.Run("with correct attribute", func(t *testing.T) {
|
||||||
var (
|
var (
|
||||||
node netmap.NodeInfo
|
node netmap.NodeInfo
|
||||||
attr netmap.Attribute
|
|
||||||
|
attrEntry, attrExit netmap.Attribute
|
||||||
)
|
)
|
||||||
|
|
||||||
attr.SetKey(subnetAttrKey("13"))
|
const (
|
||||||
attr.SetValue("True")
|
numEntry = 13
|
||||||
|
numExit = 14
|
||||||
|
)
|
||||||
|
|
||||||
attrs := []*netmap.Attribute{&attr}
|
attrEntry.SetKey(subnetAttrKey(strconv.FormatUint(numEntry, 10)))
|
||||||
|
attrEntry.SetValue("True")
|
||||||
|
|
||||||
|
attrExit.SetKey(subnetAttrKey(strconv.FormatUint(numExit, 10)))
|
||||||
|
attrExit.SetValue("False")
|
||||||
|
|
||||||
|
attrs := []*netmap.Attribute{&attrEntry, &attrEntry}
|
||||||
|
|
||||||
node.SetAttributes(attrs)
|
node.SetAttributes(attrs)
|
||||||
|
|
||||||
called := 0
|
mCalledNums := make(map[uint32]struct{})
|
||||||
|
|
||||||
err := netmap.IterateSubnets(&node, func(id refs.SubnetID) error {
|
err := netmap.IterateSubnets(&node, func(id refs.SubnetID) error {
|
||||||
if !refs.IsZeroSubnet(&id) {
|
mCalledNums[id.GetValue()] = struct{}{}
|
||||||
called++
|
|
||||||
require.EqualValues(t, 13, id.GetValue())
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
|
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.EqualValues(t, 1, called)
|
require.Len(t, mCalledNums, 2)
|
||||||
|
|
||||||
|
_, ok := mCalledNums[numEntry]
|
||||||
|
require.True(t, ok)
|
||||||
|
|
||||||
|
_, ok = mCalledNums[numExit]
|
||||||
|
require.False(t, ok)
|
||||||
|
|
||||||
|
_, ok = mCalledNums[0]
|
||||||
|
require.True(t, ok)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("with incorrect attribute", func(t *testing.T) {
|
t.Run("with incorrect attribute", func(t *testing.T) {
|
||||||
|
|
Loading…
Reference in a new issue