@Test
    public void shouldQueryRecords(TestContext context) {
        Async async = context.async();
        IJdbcComponent component = new JdbcClientComponentImpl(rule.vertx(), null, null); // Other two params aren't used.
        IJdbcClient client = component.createStandalone(options);
        client.connect(explodeOnFailure(context, async, connectionResult -> {
                System.out.println("Successfully connected!");
                IJdbcConnection connection = connectionResult;
                String selectSql = "SELECT * FROM APIMAN;";
                connection.query(
                        explodeOnFailure(context, async, queryResult -> {
                                context.assertEquals(9, queryResult.getNumColumns());

                                queryResult.next();
                                // Assert results
                                context.assertEquals(1, queryResult.getInteger(0));
                                context.assertEquals("Voltigeur", queryResult.getString(1));
                                context.assertEquals((short) 11, queryResult.getShort(2));
                                context.assertEquals(9001009, queryResult.getInteger(3));
                                context.assertEquals((long) 101010101, queryResult.getLong(4));
                                context.assertEquals(3.14159, queryResult.getDouble(5));
                                context.assertEquals(true, queryResult.getBoolean(6));
                                context.assertEquals(new DateTime("1976-06-29T00:00:00.000"), queryResult.getDateTime(7));
                                context.assertEquals((byte) 31, queryResult.getBytes(8)[3]);

                                async.complete();
                            }),
                        selectSql);
        }));
    }
@author Marc Savy {@literal <msavy@redhat.com>}
gateway/platforms/vertx3/vertx3/src/test/java/io/apiman/gateway/platforms/vertx3/components/jdbc/suitetests/QueryTest.java