aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-07-18 14:08:10 +0200
committerDimitri Sokolyuk <demon@dim13.org>2016-07-18 14:08:10 +0200
commitc0b29f0ce90760b224302e37c6fc09508fcaee4e (patch)
tree0614e717c6fecb99f59760f04a31d6133011c28a
parent2c70638e8c963b50d4cba63411beac1f76b4170f (diff)
Split
-rw-r--r--tracker/messages_test.go38
-rw-r--r--tracker/peer.go3
-rw-r--r--tracker/peer_test.go41
3 files changed, 43 insertions, 39 deletions
diff --git a/tracker/messages_test.go b/tracker/messages_test.go
index 3cec8ee..bc7fcd0 100644
--- a/tracker/messages_test.go
+++ b/tracker/messages_test.go
@@ -7,44 +7,6 @@ import (
"dim13.org/btget/bencode"
)
-var peers = []byte{
- 111, 221, 44, 148, 32, 222, 195, 154, 163, 111, 42, 147,
- 86, 61, 71, 149, 164, 29, 5, 2, 148, 93, 238, 216,
- 88, 68, 56, 189, 200, 213, 84, 133, 247, 200, 236, 242,
- 46, 72, 237, 204, 200, 213, 14, 201, 109, 73, 200, 213,
- 84, 75, 131, 175, 5, 220, 70, 169, 35, 173, 26, 225,
- 109, 190, 212, 11, 200, 213, 201, 214, 238, 102, 247, 156,
- 198, 50, 156, 151, 192, 93, 148, 251, 136, 84, 199, 134,
- 165, 90, 207, 126, 27, 88, 5, 9, 98, 177, 200, 213,
- 174, 29, 166, 221, 104, 164, 1, 169, 138, 130, 212, 58,
- 37, 187, 101, 17, 27, 4, 88, 187, 225, 32, 14, 172,
- 78, 238, 2, 244, 48, 57, 12, 20, 162, 244, 27, 25,
- 149, 86, 117, 197, 200, 213, 175, 138, 19, 242, 200, 213,
- 64, 137, 236, 216, 200, 213, 90, 27, 148, 1, 200, 213,
- 95, 16, 113, 171, 200, 213, 176, 158, 132, 40, 193, 102,
- 89, 25, 194, 94, 84, 51, 195, 98, 74, 58, 173, 226,
- 79, 214, 235, 82, 27, 57, 71, 234, 212, 220, 69, 92,
- 158, 69, 244, 40, 200, 31, 97, 99, 44, 32, 26, 247,
- 88, 198, 224, 202, 200, 213, 89, 223, 63, 213, 200, 213,
- 121, 208, 115, 147, 179, 19, 37, 60, 16, 246, 227, 231,
- 185, 21, 217, 76, 205, 97, 212, 20, 34, 118, 115, 81,
- 98, 115, 68, 144, 65, 241, 162, 232, 144, 141, 26, 225,
- 129, 252, 22, 155, 58, 82, 82, 169, 127, 217, 200, 213,
- 46, 53, 182, 240, 241, 115, 181, 214, 35, 52, 228, 160,
- 37, 187, 122, 103, 51, 75, 94, 75, 219, 15, 199, 219,
- 212, 182, 155, 127, 200, 213, 5, 39, 94, 163, 62, 16,
-}
-
-func TestParsePeers(t *testing.T) {
- addrs, err := peerAddr(peers)
- if err != nil {
- t.Error(err)
- }
- for _, v := range addrs {
- t.Log(v)
- }
-}
-
func TestParseResponseCompact(t *testing.T) {
body, err := ioutil.ReadFile("../examples/tr_resp.compact")
if err != nil {
diff --git a/tracker/peer.go b/tracker/peer.go
index 99ad3a1..3bf319e 100644
--- a/tracker/peer.go
+++ b/tracker/peer.go
@@ -5,6 +5,7 @@ import (
"encoding/binary"
"fmt"
"net"
+ "net/url"
"dim13.org/btget/bencode"
)
@@ -16,7 +17,7 @@ type Peer struct {
}
func (p Peer) String() string {
- return fmt.Sprintf("%v %s %v", p.IP, p.ID, p.Port)
+ return fmt.Sprintf("%v %s %v", p.IP, url.QueryEscape(string(p.ID)), p.Port)
}
type Peers []Peer
diff --git a/tracker/peer_test.go b/tracker/peer_test.go
new file mode 100644
index 0000000..fa47604
--- /dev/null
+++ b/tracker/peer_test.go
@@ -0,0 +1,41 @@
+package tracker
+
+import "testing"
+
+var peers = []byte{
+ 111, 221, 44, 148, 32, 222, 195, 154, 163, 111, 42, 147,
+ 86, 61, 71, 149, 164, 29, 5, 2, 148, 93, 238, 216,
+ 88, 68, 56, 189, 200, 213, 84, 133, 247, 200, 236, 242,
+ 46, 72, 237, 204, 200, 213, 14, 201, 109, 73, 200, 213,
+ 84, 75, 131, 175, 5, 220, 70, 169, 35, 173, 26, 225,
+ 109, 190, 212, 11, 200, 213, 201, 214, 238, 102, 247, 156,
+ 198, 50, 156, 151, 192, 93, 148, 251, 136, 84, 199, 134,
+ 165, 90, 207, 126, 27, 88, 5, 9, 98, 177, 200, 213,
+ 174, 29, 166, 221, 104, 164, 1, 169, 138, 130, 212, 58,
+ 37, 187, 101, 17, 27, 4, 88, 187, 225, 32, 14, 172,
+ 78, 238, 2, 244, 48, 57, 12, 20, 162, 244, 27, 25,
+ 149, 86, 117, 197, 200, 213, 175, 138, 19, 242, 200, 213,
+ 64, 137, 236, 216, 200, 213, 90, 27, 148, 1, 200, 213,
+ 95, 16, 113, 171, 200, 213, 176, 158, 132, 40, 193, 102,
+ 89, 25, 194, 94, 84, 51, 195, 98, 74, 58, 173, 226,
+ 79, 214, 235, 82, 27, 57, 71, 234, 212, 220, 69, 92,
+ 158, 69, 244, 40, 200, 31, 97, 99, 44, 32, 26, 247,
+ 88, 198, 224, 202, 200, 213, 89, 223, 63, 213, 200, 213,
+ 121, 208, 115, 147, 179, 19, 37, 60, 16, 246, 227, 231,
+ 185, 21, 217, 76, 205, 97, 212, 20, 34, 118, 115, 81,
+ 98, 115, 68, 144, 65, 241, 162, 232, 144, 141, 26, 225,
+ 129, 252, 22, 155, 58, 82, 82, 169, 127, 217, 200, 213,
+ 46, 53, 182, 240, 241, 115, 181, 214, 35, 52, 228, 160,
+ 37, 187, 122, 103, 51, 75, 94, 75, 219, 15, 199, 219,
+ 212, 182, 155, 127, 200, 213, 5, 39, 94, 163, 62, 16,
+}
+
+func TestParsePeers(t *testing.T) {
+ addrs, err := peerAddr(peers)
+ if err != nil {
+ t.Error(err)
+ }
+ for _, v := range addrs {
+ t.Log(v)
+ }
+}