3232import java .util .Random ;
3333
3434import org .neo4j .driver .v1 .Record ;
35+ import org .neo4j .driver .v1 .Session ;
3536import org .neo4j .driver .v1 .Statement ;
3637import org .neo4j .driver .v1 .Value ;
3738import org .neo4j .driver .v1 .Values ;
38- import org .neo4j .driver .v1 .tck .tck .util .Types ;
3939import org .neo4j .driver .v1 .tck .tck .util .runners .CypherStatementRunner ;
40- import org .neo4j .driver .v1 .tck .tck .util .runners .MappedParametersRunner ;
4140import org .neo4j .driver .v1 .tck .tck .util .runners .StatementRunner ;
4241import org .neo4j .driver .v1 .tck .tck .util .runners .StringRunner ;
4342
4443import static org .hamcrest .core .IsEqual .equalTo ;
4544import static org .junit .Assert .assertThat ;
45+ import static org .neo4j .driver .v1 .tck .Environment .driver ;
4646import static org .neo4j .driver .v1 .Values .parameters ;
47- import static org .neo4j .driver .v1 .tck .DriverComplianceIT .session ;
4847import static org .neo4j .driver .v1 .tck .Environment .expectedBoltValue ;
4948import static org .neo4j .driver .v1 .tck .Environment .expectedJavaValue ;
5049import static org .neo4j .driver .v1 .tck .Environment .listOfObjects ;
5352import static org .neo4j .driver .v1 .tck .Environment .runners ;
5453import static org .neo4j .driver .v1 .tck .Environment .statementRunner ;
5554import static org .neo4j .driver .v1 .tck .Environment .stringRunner ;
56- import static org .neo4j .driver .v1 .tck .tck .util .ResultParser .getList ;
57- import static org .neo4j .driver .v1 .tck .tck .util .ResultParser .getMapOfObjects ;
58- import static org .neo4j .driver .v1 .tck .tck .util .ResultParser .isList ;
59- import static org .neo4j .driver .v1 .tck .tck .util .ResultParser .isMap ;
55+ import static org .neo4j .driver .v1 .tck .tck .util .ResultParser .getJavaValueIntAsLong ;
6056import static org .neo4j .driver .v1 .tck .tck .util .Types .Type ;
6157import static org .neo4j .driver .v1 .tck .tck .util .Types .getType ;
58+ import static org .neo4j .driver .v1 .tck .tck .util .runners .MappedParametersRunner .createParameterRunner ;
6259
6360
6461public class DriverComplianceSteps
@@ -73,10 +70,9 @@ public void A_running_database() throws Throwable
7370 }
7471
7572 @ Given ( "^a value (.*)$" )
76- public void a_value ( String value )
77- throws Throwable
73+ public void a_value ( String value ) throws Throwable
7874 {
79- expectedJavaValue = getJavaValue ( value );
75+ expectedJavaValue = getJavaValueIntAsLong ( value );
8076 expectedBoltValue = Values .value ( expectedJavaValue );
8177 }
8278
@@ -112,7 +108,7 @@ public void the_expected_result_is_a_of( String type, String value ) throws Thro
112108 public void the_driver_asks_the_server_to_echo_this_value_back () throws Throwable
113109 {
114110 stringRunner = new StringRunner ( "RETURN " + expectedBoltValue .toString () );
115- mappedParametersRunner = new MappedParametersRunner ( "RETURN {input}" , "input" , expectedBoltValue );
111+ mappedParametersRunner = createParameterRunner ( "RETURN {input}" , "input" , expectedBoltValue );
116112 statementRunner = new StatementRunner (
117113 new Statement ( "RETURN {input}" , parameters ( "input" , expectedBoltValue ) ) );
118114
@@ -143,12 +139,12 @@ public void the_driver_asks_the_server_to_echo_this_map_back() throws Throwable
143139 }
144140
145141 @ Given ( "^a list containing$" )
146- public void a_list_containing ( List <String > table ) throws Throwable
142+ public static void a_list_containing ( List <String > table ) throws Throwable
147143 {
148144 List <String > content = table .subList ( 1 , table .size () - 1 );
149145 for ( String value : content )
150146 {
151- listOfObjects .add ( getJavaValue ( value ) );
147+ listOfObjects .add ( getJavaValueIntAsLong ( value ) );
152148 }
153149 }
154150
@@ -159,14 +155,14 @@ public void adding_this_list_to_itself() throws Throwable
159155 }
160156
161157 @ Given ( "^a map containing$" )
162- public void a_map_containing ( DataTable table ) throws Throwable
158+ public static void a_map_containing ( DataTable table ) throws Throwable
163159 {
164160 Map <String ,String > map = table .asMap ( String .class , String .class );
165161 for ( String key : map .keySet () )
166162 {
167163 if ( !key .equals ( "key" ) )
168164 {
169- mapOfObjects .put ( (String ) Type .String .getJavaValue ( key ), getJavaValue ( map .get ( key ) ) );
165+ mapOfObjects .put ( (String ) Type .String .getJavaValue ( key ), getJavaValueIntAsLong ( map .get ( key ) ) );
170166 }
171167 }
172168 }
@@ -193,27 +189,6 @@ public void result_should_be_equal_to_a_single_Type_of_Input() throws Throwable
193189 }
194190 }
195191
196- public Object getJavaValue ( String value )
197- {
198- if ( isList ( value ) )
199- {
200- ArrayList <Object > values = new ArrayList <>();
201- for ( String val : getList ( value ) )
202- {
203- values .add ( Types .asObject ( val ) );
204- }
205- return values ;
206- }
207- else if ( isMap ( value ) )
208- {
209- return getMapOfObjects ( value );
210- }
211- else
212- {
213- return Types .asObject ( value );
214- }
215- }
216-
217192 public String getRandomString ( long size )
218193 {
219194 StringBuilder stringBuilder = new StringBuilder ();
@@ -249,7 +224,10 @@ public Map<String,Object> getMapOfRandomsOfTypes( Type type, long size )
249224
250225 public boolean databaseRunning ()
251226 {
252- return session () != null ;
253- }
254227
228+ try ( Session session = driver .session ())
229+ {
230+ return session .run ( "RETURN 1" ).single ().get ( 0 ).asInt () == 1 ;
231+ }
232+ }
255233}
0 commit comments