def test_can_parse_activity(self, flask): data = load_json_fixture("runkeeper_1") workout = workout_from_activity(data) assert data is not None assert workout is not None assert workout.is_imported == True assert workout.workout_type == "running" assert workout.equipment_type == "None" assert workout.tracking_mode == "outdoor" assert workout.distance == data["total_distance"] assert workout.calories == data["total_calories"] assert workout.climb == data["climb"] assert workout.duration == data["duration"] # There should be an additional point for the image assert workout.points.count() == len(data["path"]) + 1 assert workout.points[0].longitude == data["path"][0]["longitude"] assert workout.points[0].latitude == data["path"][0]["latitude"] assert workout.points[0].altitude == data["path"][0]["altitude"] # Images have coordinates too assert workout.points[497].longitude == data["images"][0]["longitude"]
def test_saves_parsed_data(self, flask, alice): data = load_json_fixture("runkeeper_1") workout = workout_from_activity(data) identifier = parse_runkeeper_identifier(data["uri"]) save_and_commit_workout(workout, alice, identifier) assert has_synced_workout(identifier, "runkeeper") == True assert Workout.query.filter_by(user_id=alice.id).count() == 1