@@ -460,3 +460,132 @@ tape('multiple scopes different hosts', function(t) {
460
460
461
461
t . end ( )
462
462
} )
463
+
464
+ tape ( 'net: external is a string' , function ( t ) {
465
+ var net = Net ( {
466
+ external : 'domain.de' ,
467
+ scope : 'public' ,
468
+ port : '9966' ,
469
+ server : {
470
+ key : null ,
471
+ address : function ( ) { return { port : 9966 } }
472
+ } } )
473
+ t . equal ( net . stringify ( 'public' ) , 'net:domain.de:9966' )
474
+ t . equal ( net . stringify ( 'local' ) , null )
475
+ t . equal ( net . stringify ( 'device' ) , null )
476
+ t . end ( )
477
+ } )
478
+
479
+ tape ( 'net: external is an array' , function ( t ) {
480
+ var net = Net ( {
481
+ external : [ 'domain.de' , 'funtime.net' ] ,
482
+ scope : 'public' ,
483
+ port : '9966' ,
484
+ server : {
485
+ key : null ,
486
+ address : function ( ) { return { port : 9966 } }
487
+ } } )
488
+ t . equal ( net . stringify ( 'public' ) , 'net:domain.de:9966;net:funtime.net:9966' )
489
+ t . equal ( net . stringify ( 'local' ) , null )
490
+ t . equal ( net . stringify ( 'device' ) , null )
491
+ t . end ( )
492
+ } )
493
+
494
+ tape ( 'net: external is an array w/ a single entry & shs transform' , function ( t ) {
495
+ var net = Net ( {
496
+ external : [ 'domain.de' ] ,
497
+ scope : 'public' ,
498
+ port : '9966' ,
499
+ server : {
500
+ key : null ,
501
+ address : function ( ) { return { port : 9966 } }
502
+ } } )
503
+ var combined = Compose ( [ net , shs ] )
504
+ t . equal (
505
+ combined . stringify ( 'public' ) ,
506
+ 'net:domain.de:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw='
507
+ )
508
+ t . end ( )
509
+ } )
510
+
511
+ tape ( 'net: external is an array w/ multiple entries & shs transform' , function ( t ) {
512
+ var net = Net ( {
513
+ external : [ 'domain.de' , 'funtime.net' ] ,
514
+ scope : 'public' ,
515
+ port : '9966' ,
516
+ server : {
517
+ key : null ,
518
+ address : function ( ) { return { port : 9966 } }
519
+ } } )
520
+ var combined = Compose ( [ net , shs ] )
521
+ t . equal (
522
+ combined . stringify ( 'public' ) ,
523
+ 'net:domain.de:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw=;net:funtime.net:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw='
524
+ )
525
+ t . end ( )
526
+ } )
527
+
528
+ tape ( 'ws: external is a string' , function ( t ) {
529
+ var ws = Ws ( {
530
+ external : 'domain.de' ,
531
+ scope : 'public' ,
532
+ port : '9966' ,
533
+ server : {
534
+ key : null ,
535
+ address : function ( ) { return { port : 9966 } }
536
+ } } )
537
+ t . equal ( ws . stringify ( 'public' ) , 'ws://domain.de:9966' )
538
+ t . equal ( ws . stringify ( 'local' ) , null )
539
+ t . equal ( ws . stringify ( 'device' ) , null )
540
+ t . end ( )
541
+ } )
542
+
543
+
544
+ tape ( 'ws: external is an array' , function ( t ) {
545
+ var ws = Ws ( {
546
+ external : [ 'domain.de' , 'funtime.net' ] ,
547
+ scope : 'public' ,
548
+ port : '9966' ,
549
+ server : {
550
+ key : null ,
551
+ address : function ( ) { return { port : 9966 } }
552
+ } } )
553
+ t . equal ( ws . stringify ( 'public' ) , 'ws://domain.de:9966;ws://funtime.net:9966' )
554
+ t . equal ( ws . stringify ( 'local' ) , null )
555
+ t . equal ( ws . stringify ( 'device' ) , null )
556
+ t . end ( )
557
+ } )
558
+
559
+ tape ( 'ws: external is an array w/ a single entry & shs transform' , function ( t ) {
560
+ var ws = Ws ( {
561
+ external : [ 'domain.de' ] ,
562
+ scope : 'public' ,
563
+ port : '9966' ,
564
+ server : {
565
+ key : null ,
566
+ address : function ( ) { return { port : 9966 } }
567
+ } } )
568
+ var combined = Compose ( [ ws , shs ] )
569
+ t . equal (
570
+ combined . stringify ( 'public' ) ,
571
+ 'ws://domain.de:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw='
572
+ )
573
+ t . end ( )
574
+ } )
575
+
576
+ tape ( 'ws: external is an array w/ multiple entries & shs transform' , function ( t ) {
577
+ var ws = Ws ( {
578
+ external : [ 'domain.de' , 'funtime.net' ] ,
579
+ scope : 'public' ,
580
+ port : '9966' ,
581
+ server : {
582
+ key : null ,
583
+ address : function ( ) { return { port : 9966 } }
584
+ } } )
585
+ var combined = Compose ( [ ws , shs ] )
586
+ t . equal (
587
+ combined . stringify ( 'public' ) ,
588
+ 'ws://domain.de:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw=;ws://funtime.net:9966~shs:+y42DK+BGzqvU00EWMKiyj4fITskSm+Drxq1Dt2s3Yw='
589
+ )
590
+ t . end ( )
591
+ } )
0 commit comments