forked from TrueCloudLab/frostfs-api-go
[#265] pkg/reputation: Change PeerID implementation
Make `PeerID` type to be the wrapper over v2 `PeerID` message structure. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
c5000a3334
commit
05a351d344
3 changed files with 123 additions and 21 deletions
|
@ -4,15 +4,49 @@ import (
|
|||
"testing"
|
||||
|
||||
"github.com/nspcc-dev/neofs-api-go/pkg/reputation"
|
||||
reputationtest "github.com/nspcc-dev/neofs-api-go/pkg/reputation/test"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestPeerID(t *testing.T) {
|
||||
peerID := reputation.NewPeerID()
|
||||
|
||||
data := []byte{1, 2, 3}
|
||||
peerID.SetBytes(data)
|
||||
require.Equal(t, data, peerID.Bytes())
|
||||
func TestPeerID_ToV2(t *testing.T) {
|
||||
peerID := reputationtest.GeneratePeerID()
|
||||
|
||||
require.Equal(t, peerID, reputation.PeerIDFromV2(peerID.ToV2()))
|
||||
}
|
||||
|
||||
func TestPeerID_String(t *testing.T) {
|
||||
id := reputationtest.GeneratePeerID()
|
||||
|
||||
strID := id.String()
|
||||
|
||||
id2 := reputation.NewPeerID()
|
||||
|
||||
err := id2.Parse(strID)
|
||||
require.NoError(t, err)
|
||||
|
||||
require.Equal(t, id, id2)
|
||||
}
|
||||
|
||||
func TestPeerIDEncoding(t *testing.T) {
|
||||
id := reputationtest.GeneratePeerID()
|
||||
|
||||
t.Run("binary", func(t *testing.T) {
|
||||
data, err := id.Marshal()
|
||||
require.NoError(t, err)
|
||||
|
||||
id2 := reputation.NewPeerID()
|
||||
require.NoError(t, id2.Unmarshal(data))
|
||||
|
||||
require.Equal(t, id, id2)
|
||||
})
|
||||
|
||||
t.Run("json", func(t *testing.T) {
|
||||
data, err := id.MarshalJSON()
|
||||
require.NoError(t, err)
|
||||
|
||||
id2 := reputation.NewPeerID()
|
||||
require.NoError(t, id2.UnmarshalJSON(data))
|
||||
|
||||
require.Equal(t, id, id2)
|
||||
})
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue