"net"
"os"
"path/filepath"
- "strings"
"sync"
"testing"
"time"
func TestingConfig() *Config {
return &Config{
- ListenHost: func(network string) string {
- if strings.Contains(network, "4") {
- return "127.0.0.1"
- } else {
- return "::1"
- }
- },
+ ListenHost: LoopbackListenHost,
NoDHT: true,
DataDir: tempDir(),
DisableTrackers: true,
layout, err := newGreetingLayout()
require.NoError(t, err)
defer layout.Destroy()
- seeder, err := torrent.NewClient((&torrent.Config{
+ cfg := torrent.Config{
DataDir: layout.Completed,
DisableTrackers: true,
NoDHT: true,
Seed: true,
- }).SetListenAddr("localhost:0"))
+ ListenHost: torrent.LoopbackListenHost,
+ }
+ seeder, err := torrent.NewClient(&cfg)
require.NoError(t, err)
defer seeder.Close()
testutil.ExportStatusWriter(seeder, "s")
package torrent
+import "strings"
+
type peerNetworks struct {
tcp4, tcp6 bool
utp4, utp6 bool
}
return nil
}
+
+func LoopbackListenHost(network string) string {
+ if strings.Contains(network, "4") {
+ return "127.0.0.1"
+ } else {
+ return "::1"
+ }
+}