@@ -529,11 +529,17 @@ describe('high level API - with everything mixed all together!', function () {
529
529
var peerB
530
530
var swarmC // tcp+ws
531
531
var peerC
532
+ var swarmD // ws
533
+ var peerD
534
+ var swarmE // ws
535
+ var peerE
532
536
533
537
before ( ( done ) => {
534
538
peerA = new Peer ( )
535
539
peerB = new Peer ( )
536
540
peerC = new Peer ( )
541
+ peerD = new Peer ( )
542
+ peerE = new Peer ( )
537
543
538
544
// console.log('peer A', peerA.id.toB58String())
539
545
// console.log('peer B', peerB.id.toB58String())
@@ -542,6 +548,8 @@ describe('high level API - with everything mixed all together!', function () {
542
548
swarmA = new Swarm ( peerA )
543
549
swarmB = new Swarm ( peerB )
544
550
swarmC = new Swarm ( peerC )
551
+ swarmD = new Swarm ( peerD )
552
+ swarmE = new Swarm ( peerE )
545
553
546
554
done ( )
547
555
} )
@@ -552,18 +560,20 @@ describe('high level API - with everything mixed all together!', function () {
552
560
swarmA . close ( closed )
553
561
swarmB . close ( closed )
554
562
swarmC . close ( closed )
563
+ swarmD . close ( closed )
564
+ swarmE . close ( closed )
555
565
556
566
function closed ( ) {
557
- if ( ++ counter === 3 ) {
567
+ if ( ++ counter === 4 ) {
558
568
done ( )
559
569
}
560
570
}
561
571
} )
562
572
563
573
it ( 'add tcp' , ( done ) => {
564
- peerA . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9011 ' ) )
565
- peerB . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9021 ' ) )
566
- peerC . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9031 ' ) )
574
+ peerA . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/0 ' ) )
575
+ peerB . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/0 ' ) )
576
+ peerC . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/0 ' ) )
567
577
568
578
swarmA . transport . add ( 'tcp' , new TCP ( ) )
569
579
swarmA . transport . listen ( 'tcp' , { } , null , ready )
@@ -586,19 +596,27 @@ describe('high level API - with everything mixed all together!', function () {
586
596
it . skip ( 'add utp' , ( done ) => { } )
587
597
588
598
it ( 'add websockets' , ( done ) => {
589
- peerB . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9022/websockets' ) )
590
- peerC . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9032/websockets' ) )
599
+ peerB . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9012/websockets' ) )
600
+ peerC . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9022/websockets' ) )
601
+ peerD . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9032/websockets' ) )
602
+ peerE . multiaddr . add ( multiaddr ( '/ip4/127.0.0.1/tcp/9042/websockets' ) )
591
603
592
604
swarmB . transport . add ( 'ws' , new WebSockets ( ) )
593
605
swarmB . transport . listen ( 'ws' , { } , null , ready )
594
606
595
607
swarmC . transport . add ( 'ws' , new WebSockets ( ) )
596
608
swarmC . transport . listen ( 'ws' , { } , null , ready )
597
609
610
+ swarmD . transport . add ( 'ws' , new WebSockets ( ) )
611
+ swarmD . transport . listen ( 'ws' , { } , null , ready )
612
+
613
+ swarmE . transport . add ( 'ws' , new WebSockets ( ) )
614
+ swarmE . transport . listen ( 'ws' , { } , null , ready )
615
+
598
616
var counter = 0
599
617
600
618
function ready ( ) {
601
- if ( ++ counter === 2 ) {
619
+ if ( ++ counter === 4 ) {
602
620
done ( )
603
621
}
604
622
}
@@ -608,9 +626,15 @@ describe('high level API - with everything mixed all together!', function () {
608
626
swarmA . connection . addStreamMuxer ( spdy )
609
627
swarmB . connection . addStreamMuxer ( spdy )
610
628
swarmC . connection . addStreamMuxer ( spdy )
629
+ swarmD . connection . addStreamMuxer ( spdy )
630
+ swarmE . connection . addStreamMuxer ( spdy )
631
+
611
632
swarmA . connection . reuse ( )
612
633
swarmB . connection . reuse ( )
613
634
swarmC . connection . reuse ( )
635
+ swarmD . connection . reuse ( )
636
+ swarmE . connection . reuse ( )
637
+
614
638
done ( )
615
639
} )
616
640
@@ -631,6 +655,26 @@ describe('high level API - with everything mixed all together!', function () {
631
655
} )
632
656
} )
633
657
658
+ it ( 'dial from ws to ws' , ( done ) => {
659
+ swarmE . handle ( '/abacaxi/1.0.0' , ( conn ) => {
660
+ conn . pipe ( conn )
661
+ } )
662
+
663
+ swarmD . dial ( peerE , '/abacaxi/1.0.0' , ( err , conn ) => {
664
+ expect ( err ) . to . not . exist
665
+ expect ( Object . keys ( swarmD . muxedConns ) . length ) . to . equal ( 1 )
666
+
667
+ conn . end ( )
668
+ conn . on ( 'data' , ( ) => { } ) // let it flow.. let it flooooow
669
+ conn . on ( 'end' , ( ) => {
670
+ setTimeout ( ( ) => {
671
+ expect ( Object . keys ( swarmE . muxedConns ) . length ) . to . equal ( 1 )
672
+ done ( )
673
+ } , 1000 )
674
+ } )
675
+ } )
676
+ } )
677
+
634
678
it ( 'dial from tcp to tcp+ws (returned conn)' , ( done ) => {
635
679
swarmB . handle ( '/grapes/1.0.0' , ( conn ) => {
636
680
conn . pipe ( conn )
0 commit comments