93df2fd765
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
97 lines
1.8 KiB
Go
97 lines
1.8 KiB
Go
package refs_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/nspcc-dev/neofs-api-go/v2/refs"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestAddressJSON(t *testing.T) {
|
|
a := generateAddress([]byte{1}, []byte{2})
|
|
|
|
data, err := a.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
a2 := new(refs.Address)
|
|
require.NoError(t, a2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, a, a2)
|
|
}
|
|
|
|
func TestObjectIDJSON(t *testing.T) {
|
|
o := new(refs.ObjectID)
|
|
o.SetValue([]byte{1})
|
|
|
|
data, err := o.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
o2 := new(refs.ObjectID)
|
|
require.NoError(t, o2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, o, o2)
|
|
}
|
|
|
|
func TestContainerIDJSON(t *testing.T) {
|
|
cid := new(refs.ContainerID)
|
|
cid.SetValue([]byte{1})
|
|
|
|
data, err := cid.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
cid2 := new(refs.ContainerID)
|
|
require.NoError(t, cid2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, cid, cid2)
|
|
}
|
|
|
|
func TestOwnerIDJSON(t *testing.T) {
|
|
o := new(refs.OwnerID)
|
|
o.SetValue([]byte{1})
|
|
|
|
data, err := o.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
o2 := new(refs.OwnerID)
|
|
require.NoError(t, o2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, o, o2)
|
|
}
|
|
|
|
func TestVersionSON(t *testing.T) {
|
|
v := generateVersion(1, 2)
|
|
|
|
data, err := v.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
v2 := new(refs.Version)
|
|
require.NoError(t, v2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, v, v2)
|
|
}
|
|
|
|
func TestSignatureSON(t *testing.T) {
|
|
s := generateSignature("key", "sig")
|
|
|
|
data, err := s.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
s2 := new(refs.Signature)
|
|
require.NoError(t, s2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, s, s2)
|
|
}
|
|
|
|
func TestChecksumJSON(t *testing.T) {
|
|
cs := new(refs.Checksum)
|
|
cs.SetType(refs.SHA256)
|
|
cs.SetSum([]byte{1, 2, 3})
|
|
|
|
data, err := cs.MarshalJSON()
|
|
require.NoError(t, err)
|
|
|
|
cs2 := new(refs.Checksum)
|
|
require.NoError(t, cs2.UnmarshalJSON(data))
|
|
|
|
require.Equal(t, cs, cs2)
|
|
}
|