Private
Public Access
1
0

going through importviews ... coverage

This commit is contained in:
Sander Roosendaal
2021-04-20 10:41:32 +02:00
parent f413af91e6
commit 9677d5166e
7 changed files with 464 additions and 239 deletions

View File

@@ -1192,7 +1192,7 @@ def plannedsession_teamedit_view(request,
url = reverse('plannedsessions_view')
if "_continue" in request.POST:
if "_continue" in request.POST: # pragma: no cover
url = reverse(plannedsession_edit_view,
kwargs={
'id':int(ps.id),
@@ -1648,10 +1648,10 @@ def plannedsessions_manage_view(request,userid=0,
ps = PlannedSession.objects.get(id=ps_form.cleaned_data['plannedsession'])
if w_form.is_valid():
selectedworkouts = w_form.cleaned_data['workouts']
else:
else: # pragma: no cover
selectedworkouts = []
if len(selectedworkouts)==0:
if len(selectedworkouts)==0: # pragma: no cover
for w in ws:
remove_workout_plannedsession(w,ps)
@@ -1664,7 +1664,7 @@ def plannedsessions_manage_view(request,userid=0,
result,comments,errors = add_workouts_plannedsession(workouts,ps,r)
for c in comments:
messages.info(request,c)
for er in errors:
for er in errors: # pragma: no cover
messages.error(request,er)
@@ -2477,7 +2477,7 @@ class PlannedSessionDelete(DeleteView):
def rower_view_instantplan(request,id='',userid=0):
r = getrequestrower(request,userid=userid)
if not id:
if not id: # pragma: no cover
raise Http404("Plan does not exist")
plan = InstantPlan.objects.get(uuid=id)
@@ -2488,7 +2488,7 @@ def rower_view_instantplan(request,id='',userid=0):
headers = {'Authorization':authorizationstring}
response = requests.get(url=url,headers=headers)
if response.status_code != 200:
if response.status_code != 200: # pragma: no cover
messages.error(request,"Could not connect to the training plan server")
return HttpResponseRedirect(reverse('rower_select_instantplan'))
@@ -2520,7 +2520,7 @@ def rower_view_instantplan(request,id='',userid=0):
).order_by("-date")
if request.method == 'POST' and not request.user.is_anonymous:
if not can_plan(request.user):
if not can_plan(request.user): # pragma: no cover
messages.error(request,'You must be on a <a href="/rowers/paidplans">paid plan</a> to use this functionality')
url = reverse('rower_view_instantplan',kwargs={
'id':id,
@@ -2534,11 +2534,11 @@ def rower_view_instantplan(request,id='',userid=0):
name = form.cleaned_data['name']
try:
targetid = form.cleaned_data['target']
if targetid != '':
if targetid != '': # pragma: no cover
target = TrainingTarget.objects.get(id=int(targetid))
else:
target = None
except KeyError:
except KeyError: # pragma: no cover
try:
targetid = request.POST['target']
if targetid != '':
@@ -2553,12 +2553,12 @@ def rower_view_instantplan(request,id='',userid=0):
datechoice = form.cleaned_data['datechoice']
status = True
if target and datechoice == 'target':
if target and datechoice == 'target': # pragma: no cover
enddate = target.date
startdate = enddate-datetime.timedelta(days=plan.duration)
elif datechoice == 'startdate':
enddate = startdate+datetime.timedelta(days=plan.duration)
else:
else: # pragma: no cover
startdate = enddate-datetime.timedelta(days=plan.duration)
@@ -2585,7 +2585,7 @@ def rower_view_instantplan(request,id='',userid=0):
elif not request.user.is_anonymous:
form = InstantPlanSelectForm(targets=targets,instantplan=plan,initial={'datechoice':'startdate'})
else:
else: # pragma: no cover
form = None
breadcrumbs = [
@@ -2632,7 +2632,7 @@ def remove_groupsession_view(request,id=0):
if res:
messages.info(request,"We have removed you from this group session")
else:
else: # pragma: no cover
messages.error(request,"For some reason we could not remove you from this group session")
url = reverse('plannedsessions_view')
@@ -2641,12 +2641,12 @@ def remove_groupsession_view(request,id=0):
@login_required()
def add_instantplan_view(request):
if not request.user.is_staff:
if not request.user.is_staff: # pragma: no cover
raise PermissionDenied("Not Allowed")
r = getrequestrower(request)
if request.method == 'POST':
if request.method == 'POST': # pragma: no cover
form = InstantPlanForm(request.POST,request.FILES)
if form.is_valid():
ip = form.save(commit=False)
@@ -2764,9 +2764,9 @@ def rower_create_trainingplan(request,id=0):
targetid = request.POST['target']
if targetid != '':
target = TrainingTarget.objects.get(id=int(targetid))
else:
else: # pragma: no cover
target = None
except KeyError:
except KeyError: # pragma: no cover
target = None
startdate = form.cleaned_data['startdate']
status = form.cleaned_data['status']
@@ -2814,7 +2814,7 @@ def rower_create_trainingplan(request,id=0):
status=True,
).order_by("-startdate")
for p in plans_to_deactivate:
for p in plans_to_deactivate: # pragma: no cover
p.status = False
p.save()
@@ -2863,18 +2863,6 @@ def rower_delete_trainingtarget(request,id=0):
return HttpResponseRedirect(url)
@user_passes_test(can_plan,login_url="/rowers/paidplans",
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
@permission_required('target.delete_plan',fn=get_plan_by_pk,raise_exception=True)
def rower_delete_trainingplan(request,id=0):
plan = get_object_or_404(TrainingPlan,pk=id)
plan.delete()
url = reverse(rower_create_trainingplan)
return HttpResponseRedirect(url)
class TrainingPlanDelete(DeleteView):
model = TrainingPlan
template_name = 'trainingplan_delete.html'
@@ -2882,12 +2870,12 @@ class TrainingPlanDelete(DeleteView):
def get_object(self, *args, **kwargs):
obj = super(TrainingPlanDelete, self).get_object(*args, **kwargs)
if not can_delete_plan(self.request.user,obj):
if not can_delete_plan(self.request.user,obj): # pragma: no cover
raise PermissionDenied('You are not allowed to delete this training plan')
return obj
class MicroCycleDelete(DeleteView):
class MicroCycleDelete(DeleteView): # pragma: no cover
model = TrainingMicroCycle
template_name = 'trainingplan_delete.html'
@@ -2953,7 +2941,7 @@ class MicroCycleDelete(DeleteView):
return obj
class MesoCycleDelete(DeleteView):
class MesoCycleDelete(DeleteView): # pragma: no cover
model = TrainingMesoCycle
template_name = 'trainingplan_delete.html'
@@ -3016,7 +3004,7 @@ class MesoCycleDelete(DeleteView):
return obj
class MacroCycleDelete(DeleteView):
class MacroCycleDelete(DeleteView): # pragma: no cover
model = TrainingMacroCycle
template_name = 'trainingplan_delete.html'
@@ -3085,13 +3073,13 @@ def rower_trainingplan_execution_view(request,
if int(id)>0:
try:
plan = TrainingPlan.objects.get(id=id)
except TrainingPlan.DoesNotExist:
except TrainingPlan.DoesNotExist: # pragma: no cover
raise Http404("Training Plan Does Not Exist")
if not is_coach_user(request.user,plan.manager.user):
if not is_coach_user(request.user,plan.manager.user): # pragma: no cover
if request.user.rower not in plan.rowers.all():
raise PermissionDenied("Access denied")
if not startdate or not enddate:
if not startdate or not enddate: # pragma: no cover
if int(id)>0:
startdate = plan.startdate
enddate = plan.enddate
@@ -3103,12 +3091,12 @@ def rower_trainingplan_execution_view(request,
if int(id)>0:
data,message = get_execution_report(r,startdate,enddate,plan=plan)
else:
else: # pragma: no cover
data,message = get_execution_report(r,startdate,enddate)
if not data.empty:
script, div = interactive_planchart(data,startdate,enddate)
else:
else: # pragma: no cover
script = ''
div = ''
messages.error(request,'The plan does not cover this time range')
@@ -3133,7 +3121,7 @@ def rower_trainingplan_execution_view(request,
'name': 'Execution'
}
]
else:
else: # pragma: no cover
breadcrumbs = [
{
'url':reverse(plannedsessions_view,
@@ -3224,7 +3212,7 @@ def rower_trainingplan_view(request,
try:
thismicro = get_todays_micro(plan,thedate=startdate)
thismicroid = thismicro.pk
except AttributeError:
except AttributeError: # pragma: no cover
thismicroid = None
@@ -3242,7 +3230,7 @@ def rower_trainingplan_view(request,
}
)
class TrainingMacroCycleUpdate(UpdateView):
class TrainingMacroCycleUpdate(UpdateView): # pragma: no cover
model = TrainingMacroCycle
template_name = 'trainingplan_edit.html'
form_class = TrainingMacroCycleForm
@@ -3307,7 +3295,7 @@ class TrainingMacroCycleUpdate(UpdateView):
obj.save()
return obj
class TrainingMesoCycleUpdate(UpdateView):
class TrainingMesoCycleUpdate(UpdateView): # pragma: no cover
model = TrainingMesoCycle
template_name = 'trainingplan_edit.html'
form_class = TrainingMesoCycleForm
@@ -3381,7 +3369,7 @@ class TrainingMesoCycleUpdate(UpdateView):
obj.plan.save()
return obj
class TrainingMicroCycleUpdate(UpdateView):
class TrainingMicroCycleUpdate(UpdateView): # pragma: no cover
model = TrainingMicroCycle
template_name = 'trainingplan_edit.html'
form_class = TrainingMicroCycleForm
@@ -3460,7 +3448,7 @@ class TrainingMicroCycleUpdate(UpdateView):
obj.plan.save()
return obj
class TrainingPlanUpdate(UpdateView):
class TrainingPlanUpdate(UpdateView): # pragma: no cover
model = TrainingPlan
template_name = 'trainingplan_edit.html'
form_class = TrainingPlanForm
@@ -3519,7 +3507,7 @@ class TrainingPlanUpdate(UpdateView):
return obj
class TrainingTargetUpdate(UpdateView):
class TrainingTargetUpdate(UpdateView): # pragma: no cover
model = TrainingTarget
template_name = 'trainingplan_edit.html'
form_class = TrainingTargetForm
@@ -3575,7 +3563,7 @@ from rowers.utils import allsundays
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
@permission_required('cycle.change_cycle',fn=get_meso_by_pk,raise_exception=True)
def planmesocyclebyweek(request,id=0,userid=0):
def planmesocyclebyweek(request,id=0,userid=0): # pragma: no cover
cycle = get_object_or_404(TrainingMesoCycle,pk=id)
micros = TrainingMicroCycle.objects.filter(plan=cycle)
@@ -3625,7 +3613,7 @@ from rowers.utils import allmonths
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
@permission_required('cycle.change_cycle',fn=get_macro_by_pk,raise_exception=True)
def planmacrocyclebymonth(request,id=0,userid=0):
def planmacrocyclebymonth(request,id=0,userid=0): # pragma: no cover
cycle = get_object_or_404(TrainingMacroCycle,pk=id)
mesos = TrainingMesoCycle.objects.filter(plan=cycle)