]> Sergey Matveev's repositories - btrtrc.git/blobdiff - bep40_test.go
Start implementing BEP 40
[btrtrc.git] / bep40_test.go
diff --git a/bep40_test.go b/bep40_test.go
new file mode 100644 (file)
index 0000000..4c82a5a
--- /dev/null
@@ -0,0 +1,27 @@
+package torrent
+
+import (
+       "net"
+       "testing"
+
+       "github.com/stretchr/testify/assert"
+)
+
+func TestBep40Priority(t *testing.T) {
+       assert.EqualValues(t, 0xec2d7224, bep40Priority(
+               ipPort{net.ParseIP("123.213.32.10"), 0},
+               ipPort{net.ParseIP("98.76.54.32"), 0},
+       ))
+       assert.EqualValues(t, 0xec2d7224, bep40Priority(
+               ipPort{net.ParseIP("98.76.54.32"), 0},
+               ipPort{net.ParseIP("123.213.32.10"), 0},
+       ))
+       assert.Equal(t, peerPriority(0x99568189), bep40Priority(
+               ipPort{net.ParseIP("123.213.32.10"), 0},
+               ipPort{net.ParseIP("123.213.32.234"), 0},
+       ))
+       assert.EqualValues(t, "\x00\x00\x00\x00", bep40PriorityBytes(
+               ipPort{net.ParseIP("123.213.32.234"), 0},
+               ipPort{net.ParseIP("123.213.32.234"), 0},
+       ))
+}