@@ -504,108 +504,111 @@ public void testEscapedQuery() {
504504
505505 @ Test
506506 public void testMultiExec (){
507- RedisGraphTransaction transaction = api .getContext ().multi ();
508-
509- transaction .set ("x" , "1" );
510- transaction .query ("social" , "CREATE (:Person {name:'a'})" );
511- transaction .query ("g" , "CREATE (:Person {name:'a'})" );
512- transaction .incr ("x" );
513- transaction .get ("x" );
514- transaction .query ("social" , "MATCH (n:Person) RETURN n" );
515- transaction .deleteGraph ("g" );
516- transaction .callProcedure ("social" , "db.labels" );
517- List <Object > results = transaction .exec ();
518-
519- // Redis set command
520- Assert .assertEquals (String .class , results .get (0 ).getClass ());
521- Assert .assertEquals ("OK" , results .get (0 ));
522-
523- // Redis graph command
524- Assert .assertEquals (ResultSetImpl .class , results .get (1 ).getClass ());
525- ResultSet resultSet = (ResultSet ) results .get (1 );
526- Assert .assertEquals (1 , resultSet .getStatistics ().nodesCreated ());
527- Assert .assertEquals (1 , resultSet .getStatistics ().propertiesSet ());
528-
529-
530- Assert .assertEquals (ResultSetImpl .class , results .get (2 ).getClass ());
531- resultSet = (ResultSet ) results .get (2 );
532- Assert .assertEquals (1 , resultSet .getStatistics ().nodesCreated ());
533- Assert .assertEquals (1 , resultSet .getStatistics ().propertiesSet ());
534-
535- // Redis incr command
536- Assert .assertEquals (Long .class , results .get (3 ).getClass ());
537- Assert .assertEquals ((long )2 , results .get (3 ));
538-
539- // Redis get command
540- Assert .assertEquals (String .class , results .get (4 ).getClass ());
541- Assert .assertEquals ("2" , results .get (4 ));
542-
543- // Graph query result
544- Assert .assertEquals (ResultSetImpl .class , results .get (5 ).getClass ());
545- resultSet = (ResultSet ) results .get (5 );
507+ try (RedisGraphContext c = api .getContext ()) {
508+ RedisGraphTransaction transaction = api .getContext ().multi ();
509+
510+ transaction .set ("x" , "1" );
511+ transaction .query ("social" , "CREATE (:Person {name:'a'})" );
512+ transaction .query ("g" , "CREATE (:Person {name:'a'})" );
513+ transaction .incr ("x" );
514+ transaction .get ("x" );
515+ transaction .query ("social" , "MATCH (n:Person) RETURN n" );
516+ transaction .deleteGraph ("g" );
517+ transaction .callProcedure ("social" , "db.labels" );
518+ List <Object > results = transaction .exec ();
519+
520+ // Redis set command
521+ Assert .assertEquals (String .class , results .get (0 ).getClass ());
522+ Assert .assertEquals ("OK" , results .get (0 ));
523+
524+ // Redis graph command
525+ Assert .assertEquals (ResultSetImpl .class , results .get (1 ).getClass ());
526+ ResultSet resultSet = (ResultSet ) results .get (1 );
527+ Assert .assertEquals (1 , resultSet .getStatistics ().nodesCreated ());
528+ Assert .assertEquals (1 , resultSet .getStatistics ().propertiesSet ());
529+
530+
531+ Assert .assertEquals (ResultSetImpl .class , results .get (2 ).getClass ());
532+ resultSet = (ResultSet ) results .get (2 );
533+ Assert .assertEquals (1 , resultSet .getStatistics ().nodesCreated ());
534+ Assert .assertEquals (1 , resultSet .getStatistics ().propertiesSet ());
535+
536+ // Redis incr command
537+ Assert .assertEquals (Long .class , results .get (3 ).getClass ());
538+ Assert .assertEquals ((long )2 , results .get (3 ));
539+
540+ // Redis get command
541+ Assert .assertEquals (String .class , results .get (4 ).getClass ());
542+ Assert .assertEquals ("2" , results .get (4 ));
543+
544+ // Graph query result
545+ Assert .assertEquals (ResultSetImpl .class , results .get (5 ).getClass ());
546+ resultSet = (ResultSet ) results .get (5 );
546547
547- Assert .assertNotNull (resultSet .getHeader ());
548- Header header = resultSet .getHeader ();
548+ Assert .assertNotNull (resultSet .getHeader ());
549+ Header header = resultSet .getHeader ();
549550
550551
551- List <String > schemaNames = header .getSchemaNames ();
552- List <Header .ResultSetColumnTypes > schemaTypes = header .getSchemaTypes ();
552+ List <String > schemaNames = header .getSchemaNames ();
553+ List <Header .ResultSetColumnTypes > schemaTypes = header .getSchemaTypes ();
553554
554- Assert .assertNotNull (schemaNames );
555- Assert .assertNotNull (schemaTypes );
555+ Assert .assertNotNull (schemaNames );
556+ Assert .assertNotNull (schemaTypes );
556557
557- Assert .assertEquals (1 , schemaNames .size ());
558- Assert .assertEquals (1 , schemaTypes .size ());
558+ Assert .assertEquals (1 , schemaNames .size ());
559+ Assert .assertEquals (1 , schemaTypes .size ());
559560
560- Assert .assertEquals ("n" , schemaNames .get (0 ));
561+ Assert .assertEquals ("n" , schemaNames .get (0 ));
561562
562- Assert .assertEquals (COLUMN_NODE , schemaTypes .get (0 ));
563+ Assert .assertEquals (COLUMN_NODE , schemaTypes .get (0 ));
563564
564- Property nameProperty = new Property ("name" , ResultSet .ResultSetScalarTypes .PROPERTY_STRING , "a" );
565+ Property nameProperty = new Property ("name" , ResultSet .ResultSetScalarTypes .PROPERTY_STRING , "a" );
565566
566- Node expectedNode = new Node ();
567- expectedNode .setId (0 );
568- expectedNode .addLabel ("Person" );
569- expectedNode .addProperty (nameProperty );
570- // see that the result were pulled from the right graph
571- Assert .assertEquals (1 , resultSet .size ());
572- Assert .assertTrue (resultSet .hasNext ());
573- Record record = resultSet .next ();
574- Assert .assertFalse (resultSet .hasNext ());
575- Assert .assertEquals (Arrays .asList ("n" ), record .keys ());
576- Assert .assertEquals (expectedNode , record .getValue ("n" ));
577-
578- // Graph delete
579- Assert .assertTrue (((String )results .get (6 )).startsWith ("Graph removed" ));
567+ Node expectedNode = new Node ();
568+ expectedNode .setId (0 );
569+ expectedNode .addLabel ("Person" );
570+ expectedNode .addProperty (nameProperty );
571+ // see that the result were pulled from the right graph
572+ Assert .assertEquals (1 , resultSet .size ());
573+ Assert .assertTrue (resultSet .hasNext ());
574+ Record record = resultSet .next ();
575+ Assert .assertFalse (resultSet .hasNext ());
576+ Assert .assertEquals (Arrays .asList ("n" ), record .keys ());
577+ Assert .assertEquals (expectedNode , record .getValue ("n" ));
580578
579+ // Graph delete
580+ Assert .assertTrue (((String )results .get (6 )).startsWith ("Graph removed" ));
581581
582- Assert .assertEquals (ResultSetImpl .class , results .get (7 ).getClass ());
583- resultSet = (ResultSet ) results .get (7 );
584582
585- Assert .assertNotNull ( resultSet . getHeader ());
586- header = resultSet . getHeader ( );
583+ Assert .assertEquals ( ResultSetImpl . class , results . get ( 7 ). getClass ());
584+ resultSet = ( ResultSet ) results . get ( 7 );
587585
586+ Assert .assertNotNull (resultSet .getHeader ());
587+ header = resultSet .getHeader ();
588588
589- schemaNames = header .getSchemaNames ();
590- schemaTypes = header .getSchemaTypes ();
591589
592- Assert . assertNotNull ( schemaNames );
593- Assert . assertNotNull ( schemaTypes );
590+ schemaNames = header . getSchemaNames ( );
591+ schemaTypes = header . getSchemaTypes ( );
594592
595- Assert .assertEquals ( 1 , schemaNames . size () );
596- Assert .assertEquals ( 1 , schemaTypes . size () );
593+ Assert .assertNotNull ( schemaNames );
594+ Assert .assertNotNull ( schemaTypes );
597595
598- Assert .assertEquals ("label" , schemaNames .get (0 ));
596+ Assert .assertEquals (1 , schemaNames .size ());
597+ Assert .assertEquals (1 , schemaTypes .size ());
599598
600- Assert .assertEquals (COLUMN_SCALAR , schemaTypes .get (0 ));
599+ Assert .assertEquals ("label" , schemaNames .get (0 ));
601600
602- Assert .assertEquals (1 , resultSet .size ());
603- Assert .assertTrue (resultSet .hasNext ());
604- record = resultSet .next ();
605- Assert .assertFalse (resultSet .hasNext ());
606- Assert .assertEquals (Arrays .asList ("label" ), record .keys ());
607- Assert .assertEquals ("Person" , record .getValue ("label" ));
601+ Assert .assertEquals (COLUMN_SCALAR , schemaTypes .get (0 ));
608602
603+ Assert .assertEquals (1 , resultSet .size ());
604+ Assert .assertTrue (resultSet .hasNext ());
605+ record = resultSet .next ();
606+ Assert .assertFalse (resultSet .hasNext ());
607+ Assert .assertEquals (Arrays .asList ("label" ), record .keys ());
608+ Assert .assertEquals ("Person" , record .getValue ("label" ));
609+ } catch (IOException e ) {
610+ e .printStackTrace ();
611+ }
609612 }
610613
611614 @ Test
@@ -651,69 +654,69 @@ public void testContextedAPI(){
651654 expectedEdge .addProperty (falseBooleanProperty );
652655 expectedEdge .addProperty (nullProperty );
653656
654- RedisGraphContext c = api .getContext ();
657+ try (RedisGraphContext c = api .getContext ()) {
658+ Assert .assertNotNull (c .query ("social" , "CREATE (:person{name:%s',age:%d, doubleValue:%f, boolValue:%b, nullValue:null})" , name , age , doubleValue , boolValue ));
659+ Assert .assertNotNull (c .query ("social" , "CREATE (:person{name:'amit',age:30})" ));
660+ Assert .assertNotNull (c .query ("social" , "MATCH (a:person), (b:person) WHERE (a.name = 'roi' AND b.name='amit') " +
661+ "CREATE (a)-[:knows{place:'TLV', since:2000,doubleValue:3.14, boolValue:false, nullValue:null}]->(b)" ));
655662
656- Assert . assertNotNull ( c .query ("social" , "CREATE ( :person{name:%s',age:%d, doubleValue:%f, boolValue:%b, nullValue:null})" , name , age , doubleValue , boolValue ));
657- Assert . assertNotNull ( c . query ( "social" , "CREATE (:person{name:'amit',age:30})" ));
658- Assert . assertNotNull ( c . query ( "social" , "MATCH (a:person), (b:person) WHERE (a.name = 'roi' AND b.name='amit') " +
659- "CREATE (a)-[:knows{place:'TLV', since:2000,doubleValue:3.14, boolValue:false, nullValue:null}]->(b)" ) );
663+ ResultSet resultSet = c .query ("social" , "MATCH (a :person)-[r:knows]->(b:person) RETURN a,r, " +
664+ "a.name, a.age, a.doubleValue, a.boolValue, a.nullValue, " +
665+ "r.place, r.since, r.doubleValue, r.boolValue, r.nullValue" );
666+ Assert . assertNotNull ( resultSet );
660667
661- ResultSet resultSet = c .query ("social" , "MATCH (a:person)-[r:knows]->(b:person) RETURN a,r, " +
662- "a.name, a.age, a.doubleValue, a.boolValue, a.nullValue, " +
663- "r.place, r.since, r.doubleValue, r.boolValue, r.nullValue" );
664- Assert .assertNotNull (resultSet );
665668
669+ Assert .assertEquals (0 , resultSet .getStatistics ().nodesCreated ());
670+ Assert .assertEquals (0 , resultSet .getStatistics ().nodesDeleted ());
671+ Assert .assertEquals (0 , resultSet .getStatistics ().labelsAdded ());
672+ Assert .assertEquals (0 , resultSet .getStatistics ().propertiesSet ());
673+ Assert .assertEquals (0 , resultSet .getStatistics ().relationshipsCreated ());
674+ Assert .assertEquals (0 , resultSet .getStatistics ().relationshipsDeleted ());
675+ Assert .assertNotNull (resultSet .getStatistics ().getStringValue (Label .QUERY_INTERNAL_EXECUTION_TIME ));
666676
667- Assert .assertEquals (0 , resultSet .getStatistics ().nodesCreated ());
668- Assert .assertEquals (0 , resultSet .getStatistics ().nodesDeleted ());
669- Assert .assertEquals (0 , resultSet .getStatistics ().labelsAdded ());
670- Assert .assertEquals (0 , resultSet .getStatistics ().propertiesSet ());
671- Assert .assertEquals (0 , resultSet .getStatistics ().relationshipsCreated ());
672- Assert .assertEquals (0 , resultSet .getStatistics ().relationshipsDeleted ());
673- Assert .assertNotNull (resultSet .getStatistics ().getStringValue (Label .QUERY_INTERNAL_EXECUTION_TIME ));
674677
678+ Assert .assertEquals (1 , resultSet .size ());
679+ Assert .assertTrue (resultSet .hasNext ());
680+ Record record = resultSet .next ();
681+ Assert .assertFalse (resultSet .hasNext ());
675682
676- Assert .assertEquals (1 , resultSet .size ());
677- Assert .assertTrue (resultSet .hasNext ());
678- Record record = resultSet .next ();
679- Assert .assertFalse (resultSet .hasNext ());
683+ Node node = record .getValue (0 );
684+ Assert .assertNotNull (node );
680685
681- Node node = record .getValue (0 );
682- Assert .assertNotNull (node );
686+ Assert .assertEquals (expectedNode , node );
683687
684- Assert .assertEquals (expectedNode , node );
688+ node = record .getValue ("a" );
689+ Assert .assertEquals (expectedNode , node );
685690
686- node = record .getValue ("a" );
687- Assert .assertEquals (expectedNode , node );
691+ Edge edge = record .getValue (1 );
692+ Assert .assertNotNull (edge );
693+ Assert .assertEquals (expectedEdge , edge );
688694
689- Edge edge = record .getValue (1 );
690- Assert .assertNotNull (edge );
691- Assert .assertEquals (expectedEdge , edge );
695+ edge = record .getValue ("r" );
696+ Assert .assertEquals (expectedEdge , edge );
692697
693- edge = record . getValue ( "r" );
694- Assert . assertEquals ( expectedEdge , edge );
698+ Assert . assertEquals ( Arrays . asList ( "a" , "r" , "a.name" , "a.age" , "a.doubleValue" , "a.boolValue" , "a.nullValue" ,
699+ "r.place" , "r.since" , "r.doubleValue" , "r.boolValue" , "r.nullValue" ), record . keys () );
695700
696- Assert .assertEquals (Arrays .asList ("a" , "r" , "a.name" , "a.age" , "a.doubleValue" , "a.boolValue" , "a.nullValue" ,
697- "r.place" , "r.since" , "r.doubleValue" , "r.boolValue" , "r.nullValue" ), record .keys ());
701+ Assert .assertEquals (Arrays .asList (expectedNode , expectedEdge ,
702+ name , age , doubleValue , true , null ,
703+ place , since , doubleValue , false , null ),
704+ record .values ());
698705
699- Assert . assertEquals ( Arrays . asList ( expectedNode , expectedEdge ,
700- name , age , doubleValue , true , null ,
701- place , since , doubleValue , false , null ),
702- record . values ());
706+ Node a = record . getValue ( "a" );
707+ for ( String propertyName : expectedNode . getEntityPropertyNames ()){
708+ Assert . assertEquals ( expectedNode . getProperty ( propertyName ) , a . getProperty ( propertyName ));
709+ }
703710
704- Node a = record .getValue ("a" );
705- for (String propertyName : expectedNode .getEntityPropertyNames ()){
706- Assert .assertEquals (expectedNode .getProperty (propertyName ) ,a .getProperty (propertyName ));
711+ Assert .assertEquals ( "roi" , record .getString (2 ));
712+ Assert .assertEquals ( "32" , record .getString (3 ));
713+ Assert .assertEquals ( 32L , ((Integer )(record .getValue (3 ))).longValue ());
714+ Assert .assertEquals ( 32L , ((Integer )record .getValue ("a.age" )).longValue ());
715+ Assert .assertEquals ( "roi" , record .getString ("a.name" ));
716+ Assert .assertEquals ( "32" , record .getString ("a.age" ));
717+ } catch (IOException e ) {
718+ e .printStackTrace ();
707719 }
708-
709- Assert .assertEquals ( "roi" , record .getString (2 ));
710- Assert .assertEquals ( "32" , record .getString (3 ));
711- Assert .assertEquals ( 32L , ((Integer )(record .getValue (3 ))).longValue ());
712- Assert .assertEquals ( 32L , ((Integer )record .getValue ("a.age" )).longValue ());
713- Assert .assertEquals ( "roi" , record .getString ("a.name" ));
714- Assert .assertEquals ( "32" , record .getString ("a.age" ));
715-
716-
717720 }
718721
719722 @ Test
0 commit comments