/** * @param sspHandler * @param el * @return */ private TestSolution testLink(SSPHandler sspHandler, Element el) { ElementHandler<Element> elHandler = new ElementHandlerImpl(el); TestSolutionHandler tsHandler = new TestSolutionHandlerImpl(); // reset the service for each tested element. We use the collection // handled by the service to feed the local collection of remarks prs.resetService(); // check the pertinence of the link getDecidableElementsChecker().check(sspHandler, elHandler, tsHandler); // get the processRemark for eventually override it with the result // returned by the title pertinence checker ProcessRemark remark = prs.getRemarkList().iterator().next(); // we check the pertinence of the title if and only if the result is // failed. This checker may eventually change the result from failed // to nmi but the inverse is impossible. if (tsHandler.getTestSolution().equals(TestSolution.FAILED)) { // check the pertinence of the title of the link String linkText = getDecidableElementsChecker().getTextElementBuilder().buildTextFromElement(el); if (testTitleAttributeLink(sspHandler, el, linkText).equals(TestSolution.NEED_MORE_INFO)) { // override result (evidence element have already been collected remark.setIssue(TestSolution.NEED_MORE_INFO); remark.setMessageCode(CHECK_LINK_PERTINENCE_MSG); remarks.add(remark); return TestSolution.NEED_MORE_INFO; } } remarks.add(remark); return tsHandler.getTestSolution(); }