Skip to content

Commit

Permalink
satisfy race detector
Browse files Browse the repository at this point in the history
  • Loading branch information
nisdas authored and vyzo committed Sep 10, 2020
1 parent b0d384d commit f7f33e1
Showing 1 changed file with 25 additions and 12 deletions.
37 changes: 25 additions & 12 deletions gossipsub_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1584,12 +1584,21 @@ func TestGossipsubMultipleGraftTopics(t *testing.T) {
firstPeer := hosts[0].ID()
secondPeer := hosts[1].ID()

p2Sub := psubs[1]
p1Router := psubs[0].rt.(*GossipSubRouter)
p2Router := psubs[1].rt.(*GossipSubRouter)
// Add topics to second peer
p2Router.mesh[firstTopic] = map[peer.ID]struct{}{}
p2Router.mesh[secondTopic] = map[peer.ID]struct{}{}
p2Router.mesh[thirdTopic] = map[peer.ID]struct{}{}

finChan := make(chan struct{})

p2Sub.eval <- func() {
// Add topics to second peer
p2Router.mesh[firstTopic] = map[peer.ID]struct{}{}
p2Router.mesh[secondTopic] = map[peer.ID]struct{}{}
p2Router.mesh[thirdTopic] = map[peer.ID]struct{}{}

finChan <- struct{}{}
}
<-finChan

// Send multiple GRAFT messages to second peer from
// 1st peer
Expand All @@ -1599,15 +1608,19 @@ func TestGossipsubMultipleGraftTopics(t *testing.T) {

time.Sleep(time.Second * 1)

if _, ok := p2Router.mesh[firstTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", firstTopic)
}
if _, ok := p2Router.mesh[secondTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", secondTopic)
}
if _, ok := p2Router.mesh[thirdTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", thirdTopic)
p2Sub.eval <- func() {
if _, ok := p2Router.mesh[firstTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", firstTopic)
}
if _, ok := p2Router.mesh[secondTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", secondTopic)
}
if _, ok := p2Router.mesh[thirdTopic][firstPeer]; !ok {
t.Errorf("First peer wasnt added to mesh of the second peer for the topic %s", thirdTopic)
}
finChan <- struct{}{}
}
<-finChan
}

func TestGossipsubOpportunisticGrafting(t *testing.T) {
Expand Down

0 comments on commit f7f33e1

Please sign in to comment.