Ejemplo n.º 1
0
 def get_results(self, request, string, mol_form):
     job_settings = dict(self.cleaned_data)
     mol_settings = dict(mol_form.cleaned_data)
     if request.method == "GET":
         if request.REQUEST.get('molname'):
             job_settings['name'] = request.REQUEST.get('molname')
         job_string = JobTemplate.render(**job_settings)
         response = HttpResponse(job_string, content_type="text/plain")
         filename = '%s.job' % job_settings['name']
         add = "" if request.REQUEST.get("view") else "attachment; "
         response['Content-Disposition'] = add + 'filename=' + filename
         return response
     elif request.method == "POST":
         cred = job_settings.pop("credential")
         do_html = request.REQUEST.get("html", False)
         results = run_standard_jobs(
             cred, string, mol_settings, job_settings)
         if results["failed"]:
             failed_names = zip(*results['failed'])[0]
             results["failed_mols"] = ','.join(failed_names)
         if do_html:
             html = render_to_string("chem/multi_submit.html", results)
             temp = {"success": True, "html": html}
             return HttpResponse(json.dumps(temp),
                                 content_type="application/json")
         else:
             return HttpResponse(json.dumps(results),
                                 content_type="application/json")
Ejemplo n.º 2
0
 def test_run_standard_jobs_name_error(self):
     job = 'sleep 10'
     names = "E-N,C-N"
     results = utils.run_standard_jobs(
         self.credential2, names, {}, {'jobstring': job})
     for name, error in results['failed']:
         self.assertEqual(error, "Bad Substituent Name(s): ['N']")
Ejemplo n.º 3
0
 def test_run_standard_jobs(self):
     job = 'sleep 10'
     names = "TON,CON"
     results = utils.run_standard_jobs(
         self.credential2, names, {}, {'jobstring': job})
     self.assertEqual(results["error"], None)
     self.assertEqual(results["failed"], [])
Ejemplo n.º 4
0
 def get_results(self, request, string, mol_form):
     job_settings = dict(self.cleaned_data)
     mol_settings = dict(mol_form.cleaned_data)
     if request.method == "GET":
         if request.REQUEST.get('molname'):
             job_settings['name'] = request.REQUEST.get('molname')
         job_string = JobTemplate.render(**job_settings)
         response = HttpResponse(job_string, content_type="text/plain")
         filename = '%s.job' % job_settings['name']
         add = "" if request.REQUEST.get("view") else "attachment; "
         response['Content-Disposition'] = add + 'filename=' + filename
         return response
     elif request.method == "POST":
         cred = job_settings.pop("credential")
         do_html = request.REQUEST.get("html", False)
         results = run_standard_jobs(cred, string, mol_settings,
                                     job_settings)
         if results["failed"]:
             failed_names = zip(*results['failed'])[0]
             results["failed_mols"] = ','.join(failed_names)
         if do_html:
             html = render_to_string("chem/multi_submit.html", results)
             temp = {"success": True, "html": html}
             return HttpResponse(json.dumps(temp),
                                 content_type="application/json")
         else:
             return HttpResponse(json.dumps(results),
                                 content_type="application/json")
Ejemplo n.º 5
0
 def test_run_standard_jobs_invalid_credential(self):
     results = utils.run_standard_jobs(None, [''], {}, {})
     self.assertEqual(results["error"], CRED_ERROR)
Ejemplo n.º 6
0
 def test_run_standard_jobs_staff_error(self):
     results = utils.run_standard_jobs(self.credential, [''], {}, {})
     self.assertEqual(results["error"], SUBMIT_ERROR)