begin of unit tests
This commit is contained in:
@@ -2655,7 +2655,7 @@ def read_cols_df_sql(ids, columns, convertnewtons=True):
|
||||
try:
|
||||
df = pd.read_parquet(f,columns=columns)
|
||||
data.append(df)
|
||||
except (OSError,IndexError):
|
||||
except (OSError,IndexError,ArrowInvalid):
|
||||
rowdata,row = getrowdata(id=id)
|
||||
if rowdata and len(rowdata.df):
|
||||
datadf = dataprep(rowdata.df,id=id,bands=True,otwpower=True,barchart=True)
|
||||
|
||||
@@ -936,7 +936,7 @@ class History(TestCase):
|
||||
pass
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db',side_effect=mocked_getsmallrowdata_db)
|
||||
def test_workouts_history(self, mocked_sqlalchemy,
|
||||
mocked_getsmallrowdata_db):
|
||||
|
||||
@@ -948,6 +948,11 @@ class History(TestCase):
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
url = '/rowers/history/data/'
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db', side_effect=mocked_getsmallrowdata_db)
|
||||
def test_workouts_history_submit(self, mocked_sqlalchemy,
|
||||
@@ -978,6 +983,11 @@ class History(TestCase):
|
||||
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
response = self.c.get('/rowers/history/data/',form_data,xhr=True)
|
||||
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
|
||||
class GoldMedalScores(TestCase):
|
||||
def setUp(self):
|
||||
self.u = UserFactory()
|
||||
|
||||
61
rowers/tests/test_unit_tests.py
Normal file
61
rowers/tests/test_unit_tests.py
Normal file
@@ -0,0 +1,61 @@
|
||||
from __future__ import absolute_import
|
||||
from __future__ import division
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .statements import *
|
||||
|
||||
|
||||
nu = datetime.datetime.now()
|
||||
|
||||
# interactive plots
|
||||
from rowers import interactiveplots
|
||||
|
||||
class InteractivePlotTests(TestCase):
|
||||
def setUp(self):
|
||||
self.u = UserFactory()
|
||||
|
||||
self.r = Rower.objects.create(user=self.u,
|
||||
birthdate=faker.profile()['birthdate'],
|
||||
gdproptin=True,surveydone=True,
|
||||
gdproptindate=timezone.now(),
|
||||
rowerplan='coach')
|
||||
|
||||
self.c = Client()
|
||||
self.user_workouts = WorkoutFactory.create_batch(5, user=self.r)
|
||||
self.factory = RequestFactory()
|
||||
self.password = faker.word()
|
||||
self.u.set_password(self.password)
|
||||
self.u.save()
|
||||
|
||||
def test_interactive_hr_piechart(self):
|
||||
df = pd.read_csv('rowers/tests/testdata/getrowdata_mock.csv')
|
||||
|
||||
script, div = interactiveplots.interactive_hr_piechart(df, self.r,'')
|
||||
self.assertFalse(len(script)==0)
|
||||
self.assertFalse(len(div)==0)
|
||||
|
||||
def test_interactive_workouttype_piechart(self):
|
||||
workouts = Workout.objects.filter(user=self.r)
|
||||
script, div = interactiveplots.interactive_workouttype_piechart(workouts)
|
||||
self.assertFalse(len(script)==0)
|
||||
self.assertFalse(len(div)==0)
|
||||
|
||||
def test_interactive_boxchart(self):
|
||||
df = pd.read_csv('rowers/tests/testdata/boxplotdata.csv')
|
||||
print(df.info())
|
||||
|
||||
script, div = interactiveplots.interactive_boxchart(df, 'spm')
|
||||
|
||||
self.assertFalse(len(script)==0)
|
||||
self.assertFalse(len(div)==0)
|
||||
|
||||
def test_interactive_activitychart(self):
|
||||
workouts = Workout.objects.filter(user=self.r).order_by('date')
|
||||
workouts2 = Workout.objects.filter(user=self.r).order_by('-date')
|
||||
|
||||
startdate = workouts[0].date-datetime.timedelta(days=5)
|
||||
enddate = workouts2[0].date+datetime.timedelta(days=5)
|
||||
script, div = interactiveplots.interactive_activitychart(workouts,startdate,enddate)
|
||||
self.assertFalse(len(script)==0)
|
||||
self.assertFalse(len(div)==0)
|
||||
18820
rowers/tests/testdata/boxplotdata.csv
vendored
Normal file
18820
rowers/tests/testdata/boxplotdata.csv
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -780,8 +780,6 @@ def boxplotdata(workouts,options):
|
||||
# prepare data frame
|
||||
datadf,extracols = dataprep.read_cols_df_sql(ids,fieldlist)
|
||||
|
||||
|
||||
|
||||
datadf = dataprep.clean_df_stats(datadf,workstrokesonly=workstrokesonly)
|
||||
|
||||
datadf = dataprep.filter_df(datadf,'spm',spmmin,
|
||||
@@ -1686,7 +1684,7 @@ def performancemanager_view(request,userid=0,mode='rower',
|
||||
dofatigue = dofatigue,
|
||||
showtests = True,
|
||||
)
|
||||
|
||||
|
||||
ids = pd.Series(ids).dropna().values
|
||||
|
||||
bestworkouts = Workout.objects.filter(id__in=ids).order_by('date')
|
||||
@@ -5248,16 +5246,19 @@ def history_view_data(request,userid=0):
|
||||
time_min = datetime.time(hour=0,minute=0,second=0)
|
||||
time_max = datetime.time(hour=23,minute=59,second=59)
|
||||
|
||||
startdate = timezone.now()-datetime.timedelta(days=14)
|
||||
enddate = timezone.now()
|
||||
activity_enddate = usertimezone.localize(timezone.datetime.combine(enddate.date(),time_max))
|
||||
activity_startdate = usertimezone.localize(timezone.datetime.combine(startdate.date(),time_min))
|
||||
|
||||
|
||||
if request.GET.get('startdate'):
|
||||
startdate = datetime.datetime.strptime(request.GET.get('startdate'),"%Y-%m-%d")
|
||||
enddate = datetime.datetime.strptime(request.GET.get('enddate'),"%Y-%m-%d")
|
||||
activity_startdate = usertimezone.localize(timezone.datetime.combine(startdate,time_min))
|
||||
|
||||
if request.GET.get('enddate'):
|
||||
enddate = datetime.datetime.strptime(request.GET.get('enddate'),"%Y-%m-%d")
|
||||
activity_enddate = usertimezone.localize(timezone.datetime.combine(enddate,time_max))
|
||||
else:
|
||||
activity_enddate = timezone.now()
|
||||
activity_enddate = usertimezone.localize(timezone.datetime.combine(activity_enddate.date(),time_max))
|
||||
startdate = timezone.now()-datetime.timedelta(days=14)
|
||||
activity_startdate = usertimezone.localize(timezone.datetime.combine(startdate.date(),time_min))
|
||||
|
||||
|
||||
typeselect = 'All'
|
||||
@@ -5386,7 +5387,6 @@ def history_view_data(request,userid=0):
|
||||
ddf = dataprep.clean_df_stats(ddf,workstrokesonly=True,
|
||||
ignoreadvanced=True)
|
||||
|
||||
|
||||
totalscript, totaldiv = interactive_hr_piechart(
|
||||
ddf,r,mytypes.workouttypes_ordered[typeselect],
|
||||
totalseconds=totalseconds)
|
||||
|
||||
Reference in New Issue
Block a user