@cryptotaxi247 / kubo / commits / eeae42b5c

test(snr/s) put

fix

Brian Tiger Chow committed Feb 2, 2015 at 04:31 UTC eeae42b5cc3938063f711cce721a7706a3ab79ed
1 file changed +40
routing/supernode/server_test.go new
+40
@@ -0,0 +1,40 @@
1 +package supernode
2 +
3 +import (
4 + "testing"
5 +
6 + datastore "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore"
7 + dhtpb "github.com/jbenet/go-ipfs/routing/dht/pb"
8 + "github.com/jbenet/go-ipfs/util"
9 +)
10 +
11 +func TestPutProviderDoesntResultInDuplicates(t *testing.T) {
12 + routingBackend := datastore.NewMapDatastore()
13 + k := util.Key("foo")
14 + put := []*dhtpb.Message_Peer{
15 + convPeer("bob", "127.0.0.1/tcp/4001"),
16 + convPeer("alice", "10.0.0.10/tcp/4001"),
17 + }
18 + if err := putRoutingProviders(routingBackend, k, put); err != nil {
19 + t.Fatal(err)
20 + }
21 + if err := putRoutingProviders(routingBackend, k, put); err != nil {
22 + t.Fatal(err)
23 + }
24 +
25 + got, err := getRoutingProviders(routingBackend, k)
26 + if err != nil {
27 + t.Fatal(err)
28 + }
29 + if len(got) != 2 {
30 + t.Fatal("should be 2 values, but there are", len(got))
31 + }
32 +}
33 +
34 +func convPeer(name string, addrs ...string) *dhtpb.Message_Peer {
35 + var rawAddrs [][]byte
36 + for _, addr := range addrs {
37 + rawAddrs = append(rawAddrs, []byte(addr))
38 + }
39 + return &dhtpb.Message_Peer{Id: &name, Addrs: rawAddrs}
40 +}