[#371] Support recent changes in NeoFS API protocol

Support:
  * new status codes (object, container, session);
  * object `Lock` message;
  * different signature schemes.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
Leonard Lyubich 2022-02-21 20:57:27 +03:00 committed by LeL
parent a4349f6692
commit 99370889d1
41 changed files with 1139 additions and 129 deletions

34
object/status_test.go Normal file
View file

@ -0,0 +1,34 @@
package object_test
import (
"testing"
"github.com/nspcc-dev/neofs-api-go/v2/object"
"github.com/nspcc-dev/neofs-api-go/v2/status"
statustest "github.com/nspcc-dev/neofs-api-go/v2/status/test"
"github.com/stretchr/testify/require"
)
func TestStatusCodes(t *testing.T) {
statustest.TestCodes(t, object.LocalizeFailStatus, object.GlobalizeFail,
object.StatusAccessDenied, 2048,
object.StatusNotFound, 2049,
object.StatusLocked, 2050,
object.StatusLockNonRegularObject, 2051,
object.StatusAlreadyRemoved, 2052,
)
}
func TestAccessDeniedDesc(t *testing.T) {
var st status.Status
require.Empty(t, object.ReadAccessDeniedDesc(st))
const desc = "some description"
object.WriteAccessDeniedDesc(&st, desc)
require.Equal(t, desc, object.ReadAccessDeniedDesc(st))
object.WriteAccessDeniedDesc(&st, desc+"1")
require.Equal(t, desc+"1", object.ReadAccessDeniedDesc(st))
}