Is there really a need to rewrite Spock tests to another testing framework?

Remko.

(Shameless plug) Every java main() method deserves http://picocli.info

> On Mar 7, 2019, at 6:25, Gary Gregory <garydgreg...@gmail.com> wrote:
> 
> Robert,
> 
> This seems like a fine addition to DbUtils. I'd love to see a PR on GitHub.
> Adding more documentation would be nice. WRT bringing this into DbUtils,
> can we avoid adding a new interface by using Java 8 default methods
> on QueryRunner? If DbUtils is not on Java 8, we can bring it up to Java 8.
> 
> Gary
> 
> On Wed, Mar 6, 2019 at 1:05 PM Robert Huffman <robert.huff...@gmail.com>
> wrote:
> 
>> I like DbUtils QueryRunner, but the thing that has always bothered me is
>> that it forces me to read the entire ResultSet into memory rather than
>> allowing me to use cursors. So I developed a little library to do that,
>> which I called dbstream, which is on GitHub:
>> https://github.com/rhuffman/dbstream/
>> 
>> It provides an abstract StreamingResultSetHandler that will return a
>> Stream<T>, which each element is built from one row of the query. It
>> utilizes cursors by keeping the ResultSet (and underlying Connection) open
>> until the Stream is closed. There are three concrete subclasses of the
>> handler:
>> 
>>   - ArrayStreamingHandler: returns a Stream<Object[]>, where each Object[]
>>   is the values from a row of the result
>>   - ObjectStreamingHandler: returns a Stream<Object>, where each object is
>>   a bean built from a row of the result
>>   - MapStreamingHandler: returns a Stream<Map<String,Object>>, where each
>>   object is a map of column names and values built from a row of the
>> result
>> 
>> Of course, the QueryRunner.query methods close their database objects
>> before returning, so I needed different query methods to execute the query.
>> I extended QueryRunner to create StreamingQueryRunner with these two
>> methods:
>> 
>>   - public <T> Stream<T> queryAsStream(
>>       String sql,
>>       StreamingResultSetHandler<T> handler,
>>       Object... args)
>> 
>>   - public <T> Stream<T> queryAsStream(
>>       Connection connection,
>>       String sql,
>>       StreamingResultSetHandler<T> handler,
>>       Object... args)
>> 
>> 
>> I'm probably going to publish it to Maven Central. However, would the
>> DbUtils developers be amenable to doing something like this directly in
>> DbUtils? I could integrate the work into DbUtils and give you a pull
>> request. It might take me a bit because I would have to convert the tests
>> from Spock, but it wouldn't be too bad.
>> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org

Reply via email to