9 cmn "github.com/tendermint/tmlibs/common"
12 // Returns an empty dummy peer
13 func randPeer() *Peer {
17 RemoteAddr: cmn.Fmt("%v.%v.%v.%v:46656", rand.Int()%256, rand.Int()%256, rand.Int()%256, rand.Int()%256),
18 ListenAddr: cmn.Fmt("%v.%v.%v.%v:46656", rand.Int()%256, rand.Int()%256, rand.Int()%256, rand.Int()%256),
23 func TestAddRemoveOne(t *testing.T) {
24 peerSet := NewPeerSet()
27 err := peerSet.Add(peer)
29 t.Errorf("Failed to add new peer")
31 if peerSet.Size() != 1 {
32 t.Errorf("Failed to add new peer and increment size")
36 if peerSet.Has(peer.Key) {
37 t.Errorf("Failed to remove peer")
39 if peerSet.Size() != 0 {
40 t.Errorf("Failed to remove peer and decrement size")
44 func TestAddRemoveMany(t *testing.T) {
45 peerSet := NewPeerSet()
49 for i := 0; i < N; i++ {
51 if err := peerSet.Add(peer); err != nil {
52 t.Errorf("Failed to add new peer")
54 if peerSet.Size() != i+1 {
55 t.Errorf("Failed to add new peer and increment size")
57 peers = append(peers, peer)
60 for i, peer := range peers {
62 if peerSet.Has(peer.Key) {
63 t.Errorf("Failed to remove peer")
65 if peerSet.Size() != len(peers)-i-1 {
66 t.Errorf("Failed to remove peer and decrement size")