diff --git a/blocks/blockstore/write_cache_test.go b/blocks/blockstore/write_cache_test.go index 2be865903..c2175a1fc 100644 --- a/blocks/blockstore/write_cache_test.go +++ b/blocks/blockstore/write_cache_test.go @@ -1,10 +1,11 @@ package blockstore import ( + "testing" + ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore" syncds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore/sync" "github.com/jbenet/go-ipfs/blocks" - "testing" ) func TestReturnsErrorWhenSizeNegative(t *testing.T) { diff --git a/core/mock.go b/core/mock.go index ab1149787..7f6faa0b4 100644 --- a/core/mock.go +++ b/core/mock.go @@ -25,12 +25,13 @@ func NewMockNode() (*IpfsNode, error) { return nil, err } - p, err := peer.WithKeyPair(sk, pk) + nd.Peerstore = peer.NewPeerstore() + + p, err := nd.Peerstore.WithKeyPair(sk, pk) if err != nil { return nil, err } - nd.Peerstore = peer.NewPeerstore() nd.Identity, err = nd.Peerstore.Add(p) if err != nil { return nil, err diff --git a/crypto/spipe/handshake.go b/crypto/spipe/handshake.go index 1f87a8cf4..f0c581b96 100644 --- a/crypto/spipe/handshake.go +++ b/crypto/spipe/handshake.go @@ -14,9 +14,10 @@ import ( "crypto/sha1" "crypto/sha256" "crypto/sha512" - bfish "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.crypto/blowfish" "hash" + bfish "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.crypto/blowfish" + proto "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/goprotobuf/proto" ci "github.com/jbenet/go-ipfs/crypto" diff --git a/crypto/spipe/spipe_test.go b/crypto/spipe/spipe_test.go index 716b73311..85e133203 100644 --- a/crypto/spipe/spipe_test.go +++ b/crypto/spipe/spipe_test.go @@ -7,6 +7,7 @@ import ( ci "github.com/jbenet/go-ipfs/crypto" "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" "github.com/jbenet/go-ipfs/util" "github.com/jbenet/go-ipfs/util/pipes" ) @@ -17,7 +18,7 @@ func getPeer(tb testing.TB) peer.Peer { tb.Fatal(err) } - p, err := peer.WithKeyPair(privk, pubk) + p, err := mockpeer.WithKeyPair(privk, pubk) if err != nil { tb.Fatal(err) } diff --git a/exchange/bitswap/bitswap_test.go b/exchange/bitswap/bitswap_test.go index d26a8ffc9..b1fb52f44 100644 --- a/exchange/bitswap/bitswap_test.go +++ b/exchange/bitswap/bitswap_test.go @@ -10,7 +10,7 @@ import ( blocks "github.com/jbenet/go-ipfs/blocks" blocksutil "github.com/jbenet/go-ipfs/blocks/blocksutil" tn "github.com/jbenet/go-ipfs/exchange/bitswap/testnet" - peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" mock "github.com/jbenet/go-ipfs/routing/mock" ) @@ -53,7 +53,7 @@ func TestProviderForKeyButNetworkCannotFind(t *testing.T) { g := NewSessionGenerator(net, rs) block := blocks.NewBlock([]byte("block")) - rs.Announce(peer.WithIDString("testing"), block.Key()) // but not on network + rs.Announce(mockpeer.WithIDString("testing"), block.Key()) // but not on network solo := g.Next() diff --git a/exchange/bitswap/message/message_test.go b/exchange/bitswap/message/message_test.go index de64b7925..daea58f90 100644 --- a/exchange/bitswap/message/message_test.go +++ b/exchange/bitswap/message/message_test.go @@ -6,7 +6,7 @@ import ( blocks "github.com/jbenet/go-ipfs/blocks" pb "github.com/jbenet/go-ipfs/exchange/bitswap/message/internal/pb" - peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" ) @@ -89,7 +89,7 @@ func TestCopyProtoByValue(t *testing.T) { func TestToNetMethodSetsPeer(t *testing.T) { m := New() - p := peer.WithIDString("X") + p := mockpeer.WithIDString("X") netmsg, err := m.ToNet(p) if err != nil { t.Fatal(err) @@ -107,7 +107,7 @@ func TestToNetFromNetPreservesWantList(t *testing.T) { original.AddWanted(u.Key("T")) original.AddWanted(u.Key("F")) - p := peer.WithIDString("X") + p := mockpeer.WithIDString("X") netmsg, err := original.ToNet(p) if err != nil { t.Fatal(err) @@ -138,7 +138,7 @@ func TestToAndFromNetMessage(t *testing.T) { original.AddBlock(blocks.NewBlock([]byte("F"))) original.AddBlock(blocks.NewBlock([]byte("M"))) - p := peer.WithIDString("X") + p := mockpeer.WithIDString("X") netmsg, err := original.ToNet(p) if err != nil { t.Fatal(err) diff --git a/exchange/bitswap/strategy/strategy_test.go b/exchange/bitswap/strategy/strategy_test.go index d07af601b..4fdbc4ab5 100644 --- a/exchange/bitswap/strategy/strategy_test.go +++ b/exchange/bitswap/strategy/strategy_test.go @@ -7,6 +7,7 @@ import ( blocks "github.com/jbenet/go-ipfs/blocks" message "github.com/jbenet/go-ipfs/exchange/bitswap/message" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" ) type peerAndStrategist struct { @@ -16,7 +17,7 @@ type peerAndStrategist struct { func newPeerAndStrategist(idStr string) peerAndStrategist { return peerAndStrategist{ - Peer: peer.WithIDString(idStr), + Peer: mockpeer.WithIDString(idStr), Strategy: New(true), } } diff --git a/exchange/bitswap/testnet/network_test.go b/exchange/bitswap/testnet/network_test.go index 6f57aad50..eb3c83112 100644 --- a/exchange/bitswap/testnet/network_test.go +++ b/exchange/bitswap/testnet/network_test.go @@ -9,6 +9,7 @@ import ( bsmsg "github.com/jbenet/go-ipfs/exchange/bitswap/message" bsnet "github.com/jbenet/go-ipfs/exchange/bitswap/network" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" ) func TestSendRequestToCooperativePeer(t *testing.T) { @@ -18,8 +19,8 @@ func TestSendRequestToCooperativePeer(t *testing.T) { t.Log("Get two network adapters") - initiator := net.Adapter(peer.WithIDString("initiator")) - recipient := net.Adapter(peer.WithID(idOfRecipient)) + initiator := net.Adapter(mockpeer.WithIDString("initiator")) + recipient := net.Adapter(mockpeer.WithID(idOfRecipient)) expectedStr := "response from recipient" recipient.SetDelegate(lambda(func( @@ -43,7 +44,7 @@ func TestSendRequestToCooperativePeer(t *testing.T) { message := bsmsg.New() message.AddBlock(blocks.NewBlock([]byte("data"))) response, err := initiator.SendRequest( - context.Background(), peer.WithID(idOfRecipient), message) + context.Background(), mockpeer.WithID(idOfRecipient), message) if err != nil { t.Fatal(err) } @@ -61,8 +62,8 @@ func TestSendRequestToCooperativePeer(t *testing.T) { func TestSendMessageAsyncButWaitForResponse(t *testing.T) { net := VirtualNetwork() idOfResponder := []byte("responder") - waiter := net.Adapter(peer.WithIDString("waiter")) - responder := net.Adapter(peer.WithID(idOfResponder)) + waiter := net.Adapter(mockpeer.WithIDString("waiter")) + responder := net.Adapter(mockpeer.WithID(idOfResponder)) var wg sync.WaitGroup @@ -107,7 +108,7 @@ func TestSendMessageAsyncButWaitForResponse(t *testing.T) { messageSentAsync := bsmsg.New() messageSentAsync.AddBlock(blocks.NewBlock([]byte("data"))) errSending := waiter.SendMessage( - context.Background(), peer.WithID(idOfResponder), messageSentAsync) + context.Background(), mockpeer.WithID(idOfResponder), messageSentAsync) if errSending != nil { t.Fatal(errSending) } diff --git a/exchange/bitswap/testutils.go b/exchange/bitswap/testutils.go index 402a5b1d2..7f8ef8546 100644 --- a/exchange/bitswap/testutils.go +++ b/exchange/bitswap/testutils.go @@ -16,6 +16,7 @@ func NewSessionGenerator( return SessionGenerator{ net: net, rs: rs, + ps: peer.NewPeerstore(), seq: 0, } } @@ -24,11 +25,12 @@ type SessionGenerator struct { seq int net tn.Network rs mock.RoutingServer + ps peer.Peerstore } func (g *SessionGenerator) Next() Instance { g.seq++ - return session(g.net, g.rs, []byte(string(g.seq))) + return session(g.net, g.rs, g.ps, []byte(string(g.seq))) } func (g *SessionGenerator) Instances(n int) []Instance { @@ -51,8 +53,8 @@ type Instance struct { // NB: It's easy make mistakes by providing the same peer ID to two different // sessions. To safeguard, use the SessionGenerator to generate sessions. It's // just a much better idea. -func session(net tn.Network, rs mock.RoutingServer, id peer.ID) Instance { - p := peer.WithID(id) +func session(net tn.Network, rs mock.RoutingServer, ps peer.Peerstore, id peer.ID) Instance { + p := ps.WithID(id) adapter := net.Adapter(p) htc := rs.Client(p) diff --git a/namesys/resolve_test.go b/namesys/resolve_test.go index d7d49c5a6..35fa49254 100644 --- a/namesys/resolve_test.go +++ b/namesys/resolve_test.go @@ -5,13 +5,13 @@ import ( ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore" ci "github.com/jbenet/go-ipfs/crypto" - "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" mock "github.com/jbenet/go-ipfs/routing/mock" u "github.com/jbenet/go-ipfs/util" ) func TestRoutingResolve(t *testing.T) { - local := peer.WithIDString("testID") + local := mockpeer.WithIDString("testID") lds := ds.NewMapDatastore() d := mock.NewMockRouter(local, lds) diff --git a/net/conn/dial_test.go b/net/conn/dial_test.go index f3d3808d0..32e5359bb 100644 --- a/net/conn/dial_test.go +++ b/net/conn/dial_test.go @@ -5,6 +5,7 @@ import ( ci "github.com/jbenet/go-ipfs/crypto" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr" @@ -21,7 +22,7 @@ func setupPeer(addr string) (peer.Peer, error) { return nil, err } - p, err := peer.WithKeyPair(sk, pk) + p, err := mockpeer.WithKeyPair(sk, pk) if err != nil { return nil, err } diff --git a/net/mux/mux_test.go b/net/mux/mux_test.go index d445ff779..703725199 100644 --- a/net/mux/mux_test.go +++ b/net/mux/mux_test.go @@ -11,6 +11,7 @@ import ( msg "github.com/jbenet/go-ipfs/net/message" pb "github.com/jbenet/go-ipfs/net/mux/internal/pb" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" ) @@ -30,7 +31,7 @@ func newPeer(t *testing.T, id string) peer.Peer { return nil } - return peer.WithID(peer.ID(mh)) + return mockpeer.WithID(peer.ID(mh)) } func testMsg(t *testing.T, m msg.NetMessage, data []byte) { diff --git a/net/service/service_test.go b/net/service/service_test.go index 7152289aa..1ab2ec8d6 100644 --- a/net/service/service_test.go +++ b/net/service/service_test.go @@ -7,6 +7,7 @@ import ( msg "github.com/jbenet/go-ipfs/net/message" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" mh "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multihash" @@ -32,7 +33,7 @@ func newPeer(t *testing.T, id string) peer.Peer { return nil } - return peer.WithID(peer.ID(mh)) + return mockpeer.WithID(peer.ID(mh)) } func TestServiceHandler(t *testing.T) { diff --git a/net/swarm/simul_test.go b/net/swarm/simul_test.go index 114a4dcbf..c9f05d944 100644 --- a/net/swarm/simul_test.go +++ b/net/swarm/simul_test.go @@ -6,6 +6,7 @@ import ( "testing" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" ) @@ -28,7 +29,7 @@ func TestSimultOpen(t *testing.T) { var wg sync.WaitGroup connect := func(s *Swarm, dst peer.Peer) { // copy for other peer - cp := peer.WithID(dst.ID()) + cp := mockpeer.WithID(dst.ID()) cp.AddAddress(dst.Addresses()[0]) if _, err := s.Dial(cp); err != nil { diff --git a/net/swarm/swarm_test.go b/net/swarm/swarm_test.go index 266b2762e..1558b9e2a 100644 --- a/net/swarm/swarm_test.go +++ b/net/swarm/swarm_test.go @@ -9,6 +9,7 @@ import ( ci "github.com/jbenet/go-ipfs/crypto" msg "github.com/jbenet/go-ipfs/net/message" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" @@ -43,7 +44,7 @@ func setupPeer(t *testing.T, addr string) peer.Peer { t.Fatal(err) } - p, err := peer.WithKeyPair(sk, pk) + p, err := mockpeer.WithKeyPair(sk, pk) if err != nil { t.Fatal(err) } diff --git a/peer/mock/mock.go b/peer/mock/mock.go new file mode 100644 index 000000000..c0a9b39e6 --- /dev/null +++ b/peer/mock/mock.go @@ -0,0 +1,19 @@ +package mockpeer + +import ( + "github.com/jbenet/go-ipfs/peer" + + ic "github.com/jbenet/go-ipfs/crypto" +) + +func WithKeyPair(sk ic.PrivKey, pk ic.PubKey) (peer.Peer, error) { + return peer.NewPeerstore().WithKeyPair(sk, pk) +} + +func WithID(id peer.ID) peer.Peer { + return peer.NewPeerstore().WithID(id) +} + +func WithIDString(id string) peer.Peer { + return peer.NewPeerstore().WithIDString(id) +} diff --git a/peer/peer.go b/peer/peer.go index 7578d476a..8ba003fc6 100644 --- a/peer/peer.go +++ b/peer/peer.go @@ -394,34 +394,3 @@ func (p *peer) SetVersions(agent, protocol string) { p.agentVersion = agent p.protocolVersion = protocol } - -// WithKeyPair returns a Peer object with given keys. -func WithKeyPair(sk ic.PrivKey, pk ic.PubKey) (Peer, error) { - if sk == nil && pk == nil { - return nil, fmt.Errorf("PeerWithKeyPair nil keys") - } - - pk2 := sk.GetPublic() - if pk == nil { - pk = pk2 - } else if !pk.Equals(pk2) { - return nil, fmt.Errorf("key mismatch. pubkey is not privkey's pubkey") - } - - pkid, err := IDFromPubKey(pk) - if err != nil { - return nil, fmt.Errorf("Failed to hash public key: %v", err) - } - - return &peer{id: pkid, pubKey: pk, privKey: sk}, nil -} - -// WithID constructs a peer with given ID. -func WithID(id ID) Peer { - return &peer{id: id} -} - -// WithIDString constructs a peer with given ID (string). -func WithIDString(id string) Peer { - return WithID(ID(id)) -} diff --git a/peer/peer_test.go b/peer/peer_test.go index 4a7aad9e8..7224882fc 100644 --- a/peer/peer_test.go +++ b/peer/peer_test.go @@ -27,7 +27,7 @@ func TestNetAddress(t *testing.T) { return } - p := WithID(ID(mh)) + p := NewPeerstore().WithID(ID(mh)) p.AddAddress(tcp) p.AddAddress(udp) p.AddAddress(tcp) @@ -48,7 +48,7 @@ func TestNetAddress(t *testing.T) { } func TestStringMethodWithSmallId(t *testing.T) { - p := WithID([]byte(string(0))) + p := NewPeerstore().WithID([]byte(string(0))) p1, ok := p.(*peer) if !ok { t.Fatal("WithID doesn't return a peer") diff --git a/peer/peerstore.go b/peer/peerstore.go index c61e8ddcc..e2750f6fe 100644 --- a/peer/peerstore.go +++ b/peer/peerstore.go @@ -3,7 +3,9 @@ package peer import ( "sync" + ic "github.com/jbenet/go-ipfs/crypto" u "github.com/jbenet/go-ipfs/util" + errors "github.com/jbenet/go-ipfs/util/debugerror" ) // Peerstore provides a threadsafe collection for peers. @@ -12,6 +14,10 @@ type Peerstore interface { Add(Peer) (Peer, error) Delete(ID) error All() (*Map, error) + + WithKeyPair(sk ic.PrivKey, pk ic.PubKey) (Peer, error) + WithID(id ID) Peer + WithIDString(id string) Peer } type peerstore struct { @@ -89,3 +95,34 @@ func (p *peerstore) All() (*Map, error) { } return &ps, nil } + +// WithKeyPair returns a Peer object with given keys. +func (ps *peerstore) WithKeyPair(sk ic.PrivKey, pk ic.PubKey) (Peer, error) { + if sk == nil && pk == nil { + return nil, errors.Errorf("PeerWithKeyPair nil keys") + } + + pk2 := sk.GetPublic() + if pk == nil { + pk = pk2 + } else if !pk.Equals(pk2) { + return nil, errors.Errorf("key mismatch. pubkey is not privkey's pubkey") + } + + pkid, err := IDFromPubKey(pk) + if err != nil { + return nil, errors.Errorf("Failed to hash public key: %v", err) + } + + return &peer{id: pkid, pubKey: pk, privKey: sk}, nil +} + +// WithID constructs a peer with given ID. +func (ps *peerstore) WithID(id ID) Peer { + return &peer{id: id} +} + +// WithIDString constructs a peer with given ID (string). +func (ps *peerstore) WithIDString(id string) Peer { + return ps.WithID(ID(id)) +} diff --git a/peer/peerstore_test.go b/peer/peerstore_test.go index f36eb7afb..808e48eb1 100644 --- a/peer/peerstore_test.go +++ b/peer/peerstore_test.go @@ -7,13 +7,13 @@ import ( ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr" ) -func setupPeer(id string, addr string) (Peer, error) { +func setupPeer(ps Peerstore, id string, addr string) (Peer, error) { tcp, err := ma.NewMultiaddr(addr) if err != nil { return nil, err } - p := WithIDString(id) + p := ps.WithIDString(id) p.AddAddress(tcp) return p, nil } @@ -22,8 +22,8 @@ func TestPeerstore(t *testing.T) { ps := NewPeerstore() - p11, _ := setupPeer("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31", "/ip4/127.0.0.1/tcp/1234") - p21, _ := setupPeer("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32", "/ip4/127.0.0.1/tcp/2345") + p11, _ := setupPeer(ps, "11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31", "/ip4/127.0.0.1/tcp/1234") + p21, _ := setupPeer(ps, "11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32", "/ip4/127.0.0.1/tcp/2345") // p31, _ := setupPeer("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33", "/ip4/127.0.0.1/tcp/3456") // p41, _ := setupPeer("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a34", "/ip4/127.0.0.1/tcp/4567") diff --git a/peer/queue/queue_test.go b/peer/queue/queue_test.go index 7bc1b42f1..c40b4d866 100644 --- a/peer/queue/queue_test.go +++ b/peer/queue/queue_test.go @@ -7,13 +7,14 @@ import ( "time" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" ) func newPeer(id string) peer.Peer { - return peer.WithIDString(id) + return mockpeer.WithIDString(id) } func TestQueue(t *testing.T) { @@ -69,7 +70,7 @@ func TestQueue(t *testing.T) { func newPeerTime(t time.Time) peer.Peer { s := fmt.Sprintf("hmmm time: %v", t) h := u.Hash([]byte(s)) - return peer.WithID(peer.ID(h)) + return mockpeer.WithID(peer.ID(h)) } func TestSyncQueue(t *testing.T) { diff --git a/repo/logs.go b/repo/logs.go index 0ec141eee..b59896500 100644 --- a/repo/logs.go +++ b/repo/logs.go @@ -1,9 +1,9 @@ package repo import ( + config "github.com/jbenet/go-ipfs/config" util "github.com/jbenet/go-ipfs/util" eventlog "github.com/jbenet/go-ipfs/util/eventlog" - config "github.com/jbenet/go-ipfs/config" ) func ConfigureEventLogger(config config.Logs) error { diff --git a/routing/dht/dht_test.go b/routing/dht/dht_test.go index e62145d5b..df16ea878 100644 --- a/routing/dht/dht_test.go +++ b/routing/dht/dht_test.go @@ -14,6 +14,7 @@ import ( mux "github.com/jbenet/go-ipfs/net/mux" netservice "github.com/jbenet/go-ipfs/net/service" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" "fmt" @@ -68,7 +69,7 @@ func makePeer(addr ma.Multiaddr) peer.Peer { if err != nil { panic(err) } - p, err := peer.WithKeyPair(sk, pk) + p, err := mockpeer.WithKeyPair(sk, pk) if err != nil { panic(err) } diff --git a/routing/dht/ext_test.go b/routing/dht/ext_test.go index 791c1066c..1f30ff4fa 100644 --- a/routing/dht/ext_test.go +++ b/routing/dht/ext_test.go @@ -12,6 +12,7 @@ import ( msg "github.com/jbenet/go-ipfs/net/message" mux "github.com/jbenet/go-ipfs/net/mux" peer "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" "github.com/jbenet/go-ipfs/routing" pb "github.com/jbenet/go-ipfs/routing/dht/pb" u "github.com/jbenet/go-ipfs/util" @@ -210,7 +211,7 @@ func TestGetFailures(t *testing.T) { func _randPeer() peer.Peer { id := make(peer.ID, 16) crand.Read(id) - p := peer.WithID(id) + p := mockpeer.WithID(id) return p } diff --git a/routing/dht/providers_test.go b/routing/dht/providers_test.go index 1ae85fbc4..f22c09a7b 100644 --- a/routing/dht/providers_test.go +++ b/routing/dht/providers_test.go @@ -4,6 +4,7 @@ import ( "testing" "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" @@ -14,7 +15,7 @@ func TestProviderManager(t *testing.T) { mid := peer.ID("testing") p := NewProviderManager(ctx, mid) a := u.Key("test") - p.AddProvider(a, peer.WithIDString("testingprovider")) + p.AddProvider(a, mockpeer.WithIDString("testingprovider")) resp := p.GetProviders(ctx, a) if len(resp) != 1 { t.Fatal("Could not retrieve provider.") diff --git a/routing/mock/routing_test.go b/routing/mock/routing_test.go index 196e00b5e..ca9c845d0 100644 --- a/routing/mock/routing_test.go +++ b/routing/mock/routing_test.go @@ -6,6 +6,7 @@ import ( context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context" "github.com/jbenet/go-ipfs/peer" + "github.com/jbenet/go-ipfs/peer/mock" u "github.com/jbenet/go-ipfs/util" ) @@ -20,7 +21,7 @@ func TestKeyNotFound(t *testing.T) { func TestSetAndGet(t *testing.T) { pid := peer.ID([]byte("the peer id")) - p := peer.WithID(pid) + p := mockpeer.WithID(pid) k := u.Key("42") rs := VirtualRoutingServer() err := rs.Announce(p, k) @@ -40,7 +41,7 @@ func TestSetAndGet(t *testing.T) { } func TestClientFindProviders(t *testing.T) { - peer := peer.WithIDString("42") + peer := mockpeer.WithIDString("42") rs := VirtualRoutingServer() client := rs.Client(peer) @@ -79,7 +80,7 @@ func TestClientOverMax(t *testing.T) { k := u.Key("hello") numProvidersForHelloKey := 100 for i := 0; i < numProvidersForHelloKey; i++ { - peer := peer.WithIDString(string(i)) + peer := mockpeer.WithIDString(string(i)) err := rs.Announce(peer, k) if err != nil { t.Fatal(err) @@ -92,7 +93,7 @@ func TestClientOverMax(t *testing.T) { } max := 10 - peer := peer.WithIDString("TODO") + peer := mockpeer.WithIDString("TODO") client := rs.Client(peer) providersFromClient := client.FindProvidersAsync(context.Background(), k, max) @@ -114,7 +115,7 @@ func TestCanceledContext(t *testing.T) { i := 0 go func() { // infinite stream for { - peer := peer.WithIDString(string(i)) + peer := mockpeer.WithIDString(string(i)) err := rs.Announce(peer, k) if err != nil { t.Fatal(err) @@ -123,7 +124,7 @@ func TestCanceledContext(t *testing.T) { } }() - local := peer.WithIDString("peer id doesn't matter") + local := mockpeer.WithIDString("peer id doesn't matter") client := rs.Client(local) t.Log("warning: max is finite so this test is non-deterministic") diff --git a/util/eventlog/entry.go b/util/eventlog/entry.go index ec293f98e..ef0b3d814 100644 --- a/util/eventlog/entry.go +++ b/util/eventlog/entry.go @@ -3,8 +3,8 @@ package eventlog import ( "time" - "github.com/jbenet/go-ipfs/util" "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/maybebtc/logrus" + "github.com/jbenet/go-ipfs/util" ) type entry struct { diff --git a/util/testutil/gen.go b/util/testutil/gen.go index 186740ea9..daafa1dd7 100644 --- a/util/testutil/gen.go +++ b/util/testutil/gen.go @@ -28,5 +28,6 @@ func RandPeer() peer.Peer { id := make([]byte, 16) crand.Read(id) mhid := u.Hash(id) - return peer.WithID(peer.ID(mhid)) + ps := peer.NewPeerstore() + return ps.WithID(peer.ID(mhid)) }