6 g "github.com/anacrolix/generics"
7 "github.com/stretchr/testify/require"
9 "github.com/anacrolix/torrent/metainfo"
12 func testMarkedCompleteMissingOnRead(t *testing.T, csf func(string) ClientImplCloser) {
17 info := &metainfo.Info{
19 Files: []metainfo.FileInfo{{Path: []string{"a"}, Length: 1}},
20 Pieces: make([]byte, 20),
22 ts, err := cs.OpenTorrent(info, metainfo.Hash{})
23 require.NoError(t, err)
24 p := ts.PieceWithHash(info.Piece(0), g.None[[]byte]())
25 require.NoError(t, p.MarkComplete())
26 // require.False(t, p.GetIsComplete())
27 n, err := p.ReadAt(make([]byte, 1), 0)
29 require.EqualValues(t, 0, n)
30 require.False(t, p.Completion().Complete)
33 func TestMarkedCompleteMissingOnReadFile(t *testing.T) {
34 testMarkedCompleteMissingOnRead(t, NewFile)
37 func TestMarkedCompleteMissingOnReadFileBoltDB(t *testing.T) {
38 testMarkedCompleteMissingOnRead(t, NewBoltDB)