Private
Public Access
1
0

Increasing coverage

This commit is contained in:
2024-03-01 12:26:36 +01:00
parent eb33bd9a8a
commit c4426d8a0b
12 changed files with 226 additions and 85 deletions

View File

@@ -56,7 +56,7 @@ def analysis_new(request,
try:
thesession = PlannedSession.objects.get(id=session)
if not can_view_session(user, thesession):
if not can_view_session(user, thesession): # pragma: no cover
raise PermissionDenied("you cannot view this session")
except PlannedSession.DoesNotExist:
thesession = None
@@ -102,7 +102,7 @@ def analysis_new(request,
try:
waterboattype = options['waterboattype']
except KeyError:
except KeyError: # pragma: no cover
pass
if request.method == 'POST':
@@ -188,7 +188,7 @@ def analysis_new(request,
pass
rankingtypes = [False,True]
if ranking:
if ranking: # pragma: no cover
rankingtypes = [True]
@@ -272,7 +272,7 @@ def analysis_new(request,
request.session['options'] = options
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
ids = options.get('ids',[])
tw = []
for id in ids:
@@ -526,7 +526,7 @@ def trendflexdata(workouts, options, userid=0):
extratitle = ' '+u.first_name+' '+u.last_name
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
return df
script, div = interactive_multiflex(df, xparam, yparam,
@@ -561,7 +561,7 @@ def flexalldata(workouts, options):
extratitle = ' '+u.first_name+' '+u.last_name
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
workstrokesonly = not includereststrokes
columns = [xparam, yparam1, yparam2, 'spm', 'driveenergy', 'distance']
ids = [int(w.id) for w in workouts]
@@ -603,7 +603,7 @@ def histodata(workouts, options):
extratitle = ' '+u.first_name+' '+u.last_name
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
workstrokesonly = not includereststrokes
ids = [int(w.id) for w in workouts]
df = dataprep.getsmallrowdata_db([plotfield], ids=ids,
@@ -640,7 +640,7 @@ def cpdata(workouts, options):
})
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
return powerdf
if powerdf.empty: # pragma: no cover
@@ -869,7 +869,7 @@ def comparisondata(workouts, options):
}
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
workstrokesonly = not includereststrokes
columns = [xparam, yparam1,
'ftime', 'distance', 'fpace',
@@ -950,7 +950,7 @@ def boxplotdata(workouts, options):
extratitle = ' '+u.first_name+' '+u.last_name
savedata = options.get('savedata',False)
if savedata:
if savedata: # pragma: no cover
return datadf
script, div = interactive_boxchart(datadf, plotfield,
@@ -1425,7 +1425,7 @@ def rankings_view2(request, userid=0,
wcdurations = options['wcdurations']
wcpower = options['wcpower']
lastupdated = options['lastupdated']
except KeyError:
except KeyError: # pragma: no cover
pass
try:
userid = options['userid']
@@ -2017,7 +2017,7 @@ class ForceCurveAnalysisDelete(DeleteView):
def get_object(self, *args, **kwargs):
obj = super(ForceCurveAnalysisDelete, self).get_object(*args, **kwargs)
if obj.rower != self.request.user.rower:
if obj.rower != self.request.user.rower: # pragma: no cover
raise PermissionDenied("You are not allowed to delete this Analysis")
return obj
@@ -2039,8 +2039,7 @@ class SavedAnalysisView(UserPassesTestMixin, View):
analyses = None
chart = instroke_multi_interactive_chart
def handle_no_permission(self):
def handle_no_permission(self): # pragma: no cover
if self.request.user.is_anonymous:
url = reverse('login')+'?next='+self.request.path
return HttpResponseRedirect(url)
@@ -2079,7 +2078,7 @@ class SavedAnalysisView(UserPassesTestMixin, View):
super(SavedAnalysisView, self).setup(request, *args, **kwargs)
self.r = getrequestrower(request, userid=self.userid)
if self.r is not None and not is_coach_user(self.request.user, self.r.user):
if self.r is not None and not is_coach_user(self.request.user, self.r.user): # pragma: no cover
raise PermissionDenied("You are not allowed to see analyses for this user")
self.analyses = self.analysis_class.objects.filter(rower=self.r).order_by("-date","-id")
@@ -2087,7 +2086,7 @@ class SavedAnalysisView(UserPassesTestMixin, View):
startdate = request.GET.get('startdate')
enddate = request.GET.get('enddate')
self.searchform = SearchForm()
if query:
if query: # pragma: no cover
query_list = query.split()
if self.analysis_class == InStrokeAnalysis:
self.analyses = self.analyses.filter(
@@ -2111,13 +2110,13 @@ class SavedAnalysisView(UserPassesTestMixin, View):
)
self.searchform = SearchForm(initial={'q': query})
date_initial = {}
if startdate:
if startdate: # pragma: no cover
try:
self.analyses = self.analyses.filter(date__gte=startdate)
date_initial['startdate'] = startdate
except ValidationError:
messages.error(request,"{startdate} is not a valid start date".format(startdate=startdate))
if enddate:
if enddate: # pragma: no cover
self.analyses = self.analyses.filter(date__lte=enddate)
date_initial['enddate'] = enddate
self.dateform = DateRangeForm(initial=date_initial)
@@ -2136,7 +2135,7 @@ class SavedAnalysisView(UserPassesTestMixin, View):
'dateform': self.dateform,
})
def post(self, request, *args, **kwargs):
def post(self, request, *args, **kwargs): # pragma: no cover
form = self.form_class(request.POST)
if form.is_valid():
@@ -2211,7 +2210,7 @@ class InStrokeAnalysisDelete(DeleteView):
def get_object(self, *args, **kwargs):
obj = super(InStrokeAnalysisDelete, self).get_object(*args, **kwargs)
if obj.rower != self.request.user.rower:
if obj.rower != self.request.user.rower: # pragma: no cover
raise PermissionDenied("You are not allowed to delete this Analysis")
return obj
@@ -2356,7 +2355,7 @@ def alert_report_view(request, id=0, userid=0, nperiod=0):
stats = alert_get_stats(alert, nperiod=nperiod)
is_ajax = request_is_ajax(request)
if is_ajax:
if is_ajax: # pragma: no cover
return JSONResponse({
"stats": stats,
})
@@ -2772,7 +2771,7 @@ def history_view_data(request, userid=0):
df = getsmallrowdata_db(columns, ids=ids)
try:
df['deltat'] = df['time'].diff().clip(lower=0)
except KeyError:
except KeyError: # pragma: no cover
pass
df = dataprep.clean_df_stats(df, workstrokesonly=True,
ignoreadvanced=True, ignorehr=False)
@@ -2825,7 +2824,7 @@ def history_view_data(request, userid=0):
ddict['powermean'] = int(wavg(ddf, 'power', 'deltat'))
try:
ddict['powermax'] = ddf['power'].max().astype(int)
except KeyError:
except KeyError: # pragma: no cover
ddict['powermax'] = 0
ddict['nrworkouts'] = a_workouts.count()
listofdicts.append(ddict)
@@ -2840,7 +2839,7 @@ def history_view_data(request, userid=0):
try:
totalsdict['powermean'] = int(wavg(df, 'power', 'deltat'))
totalsdict['powermax'] = df['power'].max().astype(int)
except KeyError:
except KeyError: # pragma: no cover
totalsdict['powermean'] = 0
totalsdict['powermax'] = 0
try: