package torrent import ( "testing" "github.com/anacrolix/torrent/metainfo" "github.com/anacrolix/torrent/storage" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func TestBoltPieceCompletion(t *testing.T) { td := t.TempDir() pc, err := newPieceCompletion(td) require.NoError(t, err) defer pc.Close() pk := metainfo.PieceKey{} b, err := pc.Get(pk) require.NoError(t, err) assert.False(t, b.Ok) require.NoError(t, pc.Set(pk, false)) b, err = pc.Get(pk) require.NoError(t, err) assert.Equal(t, storage.Completion{Complete: false, Ok: true}, b) require.NoError(t, pc.Set(pk, true)) b, err = pc.Get(pk) require.NoError(t, err) assert.Equal(t, storage.Completion{Complete: true, Ok: true}, b) }