bug fix sporttracks no gps
This commit is contained in:
3
.gpx
3
.gpx
@@ -1,3 +0,0 @@
|
|||||||
|
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><gpx xmlns="http://www.topografix.com/GPX/1/1" xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v1" creator="Oregon 400t" version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd"><metadata><link href="http://www.garmin.com"><text>Garmin International</text></link><time>2018-03-17T12:59:13</time></metadata><trk><name>Export by rowingdata</name>
|
|
||||||
</trk></gpx>
|
|
||||||
14
.tcx
14
.tcx
@@ -1,14 +0,0 @@
|
|||||||
|
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
||||||
<TrainingCenterDatabase xmlns="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2">
|
|
||||||
<Activities>
|
|
||||||
<Activity Sport="Other">
|
|
||||||
<Id>2015-03-28T20:45:15.000Z</Id>
|
|
||||||
<Creator xsi:type="Device_t" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<Name>Empty File</Name>
|
|
||||||
<UnitId>0</UnitId>
|
|
||||||
<ProductID>0</ProductID>
|
|
||||||
</Creator>
|
|
||||||
</Activity>
|
|
||||||
</Activities>
|
|
||||||
</TrainingCenterDatabase>
|
|
||||||
@@ -9,6 +9,8 @@ from rowsandall_app.settings import (
|
|||||||
SPORTTRACKS_REDIRECT_URI
|
SPORTTRACKS_REDIRECT_URI
|
||||||
)
|
)
|
||||||
|
|
||||||
|
import mytypes
|
||||||
|
|
||||||
oauth_data = {
|
oauth_data = {
|
||||||
'client_id': SPORTTRACKS_CLIENT_ID,
|
'client_id': SPORTTRACKS_CLIENT_ID,
|
||||||
'client_secret': SPORTTRACKS_CLIENT_SECRET,
|
'client_secret': SPORTTRACKS_CLIENT_SECRET,
|
||||||
@@ -346,7 +348,7 @@ def add_workout_from_data(user,importid,data,strokedata,source='sporttracks',
|
|||||||
times_location = times_distance
|
times_location = times_distance
|
||||||
latcoord = np.zeros(len(times_distance))
|
latcoord = np.zeros(len(times_distance))
|
||||||
loncoord = np.zeros(len(times_distance))
|
loncoord = np.zeros(len(times_distance))
|
||||||
if workouttype in types.otwtypes:
|
if workouttype in mytypes.otwtypes:
|
||||||
workouttype = 'rower'
|
workouttype = 'rower'
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -532,6 +532,7 @@ def mocked_requests(*args, **kwargs):
|
|||||||
}
|
}
|
||||||
|
|
||||||
ststrokesjson = json.load(open('rowers/tests/testdata/sporttracksstrokedata.txt','r'))
|
ststrokesjson = json.load(open('rowers/tests/testdata/sporttracksstrokedata.txt','r'))
|
||||||
|
ststrokesjson_nogps = json.load(open('rowers/tests/testdata/sporttracksstrokedatanolocation.txt','r'))
|
||||||
|
|
||||||
rkstrokesjson = json.load(open('rowers/tests/testdata/rkstrokes.txt','r'))
|
rkstrokesjson = json.load(open('rowers/tests/testdata/rkstrokes.txt','r'))
|
||||||
|
|
||||||
@@ -606,7 +607,7 @@ def mocked_requests(*args, **kwargs):
|
|||||||
stworkoutlistregex = '.*?sporttracks\.mobi\/api\/v2\/fitnessActivities$'
|
stworkoutlistregex = '.*?sporttracks\.mobi\/api\/v2\/fitnessActivities$'
|
||||||
stworkoutlisttester = re.compile(stworkoutlistregex)
|
stworkoutlisttester = re.compile(stworkoutlistregex)
|
||||||
|
|
||||||
ststrokesregex = '.*?sporttracks\.mobi\/api\/v2\/fitnessActivities/\d+$'
|
ststrokesregex = '.*?sporttracks\.mobi\/api\/v2\/fitnessActivities/(\d+)$'
|
||||||
ststrokestester = re.compile(ststrokesregex)
|
ststrokestester = re.compile(ststrokesregex)
|
||||||
|
|
||||||
rkuploadregex = '.*?api\.runkeeper\.com\/fitnessActivities$'
|
rkuploadregex = '.*?api\.runkeeper\.com\/fitnessActivities$'
|
||||||
@@ -725,7 +726,10 @@ def mocked_requests(*args, **kwargs):
|
|||||||
}
|
}
|
||||||
return MockResponse(json_data,200)
|
return MockResponse(json_data,200)
|
||||||
if ststrokestester.match(args[0]):
|
if ststrokestester.match(args[0]):
|
||||||
return MockResponse(ststrokesjson,200)
|
if ststrokestester.match(args[0]).group(1) == '13':
|
||||||
|
return MockResponse(ststrokesjson_nogps,200)
|
||||||
|
else:
|
||||||
|
return MockResponse(strokesjson,200)
|
||||||
if stuploadtester.match(args[0]):
|
if stuploadtester.match(args[0]):
|
||||||
json_data = {
|
json_data = {
|
||||||
"uris": [
|
"uris": [
|
||||||
|
|||||||
@@ -421,6 +421,17 @@ class STObjects(DjangoTestCase):
|
|||||||
|
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
@patch('rowers.imports.requests.get', side_effect=mocked_requests)
|
||||||
|
def test_sporttracks_import(self, mock_get):
|
||||||
|
|
||||||
|
response = self.c.get('/rowers/workout/sporttracksimport/13/',follow=True)
|
||||||
|
|
||||||
|
self.assertRedirects(response,
|
||||||
|
expected_url='/rowers/workout/2/edit/',
|
||||||
|
status_code=302,target_status_code=200)
|
||||||
|
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
@patch('rowers.dataprep.create_engine')
|
@patch('rowers.dataprep.create_engine')
|
||||||
def test_strokedata(self, mocked_sqlalchemy):
|
def test_strokedata(self, mocked_sqlalchemy):
|
||||||
with open('rowers/tests/testdata/sporttrackstestdata.txt','r') as infile:
|
with open('rowers/tests/testdata/sporttrackstestdata.txt','r') as infile:
|
||||||
|
|||||||
1
rowers/tests/testdata/sporttracksstrokedatanolocation.txt
vendored
Normal file
1
rowers/tests/testdata/sporttracksstrokedatanolocation.txt
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
rowers/tests/testdata/testdata.csv.gz
vendored
BIN
rowers/tests/testdata/testdata.csv.gz
vendored
Binary file not shown.
@@ -59,7 +59,7 @@ def matchsource(line):
|
|||||||
tester = re.compile(testert)
|
tester = re.compile(testert)
|
||||||
|
|
||||||
if tester.match(line.lower()):
|
if tester.match(line.lower()):
|
||||||
return group(1)
|
return tester.match(line.lower()).group(1)
|
||||||
|
|
||||||
# currently only matches one chart
|
# currently only matches one chart
|
||||||
def matchchart(line):
|
def matchchart(line):
|
||||||
|
|||||||
Reference in New Issue
Block a user