Private
Public Access
1
0

small stuff coverage related

This commit is contained in:
Sander Roosendaal
2021-04-12 08:45:48 +02:00
parent f83e010fb1
commit aae5858b51

View File

@@ -2054,7 +2054,7 @@ def workouts_view(request,message='',successmessage='',
activity_startdate = activity_startdate.replace(hour=0,minute=0,second=0) activity_startdate = activity_startdate.replace(hour=0,minute=0,second=0)
else: else:
activity_enddate = enddate activity_enddate = enddate
except ValueError: except ValueError: # pragma: no cover
activity_enddate = enddate activity_enddate = enddate
g_startdate = activity_startdate g_startdate = activity_startdate
@@ -2064,7 +2064,7 @@ def workouts_view(request,message='',successmessage='',
if teamid: if teamid:
try: try:
theteam = Team.objects.get(id=teamid) theteam = Team.objects.get(id=teamid)
except Team.DoesNotExist: except Team.DoesNotExist: # pragma: no cover
raise Http404("Team doesn't exist") raise Http404("Team doesn't exist")
if theteam.viewing == 'allmembers' or theteam.manager == request.user: if theteam.viewing == 'allmembers' or theteam.manager == request.user:
@@ -2138,7 +2138,7 @@ def workouts_view(request,message='',successmessage='',
# polarization = dataprep.polarization_index(df,r) # polarization = dataprep.polarization_index(df,r)
if query: if query: # pragma: no cover
query_list = query.split() query_list = query.split()
workouts = workouts.filter( workouts = workouts.filter(
reduce(operator.and_, reduce(operator.and_,
@@ -2151,13 +2151,11 @@ def workouts_view(request,message='',successmessage='',
searchform = SearchForm() searchform = SearchForm()
paginator = Paginator(workouts,20) # show 25 workouts per page paginator = Paginator(workouts,20) # show 25 workouts per page
page = request.GET.get('page') page = request.GET.get('page',1)
try: try:
workouts = paginator.page(page) workouts = paginator.page(page)
except PageNotAnInteger: except EmptyPage: # pragma: no cover
workouts = paginator.page(1)
except EmptyPage:
workouts = paginator.page(paginator.num_pages) workouts = paginator.page(paginator.num_pages)
today = timezone.now() today = timezone.now()
@@ -2174,7 +2172,7 @@ def workouts_view(request,message='',successmessage='',
stack='type' stack='type'
yaxis = request.GET.get('yaxis','duration') yaxis = request.GET.get('yaxis','duration')
if yaxis not in ['duration','trimp','rscore']: if yaxis not in ['duration','trimp','rscore']: # pragma: no cover
yaxis = 'duration' yaxis = 'duration'
script,div = interactive_activitychart(g_workouts, script,div = interactive_activitychart(g_workouts,
@@ -2254,7 +2252,7 @@ def workout_fusion_list(request,id=0,
enddate = datetime.datetime.combine(enddate,datetime.time(23,59,59)) enddate = datetime.datetime.combine(enddate,datetime.time(23,59,59))
#enddate = enddate+datetime.timedelta(days=1) #enddate = enddate+datetime.timedelta(days=1)
if enddate < startdate: if enddate < startdate: # pragma: no cover
s = enddate s = enddate
enddate = startdate enddate = startdate
startdate = s startdate = s
@@ -2269,7 +2267,7 @@ def workout_fusion_list(request,id=0,
startdatetime__lte=enddate).order_by("-date", "-starttime").exclude(id=theid) startdatetime__lte=enddate).order_by("-date", "-starttime").exclude(id=theid)
query = request.GET.get('q') query = request.GET.get('q')
if query: if query: # pragma: no cover
query_list = query.split() query_list = query.split()
workouts = workouts.filter( workouts = workouts.filter(
reduce(operator.and_, reduce(operator.and_,
@@ -2282,12 +2280,10 @@ def workout_fusion_list(request,id=0,
searchform = SearchForm() searchform = SearchForm()
paginator = Paginator(workouts,15) # show 25 workouts per page paginator = Paginator(workouts,15) # show 25 workouts per page
page = request.GET.get('page') page = request.GET.get('page',1)
try: try:
workouts = paginator.page(page) workouts = paginator.page(page)
except PageNotAnInteger:
workouts = paginator.page(1)
except EmptyPage: except EmptyPage:
workouts = paginator.page(paginator.num_pages) workouts = paginator.page(paginator.num_pages)
row = get_workoutuser(id, request) row = get_workoutuser(id, request)
@@ -2499,7 +2495,7 @@ def workout_undo_smoothenpace_view(
filename = row.csvfilename filename = row.csvfilename
row = rdata(filename) row = rdata(filename)
if row == 0: if row == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
if 'originalvelo' in row.df: if 'originalvelo' in row.df:
@@ -2534,7 +2530,7 @@ def workout_smoothenpace_view(request,id=0,message="",successmessage=""):
filename = row.csvfilename filename = row.csvfilename
row = rdata(filename) row = rdata(filename)
if row == 0: if row == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
try: try:
@@ -2542,7 +2538,7 @@ def workout_smoothenpace_view(request,id=0,message="",successmessage=""):
velo = 500./pace velo = 500./pace
except KeyError: except KeyError:
messages.error(request,'Unable to find the data') messages.error(request,'Unable to find the data')
if previousurl: if previousurl: # pragma: no cover
url = previousurl url = previousurl
else: else:
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
@@ -2595,7 +2591,7 @@ def workout_downloadwind_view(request,id=0,
# create bearing # create bearing
rowdata = rdata(f1) rowdata = rdata(f1)
if rowdata == 0: if rowdata == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
try: try:
@@ -2623,7 +2619,7 @@ def workout_downloadwind_view(request,id=0,
if message is not None: if message is not None:
try: try:
row.notes += "\n"+message row.notes += "\n"+message
except TypeError: except TypeError: # pragma: no cover
if message is not None and row.notes is not None: if message is not None and row.notes is not None:
row.notes += message row.notes += message
@@ -2664,7 +2660,7 @@ def workout_downloadmetar_view(request,id=0,
# create bearing # create bearing
rowdata = rdata(f1) rowdata = rdata(f1)
if rowdata == 0: if rowdata == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
try: try:
@@ -2691,7 +2687,7 @@ def workout_downloadmetar_view(request,id=0,
message = winddata[2] message = winddata[2]
try: try:
row.notes += "\n"+message row.notes += "\n"+message
except TypeError: except TypeError: # pragma: no cover
if message is not None: if message is not None:
try: try:
row.notes += message row.notes += message
@@ -2752,7 +2748,7 @@ def workout_wind_view(request,id=0,message="",successmessage=""):
# create bearing # create bearing
rowdata = rdata(f1) rowdata = rdata(f1)
if row == 0: if row == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
@@ -2762,7 +2758,7 @@ def workout_wind_view(request,id=0,message="",successmessage=""):
except KeyError: except KeyError:
hascoordinates = 0 hascoordinates = 0
if hascoordinates and not latitude.std(): if hascoordinates and not latitude.std(): # pragma: no cover
hascoordinates = 0 hascoordinates = 0
try: try:
@@ -2806,7 +2802,7 @@ def workout_wind_view(request,id=0,message="",successmessage=""):
rowdata.write_csv(f1,gzip=True) rowdata.write_csv(f1,gzip=True)
else: else: # pragma: no cover
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
@@ -2868,7 +2864,7 @@ def workout_stream_view(request,id=0,message="",successmessage=""):
r = getrower(u) r = getrower(u)
rowdata = rdata(f1) rowdata = rdata(f1)
if rowdata == 0: if rowdata == 0: # pragma: no cover
messages.info(request,"Error: CSV data file not found") messages.info(request,"Error: CSV data file not found")
url = reverse('workout_edit_view',kwargs={'id':encoder.encode_hex(row.id)}) url = reverse('workout_edit_view',kwargs={'id':encoder.encode_hex(row.id)})
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2891,7 +2887,7 @@ def workout_stream_view(request,id=0,message="",successmessage=""):
rowdata.write_csv(f1,gzip=True) rowdata.write_csv(f1,gzip=True)
else: else: # pragma: no cover
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
@@ -2968,7 +2964,7 @@ def workout_otwsetpower_view(request,id=0,message="",successmessage=""):
# load row data & create power/wind/bearing columns if not set # load row data & create power/wind/bearing columns if not set
f1 = w.csvfilename f1 = w.csvfilename
rowdata = rdata(f1) rowdata = rdata(f1)
if rowdata == 0: if rowdata == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
try: try:
vstream = rowdata.df['vstream'] vstream = rowdata.df['vstream']
@@ -3025,7 +3021,7 @@ def workout_otwsetpower_view(request,id=0,message="",successmessage=""):
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
return response return response
else: else: # pragma: no cover
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
@@ -3098,7 +3094,7 @@ def instroke_view(request,id=0):
try: try:
instrokemetrics = rowdata.get_instroke_columns() instrokemetrics = rowdata.get_instroke_columns()
instrokemetrics = [m for m in instrokemetrics if not m in nometrics] instrokemetrics = [m for m in instrokemetrics if not m in nometrics]
except AttributeError: except AttributeError: # pragma: no cover
instrokemetrics = [] instrokemetrics = []
@@ -3484,7 +3480,7 @@ def workout_stats_view(request,id=0,message="",successmessage=""):
try: try:
fielddict.pop('pace') fielddict.pop('pace')
except KeyError: except KeyError: # pragma: no cover
pass pass
for field,verbosename in fielddict.items(): for field,verbosename in fielddict.items():
@@ -3501,7 +3497,7 @@ def workout_stats_view(request,id=0,message="",successmessage=""):
'verbosename':verbosename, 'verbosename':verbosename,
} }
stats[field] = thedict stats[field] = thedict
except KeyError: except KeyError: # pragma: no cover
pass pass
# Create a dict with correlation values # Create a dict with correlation values
@@ -3513,7 +3509,7 @@ def workout_stats_view(request,id=0,message="",successmessage=""):
for field2,verbosename2 in fielddict.items(): for field2,verbosename2 in fielddict.items():
try: try:
thedict[verbosename2] = cor.loc[field1,field2] thedict[verbosename2] = cor.loc[field1,field2]
except KeyError: except KeyError: # pragma: no cover
thedict[verbosename2] = 0 thedict[verbosename2] = 0
cordict[verbosename1] = thedict cordict[verbosename1] = thedict
@@ -3578,7 +3574,7 @@ def workout_stats_view(request,id=0,message="",successmessage=""):
'value': hrdrift, 'value': hrdrift,
'unit': '%', 'unit': '%',
} }
except (ZeroDivisionError,ValueError): except (ZeroDivisionError,ValueError): # pragma: no cover
pass pass
# TRIMP # TRIMP
@@ -3753,7 +3749,7 @@ def workout_workflow_view(request,id):
try: try:
template.loader.get_template(t) template.loader.get_template(t)
middleTemplates.append(t) middleTemplates.append(t)
except template.TemplateDoesNotExist: except template.TemplateDoesNotExist: # pragma: no cover
pass pass
leftTemplates = [] leftTemplates = []
@@ -3761,7 +3757,7 @@ def workout_workflow_view(request,id):
try: try:
template.loader.get_template(t) template.loader.get_template(t)
leftTemplates.append(t) leftTemplates.append(t)
except template.TemplateDoesNotExist: except template.TemplateDoesNotExist: # pragma: no cover
pass pass
@@ -3804,7 +3800,7 @@ def workout_flexchart3_view(request,*args,**kwargs):
try: try:
id = kwargs['id'] id = kwargs['id']
except KeyError: except KeyError: # pragma: no cover
raise Http404("Invalid workout number") raise Http404("Invalid workout number")
if 'promember' in kwargs: if 'promember' in kwargs:
@@ -3841,7 +3837,7 @@ def workout_flexchart3_view(request,*args,**kwargs):
if favorites: if favorites:
try: try:
t = favorites[favoritenr].xparam t = favorites[favoritenr].xparam
except IndexError: except IndexError: # pragma: no cover
favoritenr=0 favoritenr=0
except AssertionError: except AssertionError:
favoritenr=0 favoritenr=0
@@ -3864,7 +3860,7 @@ def workout_flexchart3_view(request,*args,**kwargs):
if 'yparam2' in kwargs: if 'yparam2' in kwargs:
yparam2 = kwargs['yparam2'] yparam2 = kwargs['yparam2']
if yparam2 == '': if yparam2 == '': # pragma: no cover
yparam2 = 'None' yparam2 = 'None'
else: else:
if favorites: if favorites:
@@ -3879,7 +3875,7 @@ def workout_flexchart3_view(request,*args,**kwargs):
if favoritenr>=0 and r.showfavoritechartnotes: if favoritenr>=0 and r.showfavoritechartnotes:
try: try:
favoritechartnotes = favorites[favoritenr].notes favoritechartnotes = favorites[favoritenr].notes
except IndexError: except IndexError: # pragma: no cover
favoritechartnotes = '' favoritechartnotes = ''
else: else:
favoritechartnotes = '' favoritechartnotes = ''
@@ -3992,12 +3988,12 @@ def workout_flexchart3_view(request,*args,**kwargs):
rowdata = rdata(row.csvfilename) rowdata = rdata(row.csvfilename)
try: try:
rowdata.set_instroke_metrics() rowdata.set_instroke_metrics()
except (AttributeError,TypeError): except (AttributeError,TypeError): # pragma: no cover
pass pass
try: try:
additionalmetrics = rowdata.get_additional_metrics() additionalmetrics = rowdata.get_additional_metrics()
additionalmetrics = [m for m in additionalmetrics if not m in nometrics] additionalmetrics = [m for m in additionalmetrics if not m in nometrics]
except AttributeError: except AttributeError: # pragma: no cover
additionalmetrics = [] additionalmetrics = []
@@ -4387,6 +4383,19 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
except: except:
pass pass
if request.user.rower.rowerplan == 'basic' and 'nklinklogbook' in row.workoutsource:
data = getsmallrowdata_db(['wash'],ids=[encoder.decode_hex(id)])
try:
if data['wash'].std() != 0:
url = reverse('paidplans_view')
messages.info(
request,
'Some Empower Oarlock data are only available to users with a <a href="{u}">paid plan</a>'.format(u=url)
)
except:
pass
form = WorkoutForm(instance=row) form = WorkoutForm(instance=row)
if request.method == 'POST': if request.method == 'POST':
@@ -4410,13 +4419,10 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
rpe = form.cleaned_data['rpe'] rpe = form.cleaned_data['rpe']
if not rpe: if not rpe:
rpe = -1 rpe = -1
except KeyError: except KeyError: # pragma: no cover
rpe = -1 rpe = -1
try: ps = form.cleaned_data.get('plannedsession',None)
ps = form.cleaned_data['plannedsession']
except KeyError:
ps = None
try: try:
boattype = request.POST['boattype'] boattype = request.POST['boattype']
@@ -4557,7 +4563,7 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
except (KeyError,AttributeError): except (KeyError,AttributeError):
hascoordinates = 0 hascoordinates = 0
else: else: # pragma: no cover
hascoordinates = 0 hascoordinates = 0
@@ -4570,7 +4576,7 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
rowdata.df[' latitude'], rowdata.df[' latitude'],
rowdata.df[' longitude'], rowdata.df[' longitude'],
row.name) row.name)
except KeyError: except KeyError: # pragma: no cover
pass pass
breadcrumbs = [ breadcrumbs = [
@@ -5877,12 +5883,10 @@ def list_videos(request,userid=0):
paginator = Paginator(g,8) paginator = Paginator(g,8)
page = request.GET.get('page') page = request.GET.get('page',1)
try: try:
g = paginator.page(page) g = paginator.page(page)
except PageNotAnInteger:
g = paginator.page(1)
except EmptyPage: except EmptyPage:
g = paginator.page(paginator.num_pages) g = paginator.page(paginator.num_pages)
@@ -6005,7 +6009,7 @@ def workout_summary_restore_view(request,id,message="",successmessage=""):
powerperc=powerperc,powerzones=r.powerzones, powerperc=powerperc,powerzones=r.powerzones,
hrzones=r.hrzones) hrzones=r.hrzones)
rowdata = rdata(f1,rower=rr) rowdata = rdata(f1,rower=rr)
if rowdata == 0: if rowdata == 0: # pragma: no cover
raise Http404("Error: CSV Data File Not Found") raise Http404("Error: CSV Data File Not Found")
rowdata.restoreintervaldata() rowdata.restoreintervaldata()
rowdata.write_csv(f1,gzip=True) rowdata.write_csv(f1,gzip=True)
@@ -6019,7 +6023,7 @@ def workout_summary_restore_view(request,id,message="",successmessage=""):
res = interactive_chart(encoder.decode_hex(id),promember=1) res = interactive_chart(encoder.decode_hex(id),promember=1)
script = res[0] script = res[0]
div = res[1] div = res[1]
except ValueError: except ValueError: # pragma: no cover
pass pass
@@ -6072,7 +6076,7 @@ def workout_split_view(request,id=0):
) )
for message in mesgs: for message in mesgs:
messages.info(request,message) messages.info(request,message)
except IndexError: except IndexError: # pragma: no cover
messages.error(request,"Something went wrong in Split") messages.error(request,"Something went wrong in Split")
@@ -6114,7 +6118,7 @@ def workout_split_view(request,id=0):
res = interactive_chart(encoder.decode_hex(id),promember=1) res = interactive_chart(encoder.decode_hex(id),promember=1)
script = res[0] script = res[0]
div = res[1] div = res[1]
except ValueError: except ValueError: # pragma: no cover
pass pass
return render(request, 'splitworkout.html', return render(request, 'splitworkout.html',
@@ -6263,12 +6267,12 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
powerperc=powerperc,powerzones=r.powerzones, powerperc=powerperc,powerzones=r.powerzones,
hrzones=r.hrzones) hrzones=r.hrzones)
rowdata = rdata(f1,rower=rr) rowdata = rdata(f1,rower=rr)
if rowdata == 0: if rowdata == 0: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
intervalstats = rowdata.allstats() intervalstats = rowdata.allstats()
try: try:
itime,idist,itype = rowdata.intervalstats_values() itime,idist,itype = rowdata.intervalstats_values()
except TypeError: except TypeError: # pragma: no cover
return HttpResponse("Error: CSV Data File Not Found") return HttpResponse("Error: CSV Data File Not Found")
nrintervals = len(idist) nrintervals = len(idist)
@@ -6307,7 +6311,7 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
try: try:
normspm = int(normspm) normspm = int(normspm)
except ValueError: except ValueError: # pragma: no cover
normspm = 18 normspm = 18
try: try: