db-ddlutils-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin van den Bemt <mll...@mvdb.net>
Subject Re: Failing tests testColumnConstraints + location integration / roundtrip tests
Date Thu, 22 Dec 2005 23:16:23 GMT

Thomas Dudziak wrote:
> On 12/22/05, Martin van den Bemt <mllist@mvdb.net> wrote:
>>Ah ok.. You are in Germany right ?
> Yes, in Berlin.
I am in Breda, in the south of The Netherlands. In short : not a driving distance :)

>>I think the io test package will actually mix too many concerns if we do that, since
most classes in io can be unit tested (integration tests have nothing to do with io unit tests).
So at least we should consider a new package name, with probably subpackages like derby, axion,
hsqldb, oracle, since I don't think we'll going to end up with 1 testcase per database and
things (in my opinion) will get quite messy otherwise.
> Why do you think that is necessary? If you look into class
> RoundtripTestBase, you'll see what I intend to test. Most if not all
> of these will look like the tests already in TestRoundtripDerby,
> though I expect I can refactor the tests later on to make them even
> shorter.

When I look at the TestRoundTripDerby and the RoundTripTestBase, I cannot see anything specific
that you are just targetting the io package, unless you mean the part where you use the DataReader.
That testcoverage that is achieved in the io package is merely a side effect of these integration
tests. Probably unit testing DataReader needs some mocks to keep it a unit test (same as eg
platform.* should have some mocks, where eg a connection is needed (like in fetch).

In my opinion we should treat any class that we feed a realtime database connection as an
integration test and move them to a different package and in my preference source tree.

Just to be clear TestDatabaseIO and TestDataReader are of course in the right place.

> Do you plan to add other tests (right now, the roundtrip test do:
> create, insert data, fetch data, read model from db and check it) ?

Not specifically, but to maintain readability of classes (esp when testcases get big), I tend
to create separate testcases. Subpackaging is not needed right away, we can do that when there
is a need to.

> One thing that has to be added yet is testing without delimiters.

Axion doesn't like delimiters :)

>>About Axion : roundtripping will not work that well (working on axion currently),
since I get some not supported exceptions when importing the model from the database itself.
> Mhmm, not good, but not DdlUtils fault either. When we document that
> properly, this should be no problem ?

Indeed and just noticed (to my surprise) there is actually some development going on axion,
so who knows some things get fixed..  (i'll see if I can file an issue for the lack of support
on getImportKeys)


View raw message