Merge branch 'dev' into oauth2

This commit is contained in:
Sam
2022-07-27 16:29:57 +02:00
136 changed files with 1963 additions and 1212 deletions

View File

@ -1376,6 +1376,7 @@ class TestUserPreferencesUpdate(ApiTestCaseMixin):
weekm=True,
language=input_language,
imperial_units=True,
display_ascent=False,
)
),
headers=dict(Authorization=f'Bearer {auth_token}'),
@ -1385,8 +1386,11 @@ class TestUserPreferencesUpdate(ApiTestCaseMixin):
data = json.loads(response.data.decode())
assert data['status'] == 'success'
assert data['message'] == 'user preferences updated'
assert data['data']['display_ascent'] is False
assert data['data']['imperial_units'] is True
assert data['data']['language'] == expected_language
assert data['data'] == jsonify_dict(user_1.serialize(user_1))
assert data['data']['timezone'] == 'America/New_York'
assert data['data']['weekm'] is True
@pytest.mark.parametrize(
'client_scope, can_access',

View File

@ -38,6 +38,7 @@ class UserModelAssertMixin:
assert 'nb_workouts' in serialized_user
assert 'records' in serialized_user
assert 'sports_list' in serialized_user
assert 'total_ascent' in serialized_user
assert 'total_distance' in serialized_user
assert 'total_duration' in serialized_user
@ -66,6 +67,7 @@ class TestUserSerializeAsAuthUser(UserModelAssertMixin):
assert serialized_user['language'] == user_1.language
assert serialized_user['timezone'] == user_1.timezone
assert serialized_user['weekm'] == user_1.weekm
assert serialized_user['display_ascent'] == user_1.display_ascent
def test_it_returns_workouts_infos(self, app: Flask, user_1: User) -> None:
serialized_user = user_1.serialize(user_1)
@ -168,6 +170,46 @@ class TestUserRecords(UserModelAssertMixin):
)
assert serialized_user['records'][0]['workout_date']
def test_it_returns_totals_when_user_has_workout_without_ascent(
self,
app: Flask,
user_1: User,
sport_1_cycling: Sport,
workout_cycling_user_1: Workout,
) -> None:
serialized_user = user_1.serialize(user_1)
assert serialized_user['total_ascent'] == 0
assert serialized_user['total_distance'] == 10
assert serialized_user['total_duration'] == '1:00:00'
def test_it_returns_totals_when_user_has_workout_with_ascent(
self,
app: Flask,
user_1: User,
sport_1_cycling: Sport,
workout_cycling_user_1: Workout,
) -> None:
workout_cycling_user_1.ascent = 100
serialized_user = user_1.serialize(user_1)
assert serialized_user['total_ascent'] == 100
assert serialized_user['total_distance'] == 10
assert serialized_user['total_duration'] == '1:00:00'
def test_it_returns_totals_when_user_has_mutiple_workouts(
self,
app: Flask,
user_1: User,
sport_1_cycling: Sport,
sport_2_running: Sport,
workout_cycling_user_1: Workout,
workout_running_user_1: Workout,
) -> None:
workout_cycling_user_1.ascent = 100
serialized_user = user_1.serialize(user_1)
assert serialized_user['total_ascent'] == 100
assert serialized_user['total_distance'] == 22
assert serialized_user['total_duration'] == '2:40:00'
class TestUserWorkouts(UserModelAssertMixin):
def test_it_returns_infos_when_no_workouts(