Skip to content

Commit dc3cc3f

Browse files
Xakkachillymosh
andauthored
Fix CustomRewardRedemption (#300)
* Correct CustomRewardRedemption * Fix CustomRewardRedemption * Update changelog.rst * Update changelog.rst Co-authored-by: chillymosh <[email protected]>
1 parent 4065804 commit dc3cc3f

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

docs/changelog.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ Massive documentation updates
1717
- Added :func:`User.fetch_chat_settings` and :func:`User.update_chat_settings` methods
1818
- Added :func:`Client.part_channels` method
1919
- Added :func:`Client.event_channel_joined` event. This is dispatched when the bot joins a channel
20-
- Added first kwarg to CustomReward.get_redemption()
20+
- Added first kwarg to :func:`CustomReward.get_redemptions`
21+
- Fix :class:`CustomRewardRedemption` so :func:`CustomReward.get_redemptions` returns correctly
2122

2223
- ext.commands
2324
- :func:`Bot.handle_commands` now also invokes on threads / replies

twitchio/rewards.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
from typing import Optional, TYPE_CHECKING
2929

3030
from .errors import HTTPException, Unauthorized
31+
from .utils import parse_timestamp
3132

3233
if TYPE_CHECKING:
3334
from .http import TwitchHTTP
@@ -257,7 +258,7 @@ async def get_redemptions(self, token: str, status: str, sort: str = "OLDEST", f
257258
) from error
258259
raise
259260
else:
260-
return [CustomRewardRedemption(x, self._http, self) for x in data["data"]]
261+
return [CustomRewardRedemption(x, self._http, self) for x in data]
261262

262263

263264
class CustomRewardRedemption:
@@ -272,9 +273,12 @@ def __init__(self, obj: dict, http: "TwitchHTTP", parent: Optional[CustomReward]
272273
self.user_name = obj["user_name"]
273274
self.input = obj["user_input"]
274275
self.status = obj["status"]
275-
self.redeemed_at = datetime.datetime.fromisoformat(obj["redeemed_at"])
276+
self.redeemed_at = parse_timestamp(obj["redeemed_at"])
276277
self.reward = parent or obj["reward"]
277278

279+
def __repr__(self):
280+
return f"<CustomRewardRedemption id={self.id} user_id={self.user_id} user_name={self.user_name} input={self.input} status={self.status} redeemed_at={self.redeemed_at}>"
281+
278282
async def fulfill(self, token: str):
279283
"""
280284
marks the redemption as fulfilled

0 commit comments

Comments
 (0)