client_test.go | 25 +++++++++++++++++++++++++ diff --git a/client_test.go b/client_test.go index fec7bb9db59fcb02c74f5123f319280f55034aff..5878c3ccd769e59e6509896e1abf2c519ce93ca9 100644 --- a/client_test.go +++ b/client_test.go @@ -1078,3 +1078,28 @@ require.NoError(t, err) defer cl.Close() assert.NotEmpty(t, cl.DhtServers()) } + +func TestIssue335(t *testing.T) { + dir, mi := testutil.GreetingTestTorrent() + defer os.RemoveAll(dir) + cfg := TestingConfig() + cfg.Seed = false + cfg.Debug = true + cfg.DataDir = dir + comp, err := storage.NewBoltPieceCompletion(dir) + require.NoError(t, err) + defer comp.Close() + cfg.DefaultStorage = storage.NewMMapWithCompletion(dir, comp) + cl, err := NewClient(cfg) + require.NoError(t, err) + defer cl.Close() + tor, new, err := cl.AddTorrentSpec(TorrentSpecFromMetaInfo(mi)) + require.NoError(t, err) + assert.True(t, new) + require.True(t, cl.WaitAll()) + tor.Drop() + tor, new, err = cl.AddTorrentSpec(TorrentSpecFromMetaInfo(mi)) + require.NoError(t, err) + assert.True(t, new) + require.True(t, cl.WaitAll()) +}