From f4b401f24e40399851ab35d226cc156e61de1e56 Mon Sep 17 00:00:00 2001 From: Cory Schwartz Date: Wed, 14 Apr 2021 21:34:52 -0700 Subject: [PATCH] more tests after merge --- dial_test.go | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/dial_test.go b/dial_test.go index 2a966a4..1bad4d9 100644 --- a/dial_test.go +++ b/dial_test.go @@ -583,6 +583,7 @@ func TestDialSimultaneousJoin(t *testing.T) { go acceptAndHang(s2silentListener) connch := make(chan network.Conn, 512) + errs := make(chan error, 2) // start a dial to s2 through the silent addr go func() { @@ -590,12 +591,15 @@ func TestDialSimultaneousJoin(t *testing.T) { c, err := s1.DialPeer(ctx, s2.LocalPeer()) if err != nil { - t.Fatal(err) + errs <- err + connch <- nil + return } t.Logf("first dial succedded; conn: %+v", c) connch <- c + errs <- nil }() // wait a bit for the dial to take hold @@ -605,18 +609,22 @@ func TestDialSimultaneousJoin(t *testing.T) { go func() { s2addrs, err := s2.InterfaceListenAddresses() if err != nil { - t.Fatal(err) + errs <- err + return } s1.Peerstore().AddAddrs(s2.LocalPeer(), s2addrs[:1], peerstore.PermanentAddrTTL) c, err := s1.DialPeer(ctx, s2.LocalPeer()) if err != nil { - t.Fatal(err) + errs <- err + connch <- nil + return } t.Logf("second dial succedded; conn: %+v", c) connch <- c + errs <- nil }() // wait for the second dial to finish @@ -626,16 +634,27 @@ func TestDialSimultaneousJoin(t *testing.T) { go func() { c, err := s1.DialPeer(ctx, s2.LocalPeer()) if err != nil { - t.Fatal(err) + errs <- err + connch <- nil + return } t.Logf("third dial succedded; conn: %+v", c) connch <- c + errs <- nil }() c3 := <-connch + // raise any errors from the two + for i := 0; i < 3; i++ { + err := <-errs + if err != nil { + t.Fatal(err) + } + } + if c2 != c3 { t.Fatal("expected c2 and c3 to be the same") } -- GitLab