diff --git a/rowers/c2stuff.py b/rowers/c2stuff.py index a041ec3a..35e3518f 100644 --- a/rowers/c2stuff.py +++ b/rowers/c2stuff.py @@ -631,8 +631,15 @@ def createc2workoutdata(w): spmav = int(row.df[' Cadence (stokes/min)'][mask].mean().astype(int)) hrav = int(row.df[' HRCur (bpm)'][mask].mean().astype(int)) except AttributeError: # pragma: no cover - spmav = int(row.df[' Cadence (stokes/min)'][mask].mean()) - hrav = int(row.df[' HRCur (bpm)'][mask].mean()) + try: + spmav = int(row.df[' Cadence (stokes/min)'][mask].mean()) + hrav = int(row.df[' HRCur (bpm)'][mask].mean()) + except ValuError: + smpav = 0 + try: + hrav = int(row.df[' HRCur (bpm)'][mask].mean()) + except ValuError: + hrav = 0 intervaldict = { 'type': 'distance', 'time': int(10*itime[i]), diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 6979bf0a..cd7f6c84 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -2544,7 +2544,7 @@ def getsmallrowdata_db(columns, ids=[], doclean=True,workstrokesonly=True,comput try: df = pd.concat(data,axis=0) - except ValueError: + except ValueError: # pragma: no cover return pd.DataFrame() # df = dd.concat(data,axis=0) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index fd46f0bd..09bac286 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -2153,7 +2153,7 @@ def interactive_histoall(theworkouts,histoparam,includereststrokes, # throw out nans histopwr = histopwr[~np.isinf(histopwr)] - if histoparam == 'catch': + if histoparam == 'catch': # pragma: no cover histopwr = histopwr[histopwr < yaxminima[histoparam]] histopwr = histopwr[histopwr > yaxmaxima[histoparam]] else: @@ -6871,7 +6871,7 @@ def interactive_zoneschart(rower,data,startdate,enddate,trainingzones='hr',date_ df.sort_values('date_sorting',inplace=True) df.drop('date_sorting',inplace=True,axis='columns') df['totaltime'] = 0 - if df.empty: + if df.empty: # pragma: no cover return '','No Data Found' if yaxis == 'percentage': diff --git a/rowers/management/commands/processemail.py b/rowers/management/commands/processemail.py index 1eb0c384..b091a19e 100644 --- a/rowers/management/commands/processemail.py +++ b/rowers/management/commands/processemail.py @@ -309,7 +309,7 @@ class Command(BaseCommand): # Strava rowers = Rower.objects.filter(strava_auto_import=True) for r in rowers: - if user_is_not_basic(r.user): + if user_is_not_basic(r.user): # pragma: no cover stravastuff.get_strava_workouts(r) self.stdout.write(self.style.SUCCESS( diff --git a/rowers/models.py b/rowers/models.py index e80878c2..02ca4200 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -3235,7 +3235,7 @@ class Workout(models.Model): raise forms.ValidationError("Free Coach User cannot have any workouts") if self.timezone == 'tzutc()': - self.timezone = 'UTC' + self.timezone = 'UTC' # pragma: no cover super(Workout, self).save(*args, **kwargs) diff --git a/rowers/plannedsessions.py b/rowers/plannedsessions.py index 2e8eb896..dbbee2fb 100644 --- a/rowers/plannedsessions.py +++ b/rowers/plannedsessions.py @@ -380,7 +380,7 @@ def get_todays_micro(plan,thedate=timezone.now()): if thismicro: thismicro = thismicro[0] - else: + else: # pragma: no cover mms = TrainingMicroCycle.objects.all() return None diff --git a/rowers/sporttracksstuff.py b/rowers/sporttracksstuff.py index 795d6067..b8824a62 100644 --- a/rowers/sporttracksstuff.py +++ b/rowers/sporttracksstuff.py @@ -159,7 +159,7 @@ def createsporttracksworkoutdata(w): t = row.df.loc[:,'TimeStamp (sec)'].values-row.df.loc[:,'TimeStamp (sec)'].iloc[0] try: t[0] = t[1] - except IndexError: + except IndexError: # pragma: no cover return 0 d = row.df.loc[:,'cum_dist'].values diff --git a/rowers/tasks.py b/rowers/tasks.py index 007aff46..8ee8d0e2 100644 --- a/rowers/tasks.py +++ b/rowers/tasks.py @@ -335,11 +335,11 @@ def handle_strava_sync(stravatoken,workoutid,filename,name,activity_type,descrip failed = True except stravalib.exc.ObjectNotFound: # pragma: no cover failed = True - except IndexError: + except IndexError: # pragma: no cover failed = True except ActivityUploadFailed: # pragma: no cover failed = True - except FileNotFoundError: + except FileNotFoundError: # pragma: no cover failed = True if not failed: @@ -3399,7 +3399,7 @@ def fetch_strava_workout(stravatoken,oauth_data,stravaid,csvfilename,userid,debu try: workoutsummary = requests.get(url,headers=headers).json() - except: + except: # pragma: no cover return 0 diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz deleted file mode 100644 index 9323be28..00000000 Binary files a/rowers/tests/testdata/testdata.tcx.gz and /dev/null differ diff --git a/rowers/views/importviews.py b/rowers/views/importviews.py index 2c133ac0..5dad8ce9 100644 --- a/rowers/views/importviews.py +++ b/rowers/views/importviews.py @@ -865,7 +865,7 @@ def workout_rp3import_view(request,userid=0): try: rp3ids = workouts_list['id'].values - except KeyError: + except KeyError: # pragma: no cover rp3ids = [] knownrp3ids = uniqify([ @@ -879,7 +879,7 @@ def workout_rp3import_view(request,userid=0): for key,data in workouts_list.iterrows(): try: i = data['id'] - except KeyError: + except KeyError: # pragma: no cover i = 0 if i in knownrp3ids: # pragma: no cover nnn = '' @@ -888,7 +888,7 @@ def workout_rp3import_view(request,userid=0): try: s = data['executed_at'] - except KeyError: + except KeyError: # pragma: no cover s = '' keys = ['id','starttime','new'] @@ -1003,7 +1003,7 @@ def workout_stravaimport_view(request,message="",userid=0): workouts.append(res2) if request.method == "POST": - try: + try: # pragma: no cover tdict = dict(request.POST.lists()) ids = tdict['workoutid'] stravaids = [int(id) for id in ids] diff --git a/rowers/views/planviews.py b/rowers/views/planviews.py index b537dd74..de955a94 100644 --- a/rowers/views/planviews.py +++ b/rowers/views/planviews.py @@ -842,7 +842,7 @@ def plannedsession_multicreate_view(request, if request.method == "POST": ps_formset = PlannedSessionFormSet(queryset = qset, data = request.POST) - if ps_formset.is_valid(): + if ps_formset.is_valid(): # pragma: no cover instances = ps_formset.save(commit=False) for ps in instances: ps.save() diff --git a/rowers/views/workoutviews.py b/rowers/views/workoutviews.py index 569fffec..3eb15010 100644 --- a/rowers/views/workoutviews.py +++ b/rowers/views/workoutviews.py @@ -3504,7 +3504,7 @@ def workout_stats_view(request,id=0,message="",successmessage=""): if not np.isnan(hrdrift): try: hrdrift = int(100*hrdrift)/100. - except: + except: # pragma: no cover hrdrift = 0 otherstats['hrdrift'] = { 'verbose_name': 'Heart Rate Drift', @@ -6177,7 +6177,7 @@ def workout_summary_edit_view(request,id,message="",successmessage="" timeprev = int(df['time'].values[0]) timenext = int(df['time'].values[result[0]]) s = '{delta}sec'.format(delta=timenext-timeprev) - except IndexError: + except IndexError: # pragma: no cover s = '0sec'