1

I created a csv file in one view (its not saved in a model) and now I need to open and and send this file to an api via another view. I'm having a hard time finding the proper way to achieve this. Any suggestions? I found where you could send the filename via messages but that turns it into a message object and becomes worthless to me. I need to be able to access the file and send it in my run_all_modal view. I'm sending the data to HATScript() to process and send off.

These are my views if you need to see them:

def run_test_suite_in_hatit(request):
    testrail_suite_id = int(request.GET['suite'])
    print(testrail_suite_id)
    testrail_instance = TestRailInstance.objects.first()
    project = request.user.humanresource.project
    testrail_project_id = project.testrail.project_id
    testrail_project = get_testrail_project(testrail_instance, testrail_project_id)
    testrail_suites = testrail_project.get_suites()
    testrail_suite = [s for s in testrail_suites if s.id == testrail_suite_id][0]
    testrail_cases = testrail_suite.get_cases()
    hatit_csv_filename = bulk_hatit_file_generator(testrail_cases)
    messages.add_message(request, messages.INFO, hatit_csv_filename)
    return HttpResponseRedirect('/run_all_modal/')


def run_all_modal(request):
    if request.method == 'POST':
        form = TestRunnerForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            scripts = get_messages(request)
            csvfile = ""
            for script in scripts:
                csvfile = script
            hs = HATScript()
            hs.apn = data.get('apn')
            hs.holly_server = data.get('browser')
            hs.basic_connection_test()
            response = hs.hatit_execute()
        else:
            print(form.errors)

        return JsonResponse({'success': True}) 

I solved this. See explanation here.

Cœur
  • 37,241
  • 25
  • 195
  • 267
Naomi See
  • 101
  • 12

0 Answers0