[ http://jira.codehaus.org/browse/MASSEMBLY-128?page=all ]
John Casey closed MASSEMBLY-128. -------------------------------- Assignee: John Casey Resolution: Fixed refactor complete, and unit tests have 50% coverage, including the generated classes. Items left to test: - the mojos themselves (these are simple facades for the rest of the plugin) - default repository assembler - DigestUtils (not sure I have the expertise to test this one) - the remainder of the generated classes (esp the reader and writer classes) I believe we have a workable set of unit tests here, and I'd like to start investigating how to reinstate the functional tests as actual Maven builds that get run in the integration-test phase... > Refactor and improve unit testing > --------------------------------- > > Key: MASSEMBLY-128 > URL: http://jira.codehaus.org/browse/MASSEMBLY-128 > Project: Maven 2.x Assembly Plugin > Issue Type: Improvement > Affects Versions: 2.1 > Reporter: John Casey > Assigned To: John Casey > Priority: Blocker > Fix For: 2.2 > > > The current implementation of the assembly plugin is that of a few really > hard to manage monoliths, from which all the mojos extend. Also, the tests > included in this plugin are not true unit tests, but more functional tests, > in that they test the entirety of a mojo under a particular use case, as if > it were a black box. > If we break the assembly plugin's abstract classes up into a reasonable set > of helper/utility classes, we should be able to unit test individual pieces > of the system without resorting to black-box testing of an entire mojo. This > should improve the resilience of these tests when a new feature is added. > Currently, it's nearly impossible to add a feature without spending a day > trying to figure out why the tests are failing (a day is not an exaggeration, > BTW). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira