| | 43 | info_regexp = re.compile('^([IEWSVT]): (.*)') |
| | 44 | |
| | 45 | def add_info_line(type, text, log): |
| | 46 | i = InfoLine(type=type, text=text, log=log) |
| | 47 | i.save() |
| | 48 | return i |
| | 49 | |
| | 50 | def process_file(log): |
| | 51 | info = 0 |
| | 52 | error = 0 |
| | 53 | warning = 0 |
| | 54 | for line in open(get_filename(log.id)).readlines(): |
| | 55 | res = info_regexp.search(line) |
| | 56 | if res: |
| | 57 | if res.group(1) == 'I': |
| | 58 | info = info + 1 |
| | 59 | add_info_line(res.group(1), res.group(2), log) |
| | 60 | elif res.group(1) == 'E': |
| | 61 | error = error + 1 |
| | 62 | add_info_line(res.group(1), res.group(2), log) |
| | 63 | elif res.group(1) == 'W': |
| | 64 | warning = warning + 1 |
| | 65 | add_info_line(res.group(1), res.group(2), log) |
| | 66 | elif res.group(1) == 'V': |
| | 67 | version = res.group(2) |
| | 68 | try: |
| | 69 | v = SystemVersion.objects.get(name=version) |
| | 70 | except SystemVersion.DoesNotExist: |
| | 71 | v = SystemVersion(name=version) |
| | 72 | v.save() |
| | 73 | log.version = v |
| | 74 | log.warnings = warning |
| | 75 | log.infos = info |
| | 76 | log.errors = error |
| | 77 | log.save() |
| | 78 | |
| 51 | | return render_to_response(name + settings.TEST_SUFFIX, {'testname', name}) |
| | 93 | print "%s (%s) -> %s" % (s.name, mac, name) |
| | 94 | return render_to_response(name + settings.TEST_SUFFIX, {'testname': name, 'system': s.name}) |
| | 95 | |
| | 96 | def logs(request, verid): |
| | 97 | version = get_object_or_404(SystemVersion, id=verid) |
| | 98 | logs = TestLog.objects.filter(version=version).order_by('-date') |
| | 99 | return render_to_response('logs.html', {'logs': logs, 'version': version}) |
| | 100 | |
| | 101 | def log(request, logid): |
| | 102 | log = get_object_or_404(TestLog, id=logid) |
| | 103 | infos = InfoLine.objects.filter(log=log).order_by('id') |
| | 104 | return render_to_response('log.html', {'log': log, 'infos': infos}) |
| | 105 | |
| | 106 | def content(request, logid): |
| | 107 | log = get_object_or_404(TestLog, id=logid) |
| | 108 | filename = get_filename(log.id) |
| | 109 | wrapper = FileWrapper(file(filename)) |
| | 110 | response = HttpResponse(wrapper, content_type='text/plain') |
| | 111 | response['Content-Length'] = os.path.getsize(filename) |
| | 112 | return response |
| | 113 | |
| | 114 | def index(request): |
| | 115 | versions = SystemVersion.objects.all().order_by('-id') |
| | 116 | return render_to_response('index.html', {'versions': versions}) |