From: Matt Joiner Date: Thu, 22 Feb 2024 06:27:18 +0000 (+1100) Subject: Add test case from issue #906 X-Git-Tag: v1.55.0~17 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=489d7e8e45dbfae9a1ae0749aa595d45c50c6b17;p=btrtrc.git Add test case from issue #906 --- diff --git a/internal/cmd/issue-906/main.go b/internal/cmd/issue-906/main.go new file mode 100644 index 00000000..7c3bdc17 --- /dev/null +++ b/internal/cmd/issue-906/main.go @@ -0,0 +1,39 @@ +package main + +import ( + "log" + "net/http" + "os" + + _ "github.com/anacrolix/envpprof" + "github.com/anacrolix/torrent" +) + +func main() { + cfg := torrent.NewDefaultClientConfig() + cfg.Debug = true + cfg.DisablePEX = true + cfg.DisableTrackers = true + cfg.NoDHT = true + cfg.NoDefaultPortForwarding = true + + c, _ := torrent.NewClient(cfg) + defer c.Close() + http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { + c.WriteStatus(w) + }) + torrentFile := os.Args[1] + peerAddr := os.Args[2] + t, _ := c.AddTorrentFromFile(torrentFile) + println(t.AddPeers([]torrent.PeerInfo{{Addr: addr(peerAddr)}})) + <-t.GotInfo() + t.DownloadAll() + c.WaitAll() + log.Print("ermahgerd, torrent downloaded") +} + +type addr string + +func (a addr) String() string { + return string(a) +}