fix(core, peer) helpers to testutil, err handling
License: MIT Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Brian Tiger Chow committed
Dec 8, 2014 at 14:32 UTC
74eb03231d3c4f7a649bcff8ca86a8e35d5c640a
20 files changed
+54
-55
core/core.go
+2
-1
@@ -267,7 +267,8 @@ func initConnections(ctx context.Context, cfg *config.Config, pstore peer.Peerst
267
// setup peer
268
id, err := peer.DecodePrettyID(p.PeerID)
269
if err != nil {
270
- // return err
270
+ log.Criticalf("Bootstrapping error: %v", err)
271
+ continue
272
}
273
npeer, err := pstore.FindOrCreate(id)
274
if err != nil {
crypto/spipe/spipe_test.go
+2
-2
@@ -7,9 +7,9 @@ import (
7
8
ci "github.com/jbenet/go-ipfs/crypto"
9
"github.com/jbenet/go-ipfs/peer"
10
- "github.com/jbenet/go-ipfs/peer/mock"
10
"github.com/jbenet/go-ipfs/util"
11
"github.com/jbenet/go-ipfs/util/pipes"
12
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
13
)
14
15
func getPeer(tb testing.TB) peer.Peer {
@@ -18,7 +18,7 @@ func getPeer(tb testing.TB) peer.Peer {
18
tb.Fatal(err)
19
}
20
21
- p, err := mockpeer.WithKeyPair(privk, pubk)
21
+ p, err := testutil.NewPeerWithKeyPair(privk, pubk)
22
if err != nil {
23
tb.Fatal(err)
24
}
exchange/bitswap/bitswap_test.go
+2
-2
@@ -10,8 +10,8 @@ import (
10
blocks "github.com/jbenet/go-ipfs/blocks"
11
blocksutil "github.com/jbenet/go-ipfs/blocks/blocksutil"
12
tn "github.com/jbenet/go-ipfs/exchange/bitswap/testnet"
13
- "github.com/jbenet/go-ipfs/peer/mock"
13
mock "github.com/jbenet/go-ipfs/routing/mock"
14
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
15
)
16
17
func TestClose(t *testing.T) {
@@ -53,7 +53,7 @@ func TestProviderForKeyButNetworkCannotFind(t *testing.T) {
53
g := NewSessionGenerator(net, rs)
54
55
block := blocks.NewBlock([]byte("block"))
56
- rs.Announce(mockpeer.WithIDString("testing"), block.Key()) // but not on network
56
+ rs.Announce(testutil.NewPeerWithIDString("testing"), block.Key()) // but not on network
57
58
solo := g.Next()
59
exchange/bitswap/message/message_test.go
+4
-4
@@ -6,8 +6,8 @@ import (
6
7
blocks "github.com/jbenet/go-ipfs/blocks"
8
pb "github.com/jbenet/go-ipfs/exchange/bitswap/message/internal/pb"
9
- "github.com/jbenet/go-ipfs/peer/mock"
9
u "github.com/jbenet/go-ipfs/util"
10
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
11
)
12
13
func TestAppendWanted(t *testing.T) {
@@ -89,7 +89,7 @@ func TestCopyProtoByValue(t *testing.T) {
89
90
func TestToNetMethodSetsPeer(t *testing.T) {
91
m := New()
92
- p := mockpeer.WithIDString("X")
92
+ p := testutil.NewPeerWithIDString("X")
93
netmsg, err := m.ToNet(p)
94
if err != nil {
95
t.Fatal(err)
@@ -107,7 +107,7 @@ func TestToNetFromNetPreservesWantList(t *testing.T) {
107
original.AddWanted(u.Key("T"))
108
original.AddWanted(u.Key("F"))
109
110
- p := mockpeer.WithIDString("X")
110
+ p := testutil.NewPeerWithIDString("X")
111
netmsg, err := original.ToNet(p)
112
if err != nil {
113
t.Fatal(err)
@@ -138,7 +138,7 @@ func TestToAndFromNetMessage(t *testing.T) {
138
original.AddBlock(blocks.NewBlock([]byte("F")))
139
original.AddBlock(blocks.NewBlock([]byte("M")))
140
141
- p := mockpeer.WithIDString("X")
141
+ p := testutil.NewPeerWithIDString("X")
142
netmsg, err := original.ToNet(p)
143
if err != nil {
144
t.Fatal(err)
exchange/bitswap/strategy/strategy_test.go
+2
-2
@@ -7,7 +7,7 @@ import (
7
blocks "github.com/jbenet/go-ipfs/blocks"
8
message "github.com/jbenet/go-ipfs/exchange/bitswap/message"
9
peer "github.com/jbenet/go-ipfs/peer"
10
- "github.com/jbenet/go-ipfs/peer/mock"
10
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
11
)
12
13
type peerAndStrategist struct {
@@ -17,7 +17,7 @@ type peerAndStrategist struct {
17
18
func newPeerAndStrategist(idStr string) peerAndStrategist {
19
return peerAndStrategist{
20
- Peer: mockpeer.WithIDString(idStr),
20
+ Peer: testutil.NewPeerWithIDString(idStr),
21
Strategy: New(true),
22
}
23
}
exchange/bitswap/testnet/network_test.go
+7
-7
@@ -9,7 +9,7 @@ import (
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
- "github.com/jbenet/go-ipfs/peer/mock"
12
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
13
)
14
15
func TestSendRequestToCooperativePeer(t *testing.T) {
@@ -19,8 +19,8 @@ func TestSendRequestToCooperativePeer(t *testing.T) {
19
20
t.Log("Get two network adapters")
21
22
- initiator := net.Adapter(mockpeer.WithIDString("initiator"))
23
- recipient := net.Adapter(mockpeer.WithID(idOfRecipient))
22
+ initiator := net.Adapter(testutil.NewPeerWithIDString("initiator"))
23
+ recipient := net.Adapter(testutil.NewPeerWithID(idOfRecipient))
24
25
expectedStr := "response from recipient"
26
recipient.SetDelegate(lambda(func(
@@ -44,7 +44,7 @@ func TestSendRequestToCooperativePeer(t *testing.T) {
44
message := bsmsg.New()
45
message.AddBlock(blocks.NewBlock([]byte("data")))
46
response, err := initiator.SendRequest(
47
- context.Background(), mockpeer.WithID(idOfRecipient), message)
47
+ context.Background(), testutil.NewPeerWithID(idOfRecipient), message)
48
if err != nil {
49
t.Fatal(err)
50
}
@@ -62,8 +62,8 @@ func TestSendRequestToCooperativePeer(t *testing.T) {
62
func TestSendMessageAsyncButWaitForResponse(t *testing.T) {
63
net := VirtualNetwork()
64
idOfResponder := []byte("responder")
65
- waiter := net.Adapter(mockpeer.WithIDString("waiter"))
66
- responder := net.Adapter(mockpeer.WithID(idOfResponder))
65
+ waiter := net.Adapter(testutil.NewPeerWithIDString("waiter"))
66
+ responder := net.Adapter(testutil.NewPeerWithID(idOfResponder))
67
68
var wg sync.WaitGroup
69
@@ -108,7 +108,7 @@ func TestSendMessageAsyncButWaitForResponse(t *testing.T) {
108
messageSentAsync := bsmsg.New()
109
messageSentAsync.AddBlock(blocks.NewBlock([]byte("data")))
110
errSending := waiter.SendMessage(
111
- context.Background(), mockpeer.WithID(idOfResponder), messageSentAsync)
111
+ context.Background(), testutil.NewPeerWithID(idOfResponder), messageSentAsync)
112
if errSending != nil {
113
t.Fatal(errSending)
114
}
importer/importer_test.go
+1
-1
@@ -12,7 +12,7 @@ import (
12
"github.com/jbenet/go-ipfs/importer/chunk"
13
uio "github.com/jbenet/go-ipfs/unixfs/io"
14
u "github.com/jbenet/go-ipfs/util"
15
- "github.com/jbenet/go-ipfs/util/testutil"
15
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
16
)
17
18
// NOTE:
namesys/resolve_test.go
+2
-2
@@ -5,13 +5,13 @@ import (
5
6
ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore"
7
ci "github.com/jbenet/go-ipfs/crypto"
8
- "github.com/jbenet/go-ipfs/peer/mock"
8
mock "github.com/jbenet/go-ipfs/routing/mock"
9
u "github.com/jbenet/go-ipfs/util"
10
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
11
)
12
13
func TestRoutingResolve(t *testing.T) {
14
- local := mockpeer.WithIDString("testID")
14
+ local := testutil.NewPeerWithIDString("testID")
15
lds := ds.NewMapDatastore()
16
d := mock.NewMockRouter(local, lds)
17
net/conn/dial_test.go
+2
-2
@@ -5,7 +5,7 @@ import (
5
6
ci "github.com/jbenet/go-ipfs/crypto"
7
peer "github.com/jbenet/go-ipfs/peer"
8
- "github.com/jbenet/go-ipfs/peer/mock"
8
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
9
10
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
11
ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr"
@@ -22,7 +22,7 @@ func setupPeer(addr string) (peer.Peer, error) {
22
return nil, err
23
}
24
25
- p, err := mockpeer.WithKeyPair(sk, pk)
25
+ p, err := testutil.NewPeerWithKeyPair(sk, pk)
26
if err != nil {
27
return nil, err
28
}
net/mux/mux_test.go
+2
-2
@@ -11,7 +11,7 @@ import (
11
msg "github.com/jbenet/go-ipfs/net/message"
12
pb "github.com/jbenet/go-ipfs/net/mux/internal/pb"
13
peer "github.com/jbenet/go-ipfs/peer"
14
- "github.com/jbenet/go-ipfs/peer/mock"
14
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
15
16
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
17
)
@@ -31,7 +31,7 @@ func newPeer(t *testing.T, id string) peer.Peer {
31
return nil
32
}
33
34
- return mockpeer.WithID(peer.ID(mh))
34
+ return testutil.NewPeerWithID(peer.ID(mh))
35
}
36
37
func testMsg(t *testing.T, m msg.NetMessage, data []byte) {
net/service/service_test.go
+2
-2
@@ -7,7 +7,7 @@ import (
7
8
msg "github.com/jbenet/go-ipfs/net/message"
9
peer "github.com/jbenet/go-ipfs/peer"
10
- "github.com/jbenet/go-ipfs/peer/mock"
10
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
11
12
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
13
mh "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multihash"
@@ -33,7 +33,7 @@ func newPeer(t *testing.T, id string) peer.Peer {
33
return nil
34
}
35
36
- return mockpeer.WithID(peer.ID(mh))
36
+ return testutil.NewPeerWithID(peer.ID(mh))
37
}
38
39
func TestServiceHandler(t *testing.T) {
net/swarm/simul_test.go
+2
-2
@@ -6,7 +6,7 @@ import (
6
"testing"
7
8
peer "github.com/jbenet/go-ipfs/peer"
9
- "github.com/jbenet/go-ipfs/peer/mock"
9
+ "github.com/jbenet/go-ipfs/util/testutil"
10
11
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
12
)
@@ -29,7 +29,7 @@ func TestSimultOpen(t *testing.T) {
29
var wg sync.WaitGroup
30
connect := func(s *Swarm, dst peer.Peer) {
31
// copy for other peer
32
- cp := mockpeer.WithID(dst.ID())
32
+ cp := testutil.NewPeerWithID(dst.ID())
33
cp.AddAddress(dst.Addresses()[0])
34
35
if _, err := s.Dial(cp); err != nil {
net/swarm/swarm_test.go
+2
-2
@@ -9,8 +9,8 @@ import (
9
ci "github.com/jbenet/go-ipfs/crypto"
10
msg "github.com/jbenet/go-ipfs/net/message"
11
peer "github.com/jbenet/go-ipfs/peer"
12
- "github.com/jbenet/go-ipfs/peer/mock"
12
u "github.com/jbenet/go-ipfs/util"
13
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
14
15
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
16
ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr"
@@ -44,7 +44,7 @@ func setupPeer(t *testing.T, addr string) peer.Peer {
44
t.Fatal(err)
45
}
46
47
- p, err := mockpeer.WithKeyPair(sk, pk)
47
+ p, err := testutil.NewPeerWithKeyPair(sk, pk)
48
if err != nil {
49
t.Fatal(err)
50
}
peer/queue/queue_test.go
+3
-3
@@ -7,14 +7,14 @@ import (
7
"time"
8
9
peer "github.com/jbenet/go-ipfs/peer"
10
- "github.com/jbenet/go-ipfs/peer/mock"
10
u "github.com/jbenet/go-ipfs/util"
11
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
12
13
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
14
)
15
16
func newPeer(id string) peer.Peer {
17
- return mockpeer.WithIDString(id)
17
+ return testutil.NewPeerWithIDString(id)
18
}
19
20
func TestQueue(t *testing.T) {
@@ -70,7 +70,7 @@ func TestQueue(t *testing.T) {
70
func newPeerTime(t time.Time) peer.Peer {
71
s := fmt.Sprintf("hmmm time: %v", t)
72
h := u.Hash([]byte(s))
73
- return mockpeer.WithID(peer.ID(h))
73
+ return testutil.NewPeerWithID(peer.ID(h))
74
}
75
76
func TestSyncQueue(t *testing.T) {
routing/dht/dht_test.go
+2
-2
@@ -14,8 +14,8 @@ import (
14
mux "github.com/jbenet/go-ipfs/net/mux"
15
netservice "github.com/jbenet/go-ipfs/net/service"
16
peer "github.com/jbenet/go-ipfs/peer"
17
- "github.com/jbenet/go-ipfs/peer/mock"
17
u "github.com/jbenet/go-ipfs/util"
18
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
19
20
"fmt"
21
"time"
@@ -69,7 +69,7 @@ func makePeer(addr ma.Multiaddr) peer.Peer {
69
if err != nil {
70
panic(err)
71
}
72
- p, err := mockpeer.WithKeyPair(sk, pk)
72
+ p, err := testutil.NewPeerWithKeyPair(sk, pk)
73
if err != nil {
74
panic(err)
75
}
routing/dht/ext_test.go
+3
-4
@@ -7,15 +7,14 @@ import (
7
8
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
9
"github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/goprotobuf/proto"
10
-
10
ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore"
11
msg "github.com/jbenet/go-ipfs/net/message"
12
mux "github.com/jbenet/go-ipfs/net/mux"
13
peer "github.com/jbenet/go-ipfs/peer"
15
- "github.com/jbenet/go-ipfs/peer/mock"
16
- "github.com/jbenet/go-ipfs/routing"
14
+ routing "github.com/jbenet/go-ipfs/routing"
15
pb "github.com/jbenet/go-ipfs/routing/dht/pb"
16
u "github.com/jbenet/go-ipfs/util"
17
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
18
19
"sync"
20
"time"
@@ -211,7 +210,7 @@ func TestGetFailures(t *testing.T) {
210
func _randPeer() peer.Peer {
211
id := make(peer.ID, 16)
212
crand.Read(id)
214
- p := mockpeer.WithID(id)
213
+ p := testutil.NewPeerWithID(id)
214
return p
215
}
216
routing/dht/providers_test.go
+2
-2
@@ -4,8 +4,8 @@ import (
4
"testing"
5
6
"github.com/jbenet/go-ipfs/peer"
7
- "github.com/jbenet/go-ipfs/peer/mock"
7
u "github.com/jbenet/go-ipfs/util"
8
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
9
10
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
11
)
@@ -15,7 +15,7 @@ func TestProviderManager(t *testing.T) {
15
mid := peer.ID("testing")
16
p := NewProviderManager(ctx, mid)
17
a := u.Key("test")
18
- p.AddProvider(a, mockpeer.WithIDString("testingprovider"))
18
+ p.AddProvider(a, testutil.NewPeerWithIDString("testingprovider"))
19
resp := p.GetProviders(ctx, a)
20
if len(resp) != 1 {
21
t.Fatal("Could not retrieve provider.")
routing/mock/routing_test.go
+7
-7
@@ -6,8 +6,8 @@ import (
6
7
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
8
"github.com/jbenet/go-ipfs/peer"
9
- "github.com/jbenet/go-ipfs/peer/mock"
9
u "github.com/jbenet/go-ipfs/util"
10
+ testutil "github.com/jbenet/go-ipfs/util/testutil"
11
)
12
13
func TestKeyNotFound(t *testing.T) {
@@ -21,7 +21,7 @@ func TestKeyNotFound(t *testing.T) {
21
22
func TestSetAndGet(t *testing.T) {
23
pid := peer.ID([]byte("the peer id"))
24
- p := mockpeer.WithID(pid)
24
+ p := testutil.NewPeerWithID(pid)
25
k := u.Key("42")
26
rs := VirtualRoutingServer()
27
err := rs.Announce(p, k)
@@ -41,7 +41,7 @@ func TestSetAndGet(t *testing.T) {
41
}
42
43
func TestClientFindProviders(t *testing.T) {
44
- peer := mockpeer.WithIDString("42")
44
+ peer := testutil.NewPeerWithIDString("42")
45
rs := VirtualRoutingServer()
46
client := rs.Client(peer)
47
@@ -80,7 +80,7 @@ func TestClientOverMax(t *testing.T) {
80
k := u.Key("hello")
81
numProvidersForHelloKey := 100
82
for i := 0; i < numProvidersForHelloKey; i++ {
83
- peer := mockpeer.WithIDString(string(i))
83
+ peer := testutil.NewPeerWithIDString(string(i))
84
err := rs.Announce(peer, k)
85
if err != nil {
86
t.Fatal(err)
@@ -93,7 +93,7 @@ func TestClientOverMax(t *testing.T) {
93
}
94
95
max := 10
96
- peer := mockpeer.WithIDString("TODO")
96
+ peer := testutil.NewPeerWithIDString("TODO")
97
client := rs.Client(peer)
98
99
providersFromClient := client.FindProvidersAsync(context.Background(), k, max)
@@ -115,7 +115,7 @@ func TestCanceledContext(t *testing.T) {
115
i := 0
116
go func() { // infinite stream
117
for {
118
- peer := mockpeer.WithIDString(string(i))
118
+ peer := testutil.NewPeerWithIDString(string(i))
119
err := rs.Announce(peer, k)
120
if err != nil {
121
t.Fatal(err)
@@ -124,7 +124,7 @@ func TestCanceledContext(t *testing.T) {
124
}
125
}()
126
127
- local := mockpeer.WithIDString("peer id doesn't matter")
127
+ local := testutil.NewPeerWithIDString("peer id doesn't matter")
128
client := rs.Client(local)
129
130
t.Log("warning: max is finite so this test is non-deterministic")
util/testutil/gen.go
+1
-2
@@ -28,6 +28,5 @@ func RandPeer() peer.Peer {
28
id := make([]byte, 16)
29
crand.Read(id)
30
mhid := u.Hash(id)
31
- ps := peer.NewPeerstore()
32
- return ps.WithID(peer.ID(mhid))
31
+ return NewPeerWithID(peer.ID(mhid))
32
}
util/testutil/mock.go
renamed
+4
-4
@@ -1,4 +1,4 @@
1
-package mockpeer
1
+package testutil
2
3
import (
4
"github.com/jbenet/go-ipfs/peer"
@@ -6,14 +6,14 @@ import (
6
ic "github.com/jbenet/go-ipfs/crypto"
7
)
8
9
-func WithKeyPair(sk ic.PrivKey, pk ic.PubKey) (peer.Peer, error) {
9
+func NewPeerWithKeyPair(sk ic.PrivKey, pk ic.PubKey) (peer.Peer, error) {
10
return peer.NewPeerstore().WithKeyPair(sk, pk)
11
}
12
13
-func WithID(id peer.ID) peer.Peer {
13
+func NewPeerWithID(id peer.ID) peer.Peer {
14
return peer.NewPeerstore().WithID(id)
15
}
16
17
-func WithIDString(id string) peer.Peer {
17
+func NewPeerWithIDString(id string) peer.Peer {
18
return peer.NewPeerstore().WithIDString(id)
19
}