forked from TrueCloudLab/frostfs-sdk-go
[#214] object: Implement Get\Head
requests for EC object
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
This commit is contained in:
parent
3790142b10
commit
20ab57bf7e
7 changed files with 142 additions and 3 deletions
|
@ -1,9 +1,12 @@
|
|||
package object_test
|
||||
|
||||
import (
|
||||
"crypto/rand"
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
objectV2 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
@ -31,3 +34,43 @@ func generateSplitInfo() *object.SplitInfo {
|
|||
|
||||
return si
|
||||
}
|
||||
|
||||
func TestNewECInfoError(t *testing.T) {
|
||||
var (
|
||||
ei = generateECInfo()
|
||||
|
||||
err error = object.NewECInfoError(ei)
|
||||
expectedErr *object.ECInfoError
|
||||
)
|
||||
|
||||
require.True(t, errors.As(err, &expectedErr))
|
||||
|
||||
eiErr, ok := err.(*object.ECInfoError)
|
||||
require.True(t, ok)
|
||||
require.Equal(t, ei, eiErr.ECInfo())
|
||||
}
|
||||
|
||||
func generateECInfo() *object.ECInfo {
|
||||
ei := object.NewECInfo()
|
||||
ei.Chunks = append(ei.Chunks, objectV2.ECChunk{
|
||||
ID: generateV2ID(),
|
||||
Index: 0,
|
||||
Total: 2,
|
||||
})
|
||||
ei.Chunks = append(ei.Chunks, objectV2.ECChunk{
|
||||
ID: generateV2ID(),
|
||||
Index: 1,
|
||||
Total: 2,
|
||||
})
|
||||
return ei
|
||||
}
|
||||
|
||||
func generateV2ID() refs.ObjectID {
|
||||
var buf [32]byte
|
||||
_, _ = rand.Read(buf[:])
|
||||
|
||||
var id refs.ObjectID
|
||||
id.SetValue(buf[:])
|
||||
|
||||
return id
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue