passing most tests
This commit is contained in:
@@ -59,12 +59,12 @@ class RP3Integration(SyncIntegration):
|
||||
|
||||
try:
|
||||
rp3ids = workouts_list['id'].values
|
||||
workouts_list.set_index('id',inpace=True)
|
||||
workouts_list.set_index('id',inplace=True)
|
||||
except (KeyError, IndexError):
|
||||
return 0
|
||||
|
||||
knownrp3ids = uniqify([
|
||||
w.uploadedtorp3 for w in Workout.objects.filter(user=rower)
|
||||
w.uploadedtorp3 for w in Workout.objects.filter(user=r)
|
||||
])
|
||||
|
||||
dologging('rp3_import.log',rp3ids)
|
||||
@@ -74,7 +74,7 @@ class RP3Integration(SyncIntegration):
|
||||
dologging('rp3_import.log',newids)
|
||||
|
||||
for id in newids:
|
||||
startdatetime = workouts_list.loc[id, 'executed_at_ios8601']
|
||||
startdatetime = workouts_list.loc[id, 'executed_at_iso8601']
|
||||
dologging('rp3_import.log', startdatetime)
|
||||
|
||||
_ = myqueue(
|
||||
@@ -85,7 +85,7 @@ class RP3Integration(SyncIntegration):
|
||||
id,
|
||||
startdatetime,
|
||||
20,
|
||||
{'timezone':self.rower.defaulttimezone}
|
||||
timezone = self.rower.defaulttimezone
|
||||
)
|
||||
|
||||
return 1
|
||||
@@ -173,7 +173,6 @@ class RP3Integration(SyncIntegration):
|
||||
workouts = []
|
||||
|
||||
for key, data in workouts_list.iterrows():
|
||||
print(data)
|
||||
try:
|
||||
i = data['id']
|
||||
except KeyError: # pragma: no cover
|
||||
|
||||
@@ -29,7 +29,6 @@ import rowers.uploads as uploads
|
||||
|
||||
import rowers.polarstuff as polarstuff
|
||||
|
||||
import rowers.rp3stuff as rp3stuff
|
||||
|
||||
from rowers.opaque import encoder
|
||||
from rowers.integrations import *
|
||||
@@ -102,7 +101,8 @@ class Command(BaseCommand):
|
||||
rowers = Rower.objects.filter(rp3_auto_import=True)
|
||||
for r in rowers: # pragma: no cover
|
||||
if user_is_not_basic(r.user) or user_is_coachee(r.user):
|
||||
_ = rp3stuff.get_rp3_workouts(r)
|
||||
rp3_integration = RP3Integration(r.user)
|
||||
_ = rp3_integration.get_workouts()
|
||||
except: # pragma: no cover
|
||||
exc_type, exc_value, exc_traceback = sys.exc_info()
|
||||
lines = traceback.format_exception(exc_type, exc_value, exc_traceback)
|
||||
|
||||
@@ -3245,8 +3245,6 @@ def handle_rp3_async_workout(userid, rp3token, rp3id, startdatetime, max_attempt
|
||||
'timezone': timezone,
|
||||
}
|
||||
|
||||
print(uploadoptions)
|
||||
|
||||
session = requests.session()
|
||||
newHeaders = {'Content-type': 'application/json', 'Accept': 'text/plain'}
|
||||
session.headers.update(newHeaders)
|
||||
|
||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
@@ -653,8 +653,6 @@ urlpatterns = [
|
||||
re_path(r'^workout/nkimport/all/(?P<startdatestring>\d+-\d+-\d+)/(?P<enddatestring>\d+-\d+-\d+)/$',
|
||||
views.workout_getnkworkout_all,
|
||||
name='workout_getnkworkout_all'),
|
||||
re_path(r'^workout/rp3import/(?P<externalid>\d+)/$', views.workout_getrp3importview,
|
||||
name='workout_getrp3importview'),
|
||||
re_path(r'^workout/rp3import/user/(?P<userid>\d+)/$',
|
||||
views.workout_rp3import_view, name='workout_rp3import_view'),
|
||||
re_path(r'^workout/rp3import/all/$', views.workout_getrp3workout_all,
|
||||
|
||||
@@ -1540,6 +1540,7 @@ importlistviews = {
|
||||
'sporttracks': 'workout_sporttracksimport_view',
|
||||
'trainingpeaks': 'workout_view',
|
||||
'nk': 'workout_nkimport_view',
|
||||
'rp3': 'workout_rp3import_view',
|
||||
}
|
||||
|
||||
importauthorizeviews = {
|
||||
@@ -1550,6 +1551,7 @@ importauthorizeviews = {
|
||||
'sporttracks': 'rower_sporttracks_authorize',
|
||||
'trainingpeaks': 'rower_tp_authorize',
|
||||
'nk': 'rower_nk_authorize',
|
||||
'rp3': 'rower_rp3_authorize',
|
||||
}
|
||||
|
||||
importsources = {
|
||||
@@ -1560,26 +1562,10 @@ importsources = {
|
||||
'sporttracks': SportTracksIntegration,
|
||||
'trainingpeaks': tpstuff,
|
||||
'nk': NKIntegration,
|
||||
'rp3':RP3Integration,
|
||||
}
|
||||
|
||||
|
||||
@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
def workout_getrp3importview(request, externalid):
|
||||
r = getrequestrower(request)
|
||||
if r.user != request.user: # pragma: no cover
|
||||
messages.error(
|
||||
request, 'You can only access your own workouts on the RP3 Logbook, not those of your athletes')
|
||||
url = reverse('workout_rp3import_view', kwargs={
|
||||
'userid': request.user.id})
|
||||
return HttpResponseRedirect(url)
|
||||
rp3_integration = RP3Integration(request.user)
|
||||
result = rp3_integration.get_workout(externalid)
|
||||
|
||||
messages.info(request, 'The workout will be imported in the background')
|
||||
|
||||
url = reverse('workout_rp3import_view')
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
@login_required()
|
||||
def workout_getimportview_old(request, externalid, source='c2', do_async=True):
|
||||
|
||||
Reference in New Issue
Block a user