Skip to content

Commit b38f9d5

Browse files
[CHANGE] Fixes MyPy issues - AIL-44
1 parent 0e43bf5 commit b38f9d5

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

learnosity_sdk/request/init.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,11 @@ class Init(object):
3636
def __init__(
3737
self, service: str, security: Dict[str, Any], secret: str,
3838
request: Optional[Dict[str, Any]] = None, action:Optional[str] = None) -> None:
39-
# Using None as a default value will throw mypy typecheck issues. This should be addressed
4039
self.service = service
4140
self.security = security.copy()
4241
self.secret = secret
4342
self.request = request
44-
if hasattr(request, 'copy'):
43+
if request is not None and hasattr(request, 'copy'):
4544
self.request = request.copy()
4645
self.action = action
4746

@@ -193,7 +192,7 @@ def set_service_options(self) -> None:
193192
elif self.service == 'assess':
194193
self.sign_request_data = False
195194

196-
if 'questionsApiActivity' in self.request:
195+
if self.request is not None and 'questionsApiActivity' in self.request:
197196
questionsApi = self.request['questionsApiActivity']
198197

199198
if 'domain' in self.security:
@@ -223,14 +222,14 @@ def set_service_options(self) -> None:
223222
self.request['questionsApiActivity'].update(questionsApi)
224223

225224
elif self.service == 'items' or self.service == 'reports':
226-
if 'user_id' not in self.security and \
227-
'user_id' in self.request:
225+
if self.request is not None and ('user_id' not in self.security and 'user_id' in self.request):
228226
self.security['user_id'] = self.request['user_id']
229227

230228
elif self.service == 'events':
231229
self.sign_request_data = False
232230
hashed_users = {}
233-
for user in self.request.get('users', []):
231+
users = self.request.get('users', []) if self.request is not None else []
232+
for user in users:
234233
concat = "{}{}".format(user, self.secret)
235234
hashed_users[user] = hashlib.sha256(concat.encode('utf-8')).hexdigest()
236235

@@ -244,7 +243,7 @@ def hash_list(self, l: Iterable[Any]) -> str:
244243
return '$02$' + signature
245244

246245
def add_telemetry_data(self) -> None:
247-
if self.__telemetry_enabled:
246+
if self.request is not None and self.__telemetry_enabled:
248247
if 'meta' in self.request:
249248
self.request['meta']['sdk'] = self.get_sdk_meta()
250249
else:

0 commit comments

Comments
 (0)