forked from TrueCloudLab/frostfs-sdk-go
[#217] netmap: Return node netmap state directly
Signed-off-by: Aleksey Savchuk <a.savchuk@yadro.com>
This commit is contained in:
parent
46ee543899
commit
76a0cfdadb
2 changed files with 134 additions and 16 deletions
|
@ -3,6 +3,7 @@ package netmap
|
|||
import (
|
||||
"testing"
|
||||
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
|
@ -23,27 +24,75 @@ func TestNodeInfo_SetAttribute(t *testing.T) {
|
|||
require.Equal(t, val, n.Attribute(key))
|
||||
}
|
||||
|
||||
func TestNodeState(t *testing.T) {
|
||||
m := map[NodeState]netmap.NodeState{
|
||||
UnspecifiedState: netmap.UnspecifiedState,
|
||||
Online: netmap.Online,
|
||||
Offline: netmap.Offline,
|
||||
Maintenance: netmap.Maintenance,
|
||||
}
|
||||
|
||||
t.Run("from sdk to v2", func(t *testing.T) {
|
||||
for stateSDK, stateV2 := range m {
|
||||
require.Equal(t, stateV2, stateSDK.ToV2())
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("from v2 to sdk", func(t *testing.T) {
|
||||
for stateSDK, stateV2 := range m {
|
||||
var state NodeState
|
||||
state.FromV2(stateV2)
|
||||
require.Equal(t, stateSDK, state)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func TestNodeInfo_Status(t *testing.T) {
|
||||
var n NodeInfo
|
||||
t.Run("deprecated getters/setters", func(t *testing.T) {
|
||||
var n NodeInfo
|
||||
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
|
||||
n.SetOnline()
|
||||
require.True(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
n.SetOnline()
|
||||
require.True(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
|
||||
n.SetOffline()
|
||||
require.True(t, n.IsOffline())
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
n.SetOffline()
|
||||
require.True(t, n.IsOffline())
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsMaintenance())
|
||||
|
||||
n.SetMaintenance()
|
||||
require.True(t, n.IsMaintenance())
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
n.SetMaintenance()
|
||||
require.True(t, n.IsMaintenance())
|
||||
require.False(t, n.IsOnline())
|
||||
require.False(t, n.IsOffline())
|
||||
})
|
||||
|
||||
t.Run("brand new getters/setters", func(t *testing.T) {
|
||||
var n NodeInfo
|
||||
|
||||
require.False(t, n.Status().IsOnline())
|
||||
require.False(t, n.Status().IsOffline())
|
||||
require.False(t, n.Status().IsMaintenance())
|
||||
|
||||
n.SetStatus(Online)
|
||||
require.True(t, n.Status().IsOnline())
|
||||
require.False(t, n.Status().IsOffline())
|
||||
require.False(t, n.Status().IsMaintenance())
|
||||
|
||||
n.SetStatus(Offline)
|
||||
require.False(t, n.Status().IsOnline())
|
||||
require.True(t, n.Status().IsOffline())
|
||||
require.False(t, n.Status().IsMaintenance())
|
||||
|
||||
n.SetStatus(Maintenance)
|
||||
require.False(t, n.Status().IsOnline())
|
||||
require.False(t, n.Status().IsOffline())
|
||||
require.True(t, n.Status().IsMaintenance())
|
||||
})
|
||||
}
|
||||
|
||||
func TestNodeInfo_ExternalAddr(t *testing.T) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue