[#253] metabase: Add prefix to Graveyard and ToMoveIt bucket names

In previous implementation DB.Containers method could return an error about
invalid container ID string format. This could happen if some of top-level
buckets had name w/o "_" substring.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
Leonard Lyubich 2020-12-17 11:07:51 +03:00 committed by Alex Vanin
parent df3d30d1ec
commit edef9463d7
3 changed files with 47 additions and 12 deletions

View file

@ -3,6 +3,7 @@ package meta_test
import (
"testing"
meta "github.com/nspcc-dev/neofs-node/pkg/local_object_storage/metabase"
"github.com/stretchr/testify/require"
)
@ -33,4 +34,36 @@ func TestDB_Containers(t *testing.T) {
cids[cid.String()] = 1
}
t.Run("Inhume", func(t *testing.T) {
obj := generateRawObject(t).Object()
require.NoError(t, putBig(db, obj))
cnrs, err := db.Containers()
require.NoError(t, err)
require.Contains(t, cnrs, obj.ContainerID())
require.NoError(t, meta.Inhume(db, obj.Address(), generateAddress()))
cnrs, err = db.Containers()
require.NoError(t, err)
require.Contains(t, cnrs, obj.ContainerID())
})
t.Run("ToMoveIt", func(t *testing.T) {
obj := generateRawObject(t).Object()
require.NoError(t, putBig(db, obj))
cnrs, err := db.Containers()
require.NoError(t, err)
require.Contains(t, cnrs, obj.ContainerID())
require.NoError(t, meta.ToMoveIt(db, obj.Address()))
cnrs, err = db.Containers()
require.NoError(t, err)
require.Contains(t, cnrs, obj.ContainerID())
})
}