in src/main/java/org/apache/sling/junit/impl/servlet/ServletProcessor.java [79:123]
public void doGet(final HttpServletRequest request, final HttpServletResponse response, final String servletPath)
throws ServletException, IOException {
logForceReloadOptionDeprecation(request);
// Redirect to / if called without it, and serve CSS if requested
{
final String pi = request.getPathInfo();
if(pi == null) {
response.sendRedirect(request.getContextPath() + servletPath + "/");
} else if(pi.endsWith(CSS)) {
sendCss(response);
return;
}
}
final TestSelector selector = getTestSelector(request);
final Collection<String> testNames = testsManager.getTestNames(selector);
// 404 if no tests found
if(testNames.isEmpty()) {
final String msg =
"WARNING: no test classes found for selector " + selector
+ ", check the requirements of the active " +
"TestsProvider services for how to supply tests.";
response.sendError(HttpServletResponse.SC_NOT_FOUND, msg);
return;
}
final Renderer renderer = rendererSelector.getRenderer(selector);
if(renderer == null) {
throw new ServletException("No Renderer found for " + selector);
}
log.debug("GET request: {}", selector);
renderer.setup(response, getClass().getSimpleName());
renderer.info("info", "Test selector: " + selector);
try {
testsManager.listTests(testNames, renderer);
final String postPath = getTestExecutionPath(request, selector, renderer.getExtension());
renderer.link("Execute these tests", postPath, "POST");
} catch(Exception e) {
throw new ServletException(e);
}
renderer.cleanup();
}