pass peer into testnet adapter method
Brian Tiger Chow committed
Dec 23, 2014 at 18:18 UTC
6cdb4c23b42735bfa976c2a546a9e0bbcd4c3167
3 files changed
+16
-15
exchange/bitswap/testnet/network.go
+6
-5
@@ -12,10 +12,11 @@ import (
12
mockrouting "github.com/jbenet/go-ipfs/routing/mock"
13
util "github.com/jbenet/go-ipfs/util"
14
delay "github.com/jbenet/go-ipfs/util/delay"
15
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
16
)
17
18
type Network interface {
18
- Adapter(peer.ID) bsnet.BitSwapNetwork
19
+ Adapter(testutil.Peer) bsnet.BitSwapNetwork
20
21
HasPeer(peer.ID) bool
22
}
@@ -36,13 +37,13 @@ type network struct {
37
delay delay.D
38
}
39
39
-func (n *network) Adapter(p peer.ID) bsnet.BitSwapNetwork {
40
+func (n *network) Adapter(p testutil.Peer) bsnet.BitSwapNetwork {
41
client := &networkClient{
41
- local: p,
42
+ local: p.ID(),
43
network: n,
43
- routing: n.routingserver.Client(peer.PeerInfo{ID: p}),
44
+ routing: n.routingserver.Client(peer.PeerInfo{ID: p.ID()}),
45
}
45
- n.clients[p] = client
46
+ n.clients[p.ID()] = client
47
return client
48
}
49
exchange/bitswap/testnet/network_test.go
+9
-9
@@ -5,24 +5,24 @@ import (
5
"testing"
6
7
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
8
-
8
blocks "github.com/jbenet/go-ipfs/blocks"
9
bsmsg "github.com/jbenet/go-ipfs/exchange/bitswap/message"
10
bsnet "github.com/jbenet/go-ipfs/exchange/bitswap/network"
11
peer "github.com/jbenet/go-ipfs/peer"
12
mockrouting "github.com/jbenet/go-ipfs/routing/mock"
13
delay "github.com/jbenet/go-ipfs/util/delay"
14
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
15
)
16
17
func TestSendRequestToCooperativePeer(t *testing.T) {
18
net := VirtualNetwork(mockrouting.NewServer(), delay.Fixed(0))
19
20
- idOfRecipient := peer.ID("recipient")
20
+ recipientPeer := testutil.RandPeerOrFatal(t)
21
22
t.Log("Get two network adapters")
23
24
- initiator := net.Adapter(peer.ID("initiator"))
25
- recipient := net.Adapter(idOfRecipient)
24
+ initiator := net.Adapter(testutil.RandPeerOrFatal(t))
25
+ recipient := net.Adapter(recipientPeer)
26
27
expectedStr := "response from recipient"
28
recipient.SetDelegate(lambda(func(
@@ -46,7 +46,7 @@ func TestSendRequestToCooperativePeer(t *testing.T) {
46
message := bsmsg.New()
47
message.AddBlock(blocks.NewBlock([]byte("data")))
48
response, err := initiator.SendRequest(
49
- context.Background(), idOfRecipient, message)
49
+ context.Background(), recipientPeer.ID(), message)
50
if err != nil {
51
t.Fatal(err)
52
}
@@ -67,9 +67,9 @@ func TestSendRequestToCooperativePeer(t *testing.T) {
67
68
func TestSendMessageAsyncButWaitForResponse(t *testing.T) {
69
net := VirtualNetwork(mockrouting.NewServer(), delay.Fixed(0))
70
- idOfResponder := peer.ID("responder")
71
- waiter := net.Adapter(peer.ID("waiter"))
72
- responder := net.Adapter(idOfResponder)
70
+ responderPeer := testutil.RandPeerOrFatal(t)
71
+ waiter := net.Adapter(testutil.RandPeerOrFatal(t))
72
+ responder := net.Adapter(responderPeer)
73
74
var wg sync.WaitGroup
75
@@ -114,7 +114,7 @@ func TestSendMessageAsyncButWaitForResponse(t *testing.T) {
114
messageSentAsync := bsmsg.New()
115
messageSentAsync.AddBlock(blocks.NewBlock([]byte("data")))
116
errSending := waiter.SendMessage(
117
- context.Background(), idOfResponder, messageSentAsync)
117
+ context.Background(), responderPeer.ID(), messageSentAsync)
118
if errSending != nil {
119
t.Fatal(errSending)
120
}
exchange/bitswap/testutils.go
+1
-1
@@ -80,7 +80,7 @@ func (i *Instance) SetBlockstoreLatency(t time.Duration) time.Duration {
80
// just a much better idea.
81
func session(ctx context.Context, net tn.Network, p testutil.Peer) Instance {
82
83
- adapter := net.Adapter(p.ID())
83
+ adapter := net.Adapter(p)
84
85
bsdelay := delay.Fixed(0)
86
const kWriteCacheElems = 100