Skip to content

Commit b7a0519

Browse files
[FAB-3615] TestPresumedDead and TestResponses
Changed logic to make sure that call to comm.Send will not executed before associated comm.Accept Change-Id: I3f48ec29c270f7eaa72b1feeda94b7ce05a02817 Signed-off-by: Gennady Laventman <[email protected]>
1 parent 6e7aae7 commit b7a0519

File tree

1 file changed

+25
-5
lines changed

1 file changed

+25
-5
lines changed

gossip/comm/comm_test.go

+25-5
Original file line numberDiff line numberDiff line change
@@ -428,9 +428,13 @@ func TestResponses(t *testing.T) {
428428
defer comm1.Stop()
429429
defer comm2.Stop()
430430

431+
wg := sync.WaitGroup{}
432+
431433
msg := createGossipMsg()
434+
wg.Add(1)
432435
go func() {
433436
inChan := comm1.Accept(acceptAll)
437+
wg.Done()
434438
for m := range inChan {
435439
reply := createGossipMsg()
436440
reply.Nonce = m.GetGossipMessage().Nonce + 1
@@ -440,9 +444,9 @@ func TestResponses(t *testing.T) {
440444
expectedNOnce := uint64(msg.Nonce + 1)
441445
responsesFromComm1 := comm2.Accept(acceptAll)
442446

443-
ticker := time.NewTicker(time.Duration(6000) * time.Millisecond)
447+
ticker := time.NewTicker(10 * time.Second)
448+
wg.Wait()
444449
comm2.Send(msg, remotePeer(8611))
445-
time.Sleep(time.Duration(100) * time.Millisecond)
446450

447451
select {
448452
case <-ticker.C:
@@ -596,8 +600,24 @@ func TestPresumedDead(t *testing.T) {
596600
t.Parallel()
597601
comm1, _ := newCommInstance(4611, naiveSec)
598602
comm2, _ := newCommInstance(4612, naiveSec)
599-
go comm1.Send(createGossipMsg(), remotePeer(4612))
600-
<-comm2.Accept(acceptAll)
603+
604+
wg := sync.WaitGroup{}
605+
wg.Add(1)
606+
go func() {
607+
wg.Wait()
608+
comm1.Send(createGossipMsg(), remotePeer(4612))
609+
}()
610+
611+
ticker := time.NewTicker(time.Duration(10) * time.Second)
612+
acceptCh := comm2.Accept(acceptAll)
613+
wg.Done()
614+
select {
615+
case <-acceptCh:
616+
ticker.Stop()
617+
case <-ticker.C:
618+
assert.Fail(t, "Didn't get first message")
619+
}
620+
601621
comm2.Stop()
602622
go func() {
603623
for i := 0; i < 5; i++ {
@@ -606,7 +626,7 @@ func TestPresumedDead(t *testing.T) {
606626
}
607627
}()
608628

609-
ticker := time.NewTicker(time.Second * time.Duration(3))
629+
ticker = time.NewTicker(time.Second * time.Duration(3))
610630
select {
611631
case <-ticker.C:
612632
assert.Fail(t, "Didn't get a presumed dead message within a timely manner")

0 commit comments

Comments
 (0)