[ https://issues.apache.org/jira/browse/AXIOM-311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13118722#comment-13118722 ]
Hudson commented on AXIOM-311: ------------------------------ Integrated in ws-axiom-trunk #575 (See [https://builds.apache.org/job/ws-axiom-trunk/575/]) AXIOM-311: Refactored the DOM tests so that they use the same pattern as the other reusable test suites. veithen : Files : * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/pom.xml * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/DOMTestCase.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/DOMTestSuiteBuilder.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/builder * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/builder/TestWhitespaceAroundDocumentElement.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document/TestAllowedChildren.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document/TestCreateAttribute.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document/TestCreateElement.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document/TestCreateText.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/document/TestDocumentSiblings.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestAppendChild.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestAttributes.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestAttributes2.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestAttributes3.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestAttributes4.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetElementsByTagName.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetElementsByTagNameNS.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetElementsByTagNameRecursive.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetElementsByTagNameWithNamespaces.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetElementsByTagNameWithWildcard.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetNamespaceURIWithNoNamespace.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestGetTextContent.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestRemoveFirstChild.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestRemoveLastChild.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestRemoveSingleChild.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestReplaceChild.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/element/TestSetTextContent.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/text * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/java/org/apache/axiom/ts/dom/text/TestSplitText.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/main/resources * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org/apache * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org/apache/axiom * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org/apache/axiom/ts * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org/apache/axiom/ts/dom * /webservices/commons/trunk/modules/axiom/modules/axiom-dom-testsuite/src/test/java/org/apache/axiom/ts/dom/XercesTest.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/pom.xml * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/DOMImplementationTest.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/DOMTestUtil.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/DocumentImplTest.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/ElementImplTest.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/TextImplTest.java * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/dom/jaxp * /webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/test/resources * /webservices/commons/trunk/modules/axiom/pom.xml > Improve the Axiom test suite > ---------------------------- > > Key: AXIOM-311 > URL: https://issues.apache.org/jira/browse/AXIOM-311 > Project: Axiom > Issue Type: Improvement > Reporter: Andreas Veithen > Fix For: 1.2.13 > > > axiom-tests contains a rich set of unit tests, but things could still be > improved by applying a common set of tests to both LLOM and DOOM. Indeed the > test coverage of DOOM is much lower than that of LLOM. I already refactored > some of the tests so that they are applied to both OM implementations, but we > should push things further. > One specific problem is that since all tests are in a common Maven module > which depends on both axiom-impl and axiom-dom, it happens that some DOOM > tests accidentally use the LLOM implementation (which is the default). This > could be avoided by moving the tests out of axiom-tests into the axiom-api, > axiom-impl and axiom-dom. Looking at the description in axiom-tests/pom.xml, > It seems that this was actually the original intention: > [quote] The Axiom test suite. This ought to be split into several parts and > be made a part of axiom-api, axiom-impl and axiom-dom. However, that's not as > easy as it seems. The intention is to start with axiom-test and continuosly > move parts to the actual projects. [/quote] > It is indeed true that this is not as easy as it seems. I can see the > following difficulties: > 1) In Maven, the fact that module B depends on module A doesn't imply that > the unit tests of module B can refer to code in the unit tests of module A. > If we want to avoid creating new modules for the test code shared among > several other modules, we need to get around this problem. We had the same > issue in Synapse and it can be solved by using the test-jar goal in > maven-jar-plugin which attaches a JAR with the unit test code. It is then > sufficient to add this as a dependency (in scope test) to the other modules. > 2) We not only need to split the code, but also the test messages and > documents in axiom-tests/test-resources. As with the code, some of these > documents would be used by several modules. The problem here is that the > tests don't access them as classpath resources but as files (see > AbstractTestCase). If we change that, i.e. if we load them using > Class#getResourceAsStream, then the solution for item 1 will also solves this > problem. But maybe there is a particular reason why AbstractTestCase uses > file access? > 3) Currently axiom-tests overrides the JavaMail dependency of axiom-api (see > WSCOMMONS-417). If we move the tests to the module to which they apply, we > can no longer do this, but I think it is a bad practice anyway. > Does anyone see other difficulties that block us from splitting axiom-tests? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@ws.apache.org For additional commands, e-mail: dev-h...@ws.apache.org