@@ -82,11 +82,11 @@ func acceptAndHang(l net.Listener) {
82
82
}
83
83
84
84
func TestSimultDials (t * testing.T ) {
85
- // t.Skip("skipping for another test")
86
85
t .Parallel ()
87
86
88
87
ctx := context .Background ()
89
88
swarms := makeSwarms (t , 2 , swarmt .OptDisableReuseport )
89
+ defer closeSwarms (swarms )
90
90
91
91
// connect everyone
92
92
{
@@ -128,10 +128,6 @@ func TestSimultDials(t *testing.T) {
128
128
if c10l > 2 {
129
129
t .Error ("1->0 has" , c10l )
130
130
}
131
-
132
- for _ , s := range swarms {
133
- s .Close ()
134
- }
135
131
}
136
132
137
133
func newSilentPeer (t * testing.T ) (peer.ID , ma.Multiaddr , net.Listener ) {
@@ -154,8 +150,6 @@ func newSilentPeer(t *testing.T) (peer.ID, ma.Multiaddr, net.Listener) {
154
150
}
155
151
156
152
func TestDialWait (t * testing.T ) {
157
- t .Parallel ()
158
-
159
153
const dialTimeout = 250 * time .Millisecond
160
154
161
155
swarms := makeSwarms (t , 1 , swarmt .DialTimeout (dialTimeout ))
@@ -193,22 +187,18 @@ func TestDialBackoff(t *testing.T) {
193
187
if ci .IsRunning () {
194
188
t .Skip ("travis will never have fun with this test" )
195
189
}
196
-
197
190
t .Parallel ()
198
191
199
192
const dialTimeout = 250 * time .Millisecond
200
193
201
194
ctx := context .Background ()
202
195
swarms := makeSwarms (t , 2 , swarmt .DialTimeout (dialTimeout ))
196
+ defer closeSwarms (swarms )
203
197
s1 := swarms [0 ]
204
198
s2 := swarms [1 ]
205
- defer s1 .Close ()
206
- defer s2 .Close ()
207
199
208
200
s2addrs , err := s2 .InterfaceListenAddresses ()
209
- if err != nil {
210
- t .Fatal (err )
211
- }
201
+ require .NoError (t , err )
212
202
s1 .Peerstore ().AddAddrs (s2 .LocalPeer (), s2addrs , peerstore .PermanentAddrTTL )
213
203
214
204
// dial to a non-existent peer.
@@ -405,13 +395,10 @@ func TestDialBackoffClears(t *testing.T) {
405
395
t .Parallel ()
406
396
407
397
const dialTimeout = 250 * time .Millisecond
408
-
409
- ctx := context .Background ()
410
398
swarms := makeSwarms (t , 2 , swarmt .DialTimeout (dialTimeout ))
399
+ defer closeSwarms (swarms )
411
400
s1 := swarms [0 ]
412
401
s2 := swarms [1 ]
413
- defer s1 .Close ()
414
- defer s2 .Close ()
415
402
416
403
// use another address first, that accept and hang on conns
417
404
_ , s2bad , s2l := newSilentPeer (t )
@@ -422,13 +409,8 @@ func TestDialBackoffClears(t *testing.T) {
422
409
s1 .Peerstore ().AddAddr (s2 .LocalPeer (), s2bad , peerstore .PermanentAddrTTL )
423
410
424
411
before := time .Now ()
425
- c , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
426
- if err == nil {
427
- defer c .Close ()
428
- t .Fatal ("dialing to broken addr worked..." , err )
429
- } else {
430
- t .Log ("correctly got error:" , err )
431
- }
412
+ _ , err := s1 .DialPeer (context .Background (), s2 .LocalPeer ())
413
+ require .Error (t , err , "dialing to broken addr worked..." )
432
414
duration := time .Since (before )
433
415
434
416
if duration < dialTimeout * DialAttempts {
@@ -437,46 +419,24 @@ func TestDialBackoffClears(t *testing.T) {
437
419
if duration > 2 * dialTimeout * DialAttempts {
438
420
t .Error ("> 2*dialTimeout * DialAttempts not being respected" , duration , 2 * dialTimeout * DialAttempts )
439
421
}
440
-
441
- if ! s1 .Backoff ().Backoff (s2 .LocalPeer (), s2bad ) {
442
- t .Error ("s2 should now be on backoff" )
443
- } else {
444
- t .Log ("correctly added to backoff" )
445
- }
422
+ require .True (t , s1 .Backoff ().Backoff (s2 .LocalPeer (), s2bad ), "s2 should now be on backoff" )
446
423
447
424
// phase 2 -- add the working address. dial should succeed.
448
- ifaceAddrs1 , err := swarms [1 ].InterfaceListenAddresses ()
449
- if err != nil {
450
- t .Fatal (err )
451
- }
425
+ ifaceAddrs1 , err := s2 .InterfaceListenAddresses ()
426
+ require .NoError (t , err )
452
427
s1 .Peerstore ().AddAddrs (s2 .LocalPeer (), ifaceAddrs1 , peerstore .PermanentAddrTTL )
453
428
454
- if c , err := s1 .DialPeer (ctx , s2 .LocalPeer ()); err == nil {
455
- c .Close ()
456
- t .Log ("backoffs are per address, not peer" )
457
- }
458
-
459
- time .Sleep (BackoffBase )
460
-
461
- if c , err := s1 .DialPeer (ctx , s2 .LocalPeer ()); err != nil {
462
- t .Fatal (err )
463
- } else {
464
- c .Close ()
465
- t .Log ("correctly connected" )
466
- }
467
-
468
- if s1 .Backoff ().Backoff (s2 .LocalPeer (), s2bad ) {
469
- t .Error ("s2 should no longer be on backoff" )
470
- } else {
471
- t .Log ("correctly cleared backoff" )
472
- }
429
+ // backoffs are per address, not peer
430
+ c , err := s1 .DialPeer (context .Background (), s2 .LocalPeer ())
431
+ require .NoError (t , err )
432
+ defer c .Close ()
433
+ require .False (t , s1 .Backoff ().Backoff (s2 .LocalPeer (), s2bad ), "s2 should no longer be on backoff" )
473
434
}
474
435
475
436
func TestDialPeerFailed (t * testing.T ) {
476
437
t .Parallel ()
477
- ctx := context .Background ()
478
438
479
- swarms := makeSwarms (t , 2 )
439
+ swarms := makeSwarms (t , 2 , swarmt . DialTimeout ( 250 * time . Millisecond ) )
480
440
defer closeSwarms (swarms )
481
441
testedSwarm , targetSwarm := swarms [0 ], swarms [1 ]
482
442
@@ -492,10 +452,8 @@ func TestDialPeerFailed(t *testing.T) {
492
452
peerstore .PermanentAddrTTL )
493
453
}
494
454
495
- _ , err := testedSwarm .DialPeer (ctx , targetSwarm .LocalPeer ())
496
- if err == nil {
497
- t .Fatal (err )
498
- }
455
+ _ , err := testedSwarm .DialPeer (context .Background (), targetSwarm .LocalPeer ())
456
+ require .NoError (t , err )
499
457
500
458
// dial_test.go:508: correctly get a combined error: failed to dial PEER: all dials failed
501
459
// * [/ip4/127.0.0.1/tcp/46485] failed to negotiate security protocol: context deadline exceeded
@@ -513,28 +471,20 @@ func TestDialPeerFailed(t *testing.T) {
513
471
}
514
472
515
473
func TestDialExistingConnection (t * testing.T ) {
516
- ctx := context .Background ()
517
-
518
474
swarms := makeSwarms (t , 2 )
519
475
defer closeSwarms (swarms )
520
476
s1 := swarms [0 ]
521
477
s2 := swarms [1 ]
522
478
523
479
s1 .Peerstore ().AddAddrs (s2 .LocalPeer (), s2 .ListenAddresses (), peerstore .PermanentAddrTTL )
524
480
525
- c1 , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
526
- if err != nil {
527
- t .Fatal (err )
528
- }
481
+ c1 , err := s1 .DialPeer (context .Background (), s2 .LocalPeer ())
482
+ require .NoError (t , err )
529
483
530
- c2 , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
531
- if err != nil {
532
- t .Fatal (err )
533
- }
484
+ c2 , err := s1 .DialPeer (context .Background (), s2 .LocalPeer ())
485
+ require .NoError (t , err )
534
486
535
- if c1 != c2 {
536
- t .Fatal ("expecting the same connection from both dials" )
537
- }
487
+ require .Equal (t , c1 , c2 , "expecting the same connection from both dials" )
538
488
}
539
489
540
490
func newSilentListener (t * testing.T ) ([]ma.Multiaddr , net.Listener ) {
@@ -556,16 +506,12 @@ func newSilentListener(t *testing.T) ([]ma.Multiaddr, net.Listener) {
556
506
}
557
507
558
508
func TestDialSimultaneousJoin (t * testing.T ) {
559
- ctx , cancel := context .WithCancel (context .Background ())
560
- defer cancel ()
561
-
562
509
const dialTimeout = 250 * time .Millisecond
563
510
564
511
swarms := makeSwarms (t , 2 , swarmt .DialTimeout (dialTimeout ))
512
+ defer closeSwarms (swarms )
565
513
s1 := swarms [0 ]
566
514
s2 := swarms [1 ]
567
- defer s1 .Close ()
568
- defer s2 .Close ()
569
515
570
516
s2silentAddrs , s2silentListener := newSilentListener (t )
571
517
go acceptAndHang (s2silentListener )
@@ -577,7 +523,7 @@ func TestDialSimultaneousJoin(t *testing.T) {
577
523
go func () {
578
524
s1 .Peerstore ().AddAddrs (s2 .LocalPeer (), s2silentAddrs , peerstore .PermanentAddrTTL )
579
525
580
- c , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
526
+ c , err := s1 .DialPeer (context . Background () , s2 .LocalPeer ())
581
527
if err != nil {
582
528
errs <- err
583
529
connch <- nil
@@ -602,7 +548,7 @@ func TestDialSimultaneousJoin(t *testing.T) {
602
548
}
603
549
s1 .Peerstore ().AddAddrs (s2 .LocalPeer (), s2addrs [:1 ], peerstore .PermanentAddrTTL )
604
550
605
- c , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
551
+ c , err := s1 .DialPeer (context . Background () , s2 .LocalPeer ())
606
552
if err != nil {
607
553
errs <- err
608
554
connch <- nil
@@ -620,7 +566,7 @@ func TestDialSimultaneousJoin(t *testing.T) {
620
566
621
567
// start a third dial to s2, this should get the existing connection from the successful dial
622
568
go func () {
623
- c , err := s1 .DialPeer (ctx , s2 .LocalPeer ())
569
+ c , err := s1 .DialPeer (context . Background () , s2 .LocalPeer ())
624
570
if err != nil {
625
571
errs <- err
626
572
connch <- nil
@@ -637,10 +583,7 @@ func TestDialSimultaneousJoin(t *testing.T) {
637
583
638
584
// raise any errors from the previous goroutines
639
585
for i := 0 ; i < 3 ; i ++ {
640
- err := <- errs
641
- if err != nil {
642
- t .Fatal (err )
643
- }
586
+ require .NoError (t , <- errs )
644
587
}
645
588
646
589
if c2 != c3 {
@@ -660,13 +603,12 @@ func TestDialSimultaneousJoin(t *testing.T) {
660
603
}
661
604
662
605
func TestDialSelf (t * testing.T ) {
663
- ctx , cancel := context .WithCancel (context .Background ())
664
- defer cancel ()
606
+ t .Parallel ()
665
607
666
608
swarms := makeSwarms (t , 2 )
609
+ defer closeSwarms (swarms )
667
610
s1 := swarms [0 ]
668
- defer s1 .Close ()
669
611
670
- _ , err := s1 .DialPeer (ctx , s1 .LocalPeer ())
612
+ _ , err := s1 .DialPeer (context . Background () , s1 .LocalPeer ())
671
613
require .ErrorIs (t , err , ErrDialToSelf , "expected error from self dial" )
672
614
}
0 commit comments