	/**
	 * Executes an HTTP request and analyses its result.  The analysis
	 * can be customized in order to reflect the test's requirements.
	 * @param request
	 * @throws <%=exceptionClassName%>
	 */
	protected void executeRequest(<%=helper.getImportedName("org.eclipse.hyades.test.http.runner.HttpRequest")%> request)
	throws <%=exceptionClassName%>
	{
		<%=helper.getImportedName("org.eclipse.hyades.test.http.runner.HttpResponse")%> response = new <%=helper.getImportedName("org.eclipse.hyades.test.http.runner.HttpExecutor")%>().execute(request);
		
		String text = Integer.toString(response.getCode());
		if(response.getDetail() != null)
			text = "\n\n" + response.getDetail();

		//If (response.getCode() < 0) then there was an error when executing the request
		if(response.getCode() < 0)
			throw new <%=exceptionClassName%>(text);

		//If (response.getCode() != 200) then the request has failed.
		assertEquals(text, 200, response.getCode());
	}