@@ -41,6 +41,7 @@ describe('#integration examples', () => {
4141 let consoleOverride
4242 let consoleOverridePromise
4343 let consoleOverridePromiseResolve
44+ let consoleOverridePromiseReject
4445
4546 const user = sharedNeo4j . username
4647 const password = sharedNeo4j . password
@@ -53,8 +54,12 @@ describe('#integration examples', () => {
5354 beforeEach ( async ( ) => {
5455 consoleOverridePromise = new Promise ( ( resolve , reject ) => {
5556 consoleOverridePromiseResolve = resolve
57+ consoleOverridePromiseReject = reject
5658 } )
57- consoleOverride = { log : msg => consoleOverridePromiseResolve ( msg ) }
59+ consoleOverride = {
60+ log : msg => consoleOverridePromiseResolve ( msg ) ,
61+ error : msg => consoleOverridePromiseReject ( msg )
62+ }
5863
5964 protocolVersion = await sharedNeo4j . cleanupAndGetProtocolVersion (
6065 driverGlobal
@@ -416,29 +421,35 @@ describe('#integration examples', () => {
416421 // end::driver-introduction-example-variables[]
417422
418423 // tag::driver-introduction-example[]
419- const driver = neo4j . driver ( uri , neo4j . auth . basic ( user , password ) )
424+ const driver = neo4j . driver ( uri , neo4j . auth . basic ( user , password ) , {
425+ // Enabling driver logging info into the console.
426+ // Supported levels: 'error', 'warn', 'info' and 'debug'
427+ logging : neo4j . logging . console ( 'info' )
428+ } )
420429 const session = driver . session ( )
421430
422431 const person1Name = 'Alice'
423432 const person2Name = 'David'
433+ const knowsFrom = 'School'
424434
425435 try {
426436 // To learn more about the Cypher syntax, see https://neo4j.com/docs/cypher-manual/current/
427437 // The Reference Card is also a good resource for keywords https://neo4j.com/docs/cypher-refcard/current/
428438 const writeQuery = `MERGE (p1:Person { name: $person1Name })
429439 MERGE (p2:Person { name: $person2Name })
430- MERGE (p1)-[:KNOWS]->(p2)
431- RETURN p1, p2`
440+ MERGE (p1)-[k :KNOWS { from: $knowsFrom } ]->(p2)
441+ RETURN p1, p2, k `
432442
433443 // Write transactions allow the driver to handle retries and transient errors
434444 const writeResult = await session . writeTransaction ( tx =>
435- tx . run ( writeQuery , { person1Name, person2Name } )
445+ tx . run ( writeQuery , { person1Name, person2Name, knowsFrom } )
436446 )
437447 writeResult . records . forEach ( record => {
438448 const person1Node = record . get ( 'p1' )
439449 const person2Node = record . get ( 'p2' )
450+ const knowsRel = record . get ( 'k' )
440451 console . log (
441- `Created friendship between: ${ person1Node . properties . name } , ${ person2Node . properties . name } `
452+ `Created friendship between: ${ person1Node . properties . name } , ${ person2Node . properties . name } from ${ knowsRel . properties . from } `
442453 )
443454 } )
444455
@@ -452,7 +463,7 @@ describe('#integration examples', () => {
452463 console . log ( `Found person: ${ record . get ( 'name' ) } ` )
453464 } )
454465 } catch ( error ) {
455- console . error ( 'Something went wrong: ' , error )
466+ console . error ( error )
456467 } finally {
457468 await session . close ( )
458469 }
@@ -462,7 +473,7 @@ describe('#integration examples', () => {
462473 // end::driver-introduction-example[]
463474
464475 expect ( await consoleLoggedMsg ) . toEqual (
465- `Created friendship between: ${ person1Name } , ${ person2Name } `
476+ `Created friendship between: ${ person1Name } , ${ person2Name } from ${ knowsFrom } `
466477 )
467478 } , 60000 )
468479
0 commit comments