Private
Public Access
1
0

rojabo v2

This commit is contained in:
Sander Roosendaal
2022-11-01 18:36:08 +01:00
parent cd8a0456c8
commit 055725eef9
6 changed files with 85 additions and 8 deletions

View File

@@ -734,6 +734,9 @@ def mocked_requests(*args, **kwargs):
with open('rowers/tests/testdata/c2_timezone.json','r') as infile:
c2timezoneworkoutdata = json.load(infile)
with open('rowers/tests/testdata/rojabolist.json','r') as infile:
rojabodata = json.load(infile)
with open('rowers/tests/testdata/c2_timezone2.json','r') as infile:
c2timezoneworkoutdata2 = json.load(infile)
@@ -1045,6 +1048,9 @@ def mocked_requests(*args, **kwargs):
return MockResponse(jsonresponse,200)
if 'rojabo' in args[0]:
return MockResponse(rojabodata, 200)
polartester = re.compile(r'.*?polaraccesslink\.com')
polarremotetester = re.compile(r'.*?polarremote\.com')

View File

@@ -66,6 +66,7 @@ from mock import Mock, patch
import pandas as pd
import rowers.c2stuff as c2stuff
import rowers.sporttracksstuff as sporttracksstuff
import rowers.rojabo_stuff as rojabo_stuff
from django.urls import reverse, reverse_lazy

View File

@@ -21,11 +21,64 @@ import urllib
import json
import rowers.utils as utils
import rowers.rojabo_stuff as rojabo_stuff
from django.db import transaction
import rowers.garmin_stuff as gs
@pytest.mark.django_db
@override_settings(TESTING=True)
class RojaboObjects(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.rojabo_token = '12'
self.r.rojabo_refreshtoken = 'ab'
self.r.rojabo_tokenexpirydate = arrow.get(datetime.datetime.now()+datetime.timedelta(days=1)).datetime
self.r.defaulttimezone = 'Europe/Prague'
self.r.rowerplan = 'plan'
self.r.save()
self.c.login(username='john',password='koeinsloot')
self.nu = datetime.datetime.now()
@patch('rowers.rojabo_stuff.requests.get', side_effect=mocked_requests)
@patch('rowers.rojabo_stuff.requests.post', side_effect=mocked_requests)
def test_rojabo_import(self, mock_get, mock_post):
url = '/rowers/session/rojaboimport/'
response = self.c.get(url)
self.assertEqual(response.status_code, 200)
form_data = {
'csrfmiddlewaretoken': ['xalRrf8y7P2Hhobges9QC4aKCWg4l06gexDc8g2DeuVExgadfk4YhV8oSE1Yu43U'],
'sessions': ['Import selected sessions'],
'sessionid': ['862172']
}
response = self.c.post(url,form_data)
self.assertEqual(response.status_code,200)
pss = PlannedSession.objects.filter(manager=self.r.user)
self.assertEqual(pss.count(),1)
ps = pss[0]
self.assertEqual(ps.approximate_duration,57)
self.assertEqual(len(ps.steps['steps']),20)
@pytest.mark.django_db
@override_settings(TESTING=True)
class GarminObjects(DjangoTestCase):