From 4f286f5175d2fcb5cdb726b55caa60c593d7d4eb Mon Sep 17 00:00:00 2001 From: Leonard Lyubich Date: Fri, 28 May 2021 10:09:53 +0300 Subject: [PATCH] [#283] pkg/owner: Implement generators of ID's for testing Create `ownertest` package with functions which generate random `owner.ID` instances. These functions is going to be used for testing. Signed-off-by: Leonard Lyubich --- pkg/owner/test/id.go | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 pkg/owner/test/id.go diff --git a/pkg/owner/test/id.go b/pkg/owner/test/id.go new file mode 100644 index 0000000..f542cf1 --- /dev/null +++ b/pkg/owner/test/id.go @@ -0,0 +1,27 @@ +package ownertest + +import ( + "math/rand" + + "github.com/nspcc-dev/neofs-api-go/pkg/owner" + "github.com/nspcc-dev/neofs-api-go/v2/refs" +) + +// Generate returns owner.ID calculated +// from a random owner.NEO3Wallet. +func Generate() *owner.ID { + data := make([]byte, owner.NEO3WalletSize) + + rand.Read(data) + + return GenerateFromBytes(data) +} + +// GenerateFromBytes returns owner.ID generated +// from a passed byte slice. +func GenerateFromBytes(val []byte) *owner.ID { + idV2 := new(refs.OwnerID) + idV2.SetValue(val) + + return owner.NewIDFromV2(idV2) +}