@@ -682,48 +682,106 @@ describe('routing driver ', function () {
682
682
}
683
683
684
684
// Given
685
- var kit = new boltkit . BoltKit ( ) ;
686
- var routingServer = kit . start ( './test/resources/boltkit/acquire_endpoints.script' , 9001 ) ;
687
- var writeServer = kit . start ( './test/resources/boltkit/write_server_with_version.script' , 9007 ) ;
688
- var readServer = kit . start ( './test/resources/boltkit/read_server_with_version.script' , 9005 ) ;
685
+ const kit = new boltkit . BoltKit ( ) ;
686
+ const routingServer = kit . start ( './test/resources/boltkit/acquire_endpoints.script' , 9001 ) ;
687
+ const writeServer = kit . start ( './test/resources/boltkit/write_server_with_version.script' , 9007 ) ;
688
+ const readServer = kit . start ( './test/resources/boltkit/read_server_with_version.script' , 9005 ) ;
689
689
690
690
kit . run ( function ( ) {
691
- var driver = newDriver ( "bolt+routing://127.0.0.1:9001" ) ;
691
+ const driver = newDriver ( "bolt+routing://127.0.0.1:9001" ) ;
692
692
// When
693
- var readSession = driver . session ( neo4j . session . READ ) ;
694
- readSession . run ( 'MATCH (n) RETURN n.name' ) . then ( function ( readResult ) {
695
- var writeSession = driver . session ( neo4j . session . WRITE ) ;
696
- writeSession . run ( "CREATE (n {name:'Bob'})" ) . then ( function ( writeResult ) {
697
- var readServerInfo = readResult . summary . server ;
698
- var writeServerInfo = writeResult . summary . server ;
699
-
700
- readSession . close ( ) ;
701
- writeSession . close ( ) ;
702
- driver . close ( ) ;
693
+ const readSession = driver . session ( neo4j . session . READ ) ;
694
+ readSession . run ( 'MATCH (n) RETURN n.name' ) . then ( readResult => {
695
+ const writeSession = driver . session ( neo4j . session . WRITE ) ;
696
+ writeSession . run ( "CREATE (n {name:'Bob'})" ) . then ( writeResult => {
697
+ const readServerInfo = readResult . summary . server ;
698
+ const writeServerInfo = writeResult . summary . server ;
699
+
700
+ readSession . close ( ) ;
701
+ writeSession . close ( ) ;
702
+ driver . close ( ) ;
703
703
704
- routingServer . exit ( function ( routingServerExitCode ) {
705
- writeServer . exit ( function ( writeServerExitCode ) {
706
- readServer . exit ( function ( readServerExitCode ) {
704
+ routingServer . exit ( routingServerExitCode => {
705
+ writeServer . exit ( writeServerExitCode => {
706
+ readServer . exit ( readServerExitCode => {
707
707
708
- expect ( readServerInfo . address ) . toBe ( '127.0.0.1:9005' ) ;
709
- expect ( readServerInfo . version ) . toBe ( 'TheReadServerV1' ) ;
708
+ expect ( readServerInfo . address ) . toBe ( '127.0.0.1:9005' ) ;
709
+ expect ( readServerInfo . version ) . toBe ( 'TheReadServerV1' ) ;
710
710
711
- expect ( writeServerInfo . address ) . toBe ( '127.0.0.1:9007' ) ;
712
- expect ( writeServerInfo . version ) . toBe ( 'TheWriteServerV1' ) ;
711
+ expect ( writeServerInfo . address ) . toBe ( '127.0.0.1:9007' ) ;
712
+ expect ( writeServerInfo . version ) . toBe ( 'TheWriteServerV1' ) ;
713
713
714
- expect ( routingServerExitCode ) . toEqual ( 0 ) ;
715
- expect ( writeServerExitCode ) . toEqual ( 0 ) ;
716
- expect ( readServerExitCode ) . toEqual ( 0 ) ;
714
+ expect ( routingServerExitCode ) . toEqual ( 0 ) ;
715
+ expect ( writeServerExitCode ) . toEqual ( 0 ) ;
716
+ expect ( readServerExitCode ) . toEqual ( 0 ) ;
717
717
718
- done ( ) ;
719
- } ) ;
718
+ done ( ) ;
720
719
} ) ;
721
720
} ) ;
721
+ } ) ;
722
722
} )
723
723
} ) ;
724
724
} ) ;
725
725
} ) ;
726
726
727
+ it ( 'should expose server info in cluster using observer' , function ( done ) {
728
+ if ( ! boltkit . BoltKitSupport ) {
729
+ done ( ) ;
730
+ return ;
731
+ }
732
+
733
+ // Given
734
+ const kit = new boltkit . BoltKit ( ) ;
735
+ const routingServer = kit . start ( './test/resources/boltkit/acquire_endpoints.script' , 9001 ) ;
736
+ const writeServer = kit . start ( './test/resources/boltkit/write_server_with_version.script' , 9007 ) ;
737
+ const readServer = kit . start ( './test/resources/boltkit/read_server_with_version.script' , 9005 ) ;
738
+
739
+ kit . run ( function ( ) {
740
+ const driver = newDriver ( "bolt+routing://127.0.0.1:9001" ) ;
741
+ // When
742
+ const readSession = driver . session ( neo4j . session . READ ) ;
743
+ readSession . run ( 'MATCH (n) RETURN n.name' ) . subscribe ( {
744
+ onNext : ( ) => {
745
+ } ,
746
+ onError : ( ) => {
747
+ } ,
748
+ onCompleted : readSummary => {
749
+ const writeSession = driver . session ( neo4j . session . WRITE ) ;
750
+ writeSession . run ( "CREATE (n {name:'Bob'})" ) . subscribe ( {
751
+ onNext : ( ) => {
752
+ } ,
753
+ onError : ( ) => {
754
+ } ,
755
+ onCompleted : writeSummary => {
756
+ readSession . close ( ) ;
757
+ writeSession . close ( ) ;
758
+ driver . close ( ) ;
759
+
760
+ routingServer . exit ( function ( routingServerExitCode ) {
761
+ writeServer . exit ( function ( writeServerExitCode ) {
762
+ readServer . exit ( function ( readServerExitCode ) {
763
+
764
+ expect ( readSummary . server . address ) . toBe ( '127.0.0.1:9005' ) ;
765
+ expect ( readSummary . server . version ) . toBe ( 'TheReadServerV1' ) ;
766
+
767
+ expect ( writeSummary . server . address ) . toBe ( '127.0.0.1:9007' ) ;
768
+ expect ( writeSummary . server . version ) . toBe ( 'TheWriteServerV1' ) ;
769
+
770
+ expect ( routingServerExitCode ) . toEqual ( 0 ) ;
771
+ expect ( writeServerExitCode ) . toEqual ( 0 ) ;
772
+ expect ( readServerExitCode ) . toEqual ( 0 ) ;
773
+
774
+ done ( ) ;
775
+ } ) ;
776
+ } ) ;
777
+ } ) ;
778
+ }
779
+ } )
780
+ }
781
+ } ) ;
782
+ } ) ;
783
+ } ) ;
784
+
727
785
function newDriver ( url ) {
728
786
// BoltKit currently does not support encryption, create driver with encryption turned off
729
787
return neo4j . driver ( url , neo4j . auth . basic ( "neo4j" , "neo4j" ) , {
0 commit comments