We got this problem that freemarker-core/test defines some useful
utilities, and when we do stuff like freemarker-servlet or later
freemarker-dom, we want to use some of them. But normally you can't
declare dependency on the test classes of a project. So we have a
freemarker-test-utils project to address this. Both
freemarker-core/test and freemarker-servlet/test depend on that.
Problem is, it can't depend on freemarker-core (because then you have
a circular dependency), but we need stuff like Template and
Configuration as we have some FreeMarker-specific testing utilities
(run templates and assert its output), also ideally we would use some
utilities from freemarker-core (instead of duplicating them in
freemarker-test-utils).
So I think we will have to remove the tests from freemarker-core, and
reorganize stuff like this:
freemarker-core-test
depends on freemaker-test-utils
depends on freemarker-core
And then freemarker-servlet/test and freemarker-dom/test can just
depends on freemaker-test-utils, so no need for
freemarker-servlet-test and freemarker-dom-test. Only freemarker-core
suffers this thing, where you have to move the tests of the project to
a separate project (though partially we already has that with
freemarker-core-java8-test). (And I hope coveralls.io and such can
handle this.)
--
Thanks,
Daniel Dekany