Fix: Make blobovnicza's Exists test stable #256

Merged
fyrchik merged 1 commits from fix/blobovnicza-tree-exists-test into master 2023-04-16 12:05:22 +00:00
1 changed files with 6 additions and 7 deletions

View File

@ -50,16 +50,15 @@ func TestExistsInvalidStorageID(t *testing.T) {
require.False(t, res.Exists)
})
t.Run("invalid storage id", func(t *testing.T) {
storageID := slice.Copy(putRes.StorageID)
storageID[0] = '9'
t.Run("valid id but corrupted file", func(t *testing.T) {
relBadFileDir := filepath.Join("9", "0")
badFileName := "0"
// An invalid boltdb file is created so that it returns an error when opened
badFileDir := filepath.Join(dir, "9", "0")
require.NoError(t, os.MkdirAll(badFileDir, os.ModePerm))
require.NoError(t, os.WriteFile(filepath.Join(badFileDir, "0"), []byte("not a boltdb file content"), 0777))
require.NoError(t, os.MkdirAll(filepath.Join(dir, relBadFileDir), os.ModePerm))
require.NoError(t, os.WriteFile(filepath.Join(dir, relBadFileDir, badFileName), []byte("not a boltdb file content"), 0777))
res, err := b.Exists(context.Background(), common.ExistsPrm{Address: addr, StorageID: storageID})
res, err := b.Exists(context.Background(), common.ExistsPrm{Address: addr, StorageID: []byte(filepath.Join(relBadFileDir, badFileName))})
require.Error(t, err)
require.False(t, res.Exists)
})