Private
Public Access
1
0

tests for Polar import

This commit is contained in:
Sander Roosendaal
2022-01-15 16:38:59 +01:00
parent ec8cc7d836
commit 78f9c5bf8c
5 changed files with 135 additions and 18 deletions

View File

@@ -16,6 +16,7 @@ from rowers import dataprep
from rowers import tasks
from rowers import c2stuff
from rowers import stravastuff
from rowers import polarstuff
import urllib
import json
@@ -755,6 +756,71 @@ class NKObjects(DjangoTestCase):
w = Workout.objects.get(id=1)
#self.assertTrue(w.impeller)
@override_settings(TESTING=True)
class PolarObjects(DjangoTestCase):
def setUp(self):
self.c = Client()
self.u = User.objects.create_user('john',
'sander@ds.ds',
'koeinsloot')
self.u.first_name = 'John'
self.u.last_name = 'Sander'
self.u.save()
self.r = Rower.objects.create(user=self.u,gdproptin=True,surveydone=True,
gdproptindate=timezone.now()
)
self.r.polartoken = '12'
self.r.polarrefreshtoken = '123'
self.r.polartokenexpirydate = arrow.get(datetime.datetime.now()+datetime.timedelta(days=100)).datetime
self.r.save()
self.c.login(username='john',password='koeinsloot')
self.nu = datetime.datetime.now()
filename = 'rowers/tests/testdata/testdata.csv'
rr = rrower(hrmax=self.r.max,hrut2=self.r.ut2,
hrut1=self.r.ut1,hrat=self.r.at,
hrtr=self.r.tr,hran=self.r.an,ftp=self.r.ftp)
row = rdata(csvfile=filename,rower=rr)
totaldist = row.df['cum_dist'].max()
totaltime = row.df['TimeStamp (sec)'].max()-row.df['TimeStamp (sec)'].min()
totaltime = totaltime+row.df.loc[:,' ElapsedTime (sec)'].iloc[0]
hours = int(totaltime/3600.)
minutes = int((totaltime - 3600.*hours)/60.)
seconds = int(totaltime - 3600.*hours - 60.*minutes)
tenths = int(10*(totaltime - 3600.*hours - 60.*minutes - seconds))
duration = "%s:%s:%s.%s" % (hours,minutes,seconds,tenths)
workoutdate = row.rowdatetime.strftime('%Y-%m-%d')
workoutstarttime = row.rowdatetime.strftime('%H:%M:%S')
self.w = Workout.objects.create(
name='testworkout',workouttype='water',
user=self.r,date=self.nu.strftime('%Y-%m-%d'),
starttime=workoutstarttime,
startdatetime=row.rowdatetime,
duration=duration,distance=totaldist,
csvfilename=filename
)
@patch('rowers.polarstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.polarstuff.requests.get', side_effect=mocked_requests)
def test_polar_auto_import(self, mock_get, mock_post):
self.r.polar_auto_import = True
self.r.save()
res = polarstuff.get_polar_workouts(self.r.user)
self.assertEqual(len(res),2)
#@pytest.mark.django_db
@override_settings(TESTING=True)
class RP3Objects(DjangoTestCase):