BoltNeo4jResultSet extends Neo4jResultSet { public static ResultSet newInstance(boolean debug, Statement statement, StatementResult iterator, int... params) { ResultSet rs = new BoltNeo4jResultSet(statement, iterator, params); return (ResultSet) Proxy .newProxyInstance(BoltNeo4jResultSet.class.getClassLoader(), new Class[] { ResultSet.class }, new Neo4jInvocationHandler(rs, debug)); } private  BoltNeo4jResultSet(Statement statement, StatementResult iterator, int... params); static ResultSet newInstance(boolean debug, Statement statement, StatementResult iterator, int... params); @Override void close(); @Override boolean wasNull(); @Override String getString(int columnIndex); @Override String getString(String columnLabel); @Override boolean getBoolean(String columnLabel); @Override int getInt(String columnLabel); @Override long getLong(String columnLabel); @Override int findColumn(String columnLabel); @Override int getType(); @Override int getConcurrency(); @Override int getHoldability(); @Override boolean getBoolean(int columnIndex); @Override int getInt(int columnIndex); @Override long getLong(int columnIndex); @Override float getFloat(String columnLabel); @Override float getFloat(int columnIndex); @Override short getShort(String columnLabel); @Override short getShort(int columnIndex); @Override double getDouble(int columnIndex); @Override Neo4jArray getArray(int columnIndex); @SuppressWarnings("rawtypes") @Override Neo4jArray getArray(String columnLabel); @Override double getDouble(String columnLabel); @Override ResultSetMetaData getMetaData(); @Override Object getObject(int columnIndex); @Override Object getObject(String columnLabel); @Override Statement getStatement();  }
@Test public void isClosedReturnFalseWhenConnectionOpen() throws SQLException { StatementResult StatementResult = ResultSetData .buildResultCursor(ResultSetData.KEYS_RECORD_LIST_MORE_ELEMENTS, ResultSetData.RECORD_LIST_MORE_ELEMENTS); ResultSet resultSet = BoltNeo4jResultSet.newInstance(false, null, StatementResult); assertFalse(resultSet.isClosed()); }