7 cmn "github.com/tendermint/tmlibs/common"
10 // Returns an empty dummy peer
11 func randPeer() *Peer {
15 RemoteAddr: cmn.Fmt("%v.%v.%v.%v:46656", rand.Int()%256, rand.Int()%256, rand.Int()%256, rand.Int()%256),
16 ListenAddr: cmn.Fmt("%v.%v.%v.%v:46656", rand.Int()%256, rand.Int()%256, rand.Int()%256, rand.Int()%256),
21 func TestAddRemoveOne(t *testing.T) {
22 peerSet := NewPeerSet()
25 err := peerSet.Add(peer)
27 t.Errorf("Failed to add new peer")
29 if peerSet.Size() != 1 {
30 t.Errorf("Failed to add new peer and increment size")
34 if peerSet.Has(peer.Key) {
35 t.Errorf("Failed to remove peer")
37 if peerSet.Size() != 0 {
38 t.Errorf("Failed to remove peer and decrement size")
42 func TestAddRemoveMany(t *testing.T) {
43 peerSet := NewPeerSet()
47 for i := 0; i < N; i++ {
49 if err := peerSet.Add(peer); err != nil {
50 t.Errorf("Failed to add new peer")
52 if peerSet.Size() != i+1 {
53 t.Errorf("Failed to add new peer and increment size")
55 peers = append(peers, peer)
58 for i, peer := range peers {
60 if peerSet.Has(peer.Key) {
61 t.Errorf("Failed to remove peer")
63 if peerSet.Size() != len(peers)-i-1 {
64 t.Errorf("Failed to remove peer and decrement size")