def json_html_report(request): session_token = request.POST["session_token"] report_name = request.POST["report_name"] try: report = Report.objects.get(session__token=session_token,name=report_name) except: server_logger.error("Report not found : session %s report %s" % (session_token, report_name)) return HttpResponseNotFound("Report not found") # TODO Pluggable if report.type.name == "raw": return report.text elif report.type.name == "json_unit": h = JSONUnitReportHandler() return h.renderToText(report)
def json_html_compare_reports(request): session1_token = request.GET["session1_token"] session2_token = request.GET["session2_token"] report1_name = request.GET["report1_name"] report2_name = request.GET["report2_name"] try: report1 = Report.objects.get(session__token=session1_token,name=report1_name) report2 = Report.objects.get(session__token=session2_token,name=report2_name) except: return HttpResponseNotFound("Report not found") out ="" if report1.type.name == "raw": return HttpResponseBadRequest("Cannot compare raw reports") out = report.text elif report1.type.name == "json_unit": h = JSONUnitReportHandler() out = h.renderTextComparison(report1, report2) return HttpResponse(out, mimetype="text/plain")