Skip to content

Commit fc112f1

Browse files
committed
Fix datetime properties
Object properties should either return their value or `None` if no value is present.
1 parent c591d53 commit fc112f1

File tree

9 files changed

+55
-11
lines changed

9 files changed

+55
-11
lines changed

webexteamssdk/models/mixins/event.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,8 @@ def actorId(self):
6161
@property
6262
def created(self):
6363
"""The date and time the event was performed."""
64-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
64+
created = self._json_data.get('created')
65+
if created:
66+
return WebexTeamsDateTime.strptime(created)
67+
else:
68+
return None

webexteamssdk/models/mixins/membership.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,4 +81,8 @@ def isMonitor(self):
8181
@property
8282
def created(self):
8383
"""The date and time the membership was created."""
84-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
84+
created = self._json_data.get('created')
85+
if created:
86+
return WebexTeamsDateTime.strptime(created)
87+
else:
88+
return None

webexteamssdk/models/mixins/message.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,4 +91,8 @@ def mentionedPeople(self):
9191
@property
9292
def created(self):
9393
"""The date and time the message was created."""
94-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
94+
created = self._json_data.get('created')
95+
if created:
96+
return WebexTeamsDateTime.strptime(created)
97+
else:
98+
return None

webexteamssdk/models/mixins/organization.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,8 @@ def displayName(self):
5151
@property
5252
def created(self):
5353
"""Creation date and time in ISO8601 format."""
54-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
54+
created = self._json_data.get('created')
55+
if created:
56+
return WebexTeamsDateTime.strptime(created)
57+
else:
58+
return None

webexteamssdk/models/mixins/person.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,11 @@ def licenses(self):
9696
@property
9797
def created(self):
9898
"""The date and time the person was created."""
99-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
99+
created = self._json_data.get('created')
100+
if created:
101+
return WebexTeamsDateTime.strptime(created)
102+
else:
103+
return None
100104

101105
@property
102106
def status(self):
@@ -106,7 +110,11 @@ def status(self):
106110
@property
107111
def lastActivity(self):
108112
"""The date and time of the person's last activity."""
109-
return WebexTeamsDateTime.strptime(self._json_data.get('lastActivity'))
113+
last_activity = self._json_data.get('lastActivity')
114+
if last_activity:
115+
return WebexTeamsDateTime.strptime(last_activity)
116+
else:
117+
return None
110118

111119
@property
112120
def invitePending(self):

webexteamssdk/models/mixins/room.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,20 @@ def isLocked(self):
6161
@property
6262
def lastActivity(self):
6363
"""The date and time when the room was last active."""
64-
return WebexTeamsDateTime.strptime(self._json_data.get('lastActivity'))
64+
last_activity = self._json_data.get('lastActivity')
65+
if last_activity:
66+
return WebexTeamsDateTime.strptime(last_activity)
67+
else:
68+
return None
6569

6670
@property
6771
def created(self):
6872
"""The date and time when the room was created."""
69-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
73+
created = self._json_data.get('created')
74+
if created:
75+
return WebexTeamsDateTime.strptime(created)
76+
else:
77+
return None
7078

7179
@property
7280
def creatorId(self):

webexteamssdk/models/mixins/team.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,11 @@ def name(self):
5151
@property
5252
def created(self):
5353
"""The date and time the team was created."""
54-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
54+
created = self._json_data.get('created')
55+
if created:
56+
return WebexTeamsDateTime.strptime(created)
57+
else:
58+
return None
5559

5660
@property
5761
def creatorId(self):

webexteamssdk/models/mixins/team_membership.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,8 @@ def isModerator(self):
7676
@property
7777
def created(self):
7878
"""The date and time the team membership was created."""
79-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
79+
created = self._json_data.get('created')
80+
if created:
81+
return WebexTeamsDateTime.strptime(created)
82+
else:
83+
return None

webexteamssdk/models/mixins/webhook.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,4 +112,8 @@ def status(self):
112112
@property
113113
def created(self):
114114
"""Creation date and time in ISO8601 format."""
115-
return WebexTeamsDateTime.strptime(self._json_data.get('created'))
115+
created = self._json_data.get('created')
116+
if created:
117+
return WebexTeamsDateTime.strptime(created)
118+
else:
119+
return None

0 commit comments

Comments
 (0)