def test_no_dibs(self): reg = Registration() up = UserProfile.objects.get(user=self.u1) reg.user_profile = up reg.number = 15 reg.race_class = self.race_class reg.pax_class = None reg.event = self.e4 reg.club = self.c reg.save() s = Session() s.event = self.e4 s.name = "AM" s.club = self.c s.save() result = Result() result.reg = reg result.session = s result.club = self.c result.save() for k in range(0, 3): r = Run() r.base_time = 10.0 r.calc_time = 10.0 r.index_time = 10.0 r.result = result r.club = self.c r.save() self.c.assign_dibs() self.assertEqual(len(Dibs.objects.all()), 0) reg.delete() s.delete()
def upload_results(request, event_id): validate_error = dict() event = Event.objects.get(pk=event_id) admin = is_club_admin(request.user, event.club) if not admin: return HttpResponseForbidden() try: name = request.POST.get('name') if not name: validate_error['name'] = "you must name the session" raise ValueError session = Session() session.club = event.club session.event = event session.save() f = StringIO.StringIO(request.FILES['results_file'].read()) results = parse_axtime(event, session, f) if isinstance(results, dict): #some kind of error happened validate_error = results raise ValueError transaction.rollback() return HttpResponse(content=json.dumps({'msg': "success"}), mimetype="application/json", status=200) except Exception: #import traceback #tb = traceback.format_exc() session.delete() transaction.rollback() print json.dumps(validate_error) return HttpResponse(content=json.dumps(validate_error), mimetype="application/json", status=400)