Private
Public Access
1
0

get_workout passing tests using mock upload api, need to add processing of nkid, oarlock params, etc

This commit is contained in:
Sander Roosendaal
2021-04-04 17:22:01 +02:00
parent f82c451e58
commit 13391c0e40
5 changed files with 117 additions and 13 deletions

View File

@@ -101,6 +101,30 @@ def mock_c2open(*args, **kwargs):
print('mock')
return('aap')
def mocked_session(*args, **kwargs):
class MockEngine:
def __init__(self, *args, **kwargs):
self.headers = MockHeaders()
def post(self, *args, **kwargs):
return MockResponse({},200)
class MockHeaders:
def update(*args, **kwargs):
return None
class MockResponse:
def __init__(self, json_data, status_code):
self.json_data = json_data
self.status_code = status_code
self.ok = True
def json(self):
return self.json_data
return MockEngine()
def mocked_sqlalchemy(*args, **kwargs):
# return object with method
@@ -939,7 +963,7 @@ def mocked_requests(*args, **kwargs):
return MockResponse(nkstrokedata,200)
if nkworkoutlisttester.match(args[0]):
return MockResponse(nkworkoutlist,200)

View File

@@ -426,15 +426,17 @@ class NKObjects(DjangoTestCase):
@patch('rowers.nkstuff.requests.get', side_effect=mocked_requests)
@patch('rowers.nkstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.dataprep.getsmallrowdata_db')
@patch('rowers.nkstuff.requests.session', side_effect=mocked_session)
@patch('rowers.dataprep.getsmallrowdata_db', side_effect=mocked_getsmallrowdata_db)
def test_nk_import(self, mock_get, mock_post,
mocked_session,
mocked_getsmallrowdata_db):
result = rowers.nkstuff.rower_nk_token_refresh(self.u)
response = self.c.get('/rowers/workout/nkimport/469',follow=True)
self.assertRedirects(response,
expected_url='/rowers/workout/'+encoded2+'/edit/',
expected_url='/rowers/workout/'+encoded1+'/edit/',
status_code=301,target_status_code=200)
self.assertEqual(response.status_code, 200)