Ejemplo n.º 1
0
def download_output_file_view(request, submission_id,
        testrun_report_id=None):
    submission = get_submission_or_error(request, submission_id,
            ZeusTestRunProgramSubmission)
    result = get_testrun_report_or_404(request, submission, testrun_report_id,
            ZeusTestRunReport)

    if result.output_file.size != result.full_out_size:
        zeus_server = get_zeus_server(
                submission.problem_instance.problem.zeusproblemdata.zeus_id)
        file = zeus_server.download_output(int(result.full_out_handle))
        result.output_file.save('full_out', ContentFile(file))

    return stream_file(result.output_file, name='output.out')
Ejemplo n.º 2
0
def download_output_file_view(request,
                              contest_id,
                              submission_id,
                              testrun_report_id=None):
    submission = get_submission_or_error(request, contest_id, submission_id,
                                         ZeusTestRunProgramSubmission)
    result = get_testrun_report_or_404(request, submission, testrun_report_id,
                                       ZeusTestRunReport)

    if result.output_file.size != result.full_out_size:
        zeus_server = get_zeus_server(
            submission.problem_instance.problem.zeusproblemdata.zeus_id)
        file = zeus_server.download_output(int(result.full_out_handle))
        result.output_file.save('full_out', ContentFile(file))

    return stream_file(result.output_file, name='output.out')
Ejemplo n.º 3
0
def show_output_file_view(request, submission_id,
        testrun_report_id=None):
    submission = get_submission_or_error(request, submission_id,
            ZeusTestRunProgramSubmission)
    result = get_testrun_report_or_404(request, submission, testrun_report_id,
            ZeusTestRunReport)
    data = result.output_file.read(get_preview_size_limit())
    data, decode_error = decode_str(data)
    size = result.full_out_size
    download_url = reverse('zeus_download_testrun_output',
        kwargs={'contest_id': request.contest.id,
                'submission_id': submission_id})
    return TemplateResponse(request, 'testrun/data.html', {
        'header': _("Output"),
        'data': data,
        'left': size - len(data),
        'decode_error': decode_error,
        'download_url': download_url
    })
Ejemplo n.º 4
0
def show_output_file_view(request,
                          contest_id,
                          submission_id,
                          testrun_report_id=None):
    submission = get_submission_or_error(request, contest_id, submission_id,
                                         ZeusTestRunProgramSubmission)
    result = get_testrun_report_or_404(request, submission, testrun_report_id,
                                       ZeusTestRunReport)
    data = result.output_file.read(get_preview_size_limit())
    data, decode_error = decode_str(data)
    size = result.full_out_size
    download_url = reverse('zeus_download_testrun_output',
                           kwargs={
                               'contest_id': request.contest.id,
                               'submission_id': submission_id
                           })
    return TemplateResponse(
        request, 'testrun/data.html', {
            'header': _("Output"),
            'data': data,
            'left': size - len(data),
            'decode_error': decode_error,
            'download_url': download_url
        })