Include webseed urls in MetaInfo.Magnet output

Fixes #469.
This commit is contained in:
Matt Joiner 2021-02-24 12:11:41 +11:00
parent 35464677ef
commit a22c1334c6
2 changed files with 18 additions and 4 deletions

View File

@ -2,6 +2,7 @@ package metainfo
import ( import (
"io" "io"
"net/url"
"os" "os"
"time" "time"
@ -80,8 +81,8 @@ func (mi *MetaInfo) Magnet(infoHash *Hash, info *Info) (m Magnet) {
} else { } else {
m.InfoHash = mi.HashInfoBytes() m.InfoHash = mi.HashInfoBytes()
} }
//m.Params = make(url.Values) m.Params = make(url.Values)
//m.Params["ws"] = mi.UrlList m.Params["ws"] = mi.UrlList
return return
} }

View File

@ -6,6 +6,7 @@ import (
"os" "os"
"path" "path"
"path/filepath" "path/filepath"
"strings"
"testing" "testing"
"github.com/anacrolix/missinggo" "github.com/anacrolix/missinggo"
@ -123,7 +124,14 @@ func TestMetainfoWithListURLList(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
assert.Len(t, mi.UrlList, 3) assert.Len(t, mi.UrlList, 3)
qt.Assert(t, mi.Magnet(nil, nil).String(), qt.ContentEquals, qt.Assert(t, mi.Magnet(nil, nil).String(), qt.ContentEquals,
"magnet:?xt=urn:btih:d4b197dff199aad447a9a352e31528adbbd97922&tr=http%3A%2F%2Fbt1.archive.org%3A6969%2Fannounce&tr=http%3A%2F%2Fbt2.archive.org%3A6969%2Fannounce") strings.Join([]string{
"magnet:?xt=urn:btih:d4b197dff199aad447a9a352e31528adbbd97922",
"tr=http%3A%2F%2Fbt1.archive.org%3A6969%2Fannounce",
"tr=http%3A%2F%2Fbt2.archive.org%3A6969%2Fannounce",
"ws=https%3A%2F%2Farchive.org%2Fdownload%2F",
"ws=http%3A%2F%2Fia601600.us.archive.org%2F26%2Fitems%2F",
"ws=http%3A%2F%2Fia801600.us.archive.org%2F26%2Fitems%2F",
}, "&"))
} }
func TestMetainfoWithStringURLList(t *testing.T) { func TestMetainfoWithStringURLList(t *testing.T) {
@ -131,7 +139,12 @@ func TestMetainfoWithStringURLList(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
assert.Len(t, mi.UrlList, 1) assert.Len(t, mi.UrlList, 1)
qt.Assert(t, mi.Magnet(nil, nil).String(), qt.ContentEquals, qt.Assert(t, mi.Magnet(nil, nil).String(), qt.ContentEquals,
"magnet:?xt=urn:btih:9da24e606e4ed9c7b91c1772fb5bf98f82bd9687&tr=http%3A%2F%2Fbt1.archive.org%3A6969%2Fannounce&tr=http%3A%2F%2Fbt2.archive.org%3A6969%2Fannounce") strings.Join([]string{
"magnet:?xt=urn:btih:9da24e606e4ed9c7b91c1772fb5bf98f82bd9687",
"tr=http%3A%2F%2Fbt1.archive.org%3A6969%2Fannounce",
"tr=http%3A%2F%2Fbt2.archive.org%3A6969%2Fannounce",
"ws=https%3A%2F%2Farchive.org%2Fdownload%2F",
}, "&"))
} }
// https://github.com/anacrolix/torrent/issues/247 // https://github.com/anacrolix/torrent/issues/247