[
https://issues.apache.org/jira/browse/ARTEMIS-3874?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Clebert Suconic closed ARTEMIS-3874.
------------------------------------
> reduce use of test-jar and related module/test interdependencies
> ----------------------------------------------------------------
>
> Key: ARTEMIS-3874
> URL: https://issues.apache.org/jira/browse/ARTEMIS-3874
> Project: ActiveMQ Artemis
> Issue Type: Test
> Components: Tests
> Reporter: Robbie Gemmell
> Assignee: Robbie Gemmell
> Priority: Major
> Fix For: 2.24.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> The build currently makes a lot of use of 'test-jar' dependencies between
> various modules, which can complicate the build and can lead to unexpected
> behaviours at times. It makes lots of the modules inter-dependent on each
> other (particularly their tests) when they really otherwise arent. It means
> that unexpected test resources/classes (from other modules) you wouldnt
> normally expect to be on a modules test claspath can be, and can mean the
> same for some of their dependencies (scope dependent), sometimes making the
> test env quite different than would be expected. It requires creating all
> these test-jars that normally dont even exist, and publishing many, and also
> requires doing so during the 'test' phase which normally shouldnt need to
> package anything to ensure they exist before other modules run that might
> require them (otherwise the build will fail).
> I had hoped to eradicate their use towards leveraging the update in the
> logging changes (and related config..) being worked on, but their use and the
> related build intertwining was far more extensive than I had appreciated, so
> this is a partial step toward a larger change that would need to happen later
> perhaps over time. From the 'main' (non-test) modules it leaves only
> artemis-server producing a test-jar and confines all use of them to the
> non-deployed 'tests' subtree, where there is still a notable reduction in
> use. It introduces a new module to share some rules and utilities amongst all
> the modules tests, and leverages the existing artemis-test-support module as
> a place to host utilities etc that depend on the clients/broker (which thus
> cant live in a module those modules require, due to creating a cycle) and
> supply other items to tests that use them.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)