forked from TrueCloudLab/frostfs-node
Evgenii Stratonikov
322c1dc273
Semantic patch (restricted to **/*_test.go): ``` @@ @@ +import "git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger/test" -import "go.uber.org/zap" -import "git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger" -&logger.Logger{Logger: zap.L()} +test.NewLogger(t, false) ``` Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
68 lines
1.8 KiB
Go
68 lines
1.8 KiB
Go
package memstore
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/core/object"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor/common"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor/internal/blobstortest"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger/test"
|
|
objectSDK "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestSimpleLifecycle(t *testing.T) {
|
|
s := New(
|
|
WithRootPath("memstore"),
|
|
WithLogger(test.NewLogger(t, false)),
|
|
)
|
|
t.Cleanup(func() { _ = s.Close() })
|
|
require.NoError(t, s.Open(false))
|
|
require.NoError(t, s.Init())
|
|
|
|
obj := blobstortest.NewObject(1024)
|
|
addr := object.AddressOf(obj)
|
|
d, err := obj.Marshal()
|
|
require.NoError(t, err)
|
|
|
|
{
|
|
_, err := s.Put(context.Background(), common.PutPrm{Address: addr, RawData: d, DontCompress: true})
|
|
require.NoError(t, err)
|
|
}
|
|
|
|
{
|
|
resp, err := s.Exists(context.Background(), common.ExistsPrm{Address: addr})
|
|
require.NoError(t, err)
|
|
require.True(t, resp.Exists)
|
|
}
|
|
|
|
{
|
|
resp, err := s.Get(context.Background(), common.GetPrm{Address: addr})
|
|
require.NoError(t, err)
|
|
require.Equal(t, obj.Payload(), resp.Object.Payload())
|
|
}
|
|
|
|
{
|
|
var objRange objectSDK.Range
|
|
objRange.SetOffset(256)
|
|
objRange.SetLength(512)
|
|
resp, err := s.GetRange(context.Background(), common.GetRangePrm{
|
|
Address: addr,
|
|
Range: objRange,
|
|
})
|
|
require.NoError(t, err)
|
|
require.Equal(t, obj.Payload()[objRange.GetOffset():objRange.GetOffset()+objRange.GetLength()], resp.Data)
|
|
}
|
|
|
|
{
|
|
_, err := s.Delete(context.Background(), common.DeletePrm{Address: addr})
|
|
require.NoError(t, err)
|
|
}
|
|
|
|
{
|
|
resp, err := s.Exists(context.Background(), common.ExistsPrm{Address: addr})
|
|
require.NoError(t, err)
|
|
require.False(t, resp.Exists)
|
|
}
|
|
}
|