On 6/4/10 1:03 AM, Stefan Seelmann wrote:
Emmanuel Lecharny wrote:
On 6/3/10 11:04 PM, Stefan Seelmann wrote:
Hi dev,
the core-mock module includes some mock implementations of ApacheDS
core-api classes (CoreSession, DirectoryService, etc.). It is only used
as test dependency in ldif-partition.
To get rid of the core-mock module I'd like to suggest to move those
classes to src/test/java in core-api. To be able to use the test classes
outside of the core-api module we just need to deploy the test jar of
core-api. The using module then needs to specify a dependency with
classifier "tests", see [1] for details.
We also had a discussion with Pierre-Arnaud about those unit tests. Once
upon a time, we have had some core-unti and server-unit modules. They
have been renamed core-intger and server-integ. So far, so good, but we
still have another module called apacheds-test-framework.
We do think that the classes we have in core/server-integ - I mean, the
classes in java/main, not the tests - should be moved to
apacheds-test-framework.
That being said, we could also move the core-mock into this
apacheds-test-framework module.
Does it make sense ?
I'm afraid that won't be possible because this would cause cyclic
dependencies.
The integ tests and the test framework start up a real directory service
with real partitions, including an LDIF based config and schema
partition, so they depend on the ldif-partition.
The mocks are used because we can't start a real directory service in
ldif-partion module for unit tests.
But we can run the integration tests against the LDIF partition.
Ok, so we have the exact same problem than with the LDAP API : we had to
extract the api tests and put them in ApacheDS just to be able to launch
a real server.
What about doing the same thing and move all the Ldif-Partition tests
out of the ldif-partition module and put them where they can use the
real DS ?
I mean, tests are not to be close to the part they are testing?
thoughts ?
--
Regards,
Cordialement,
Emmanuel Lécharny
www.nextury.com