From bc520acae1552a5fa9d60dd05bbc1d7bfb491081 Mon Sep 17 00:00:00 2001 From: Oliver Hartmann Date: Tue, 3 Jan 2023 21:57:16 +0100 Subject: [PATCH] fixed an issue with nrItems --- src/data.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/data.py b/src/data.py index b186009..e75a365 100644 --- a/src/data.py +++ b/src/data.py @@ -50,7 +50,7 @@ channel_mapping = {'#': Channel.GLOBAL, class Trade(): def __init__(self, - nrItems: str, + nrItems: int, item: str, amount: float, currency: str, @@ -69,7 +69,12 @@ class Trade(): @classmethod def by_regex_result(cls, res): - return cls(nrItems=res['nrItems'], + if 'nrItems' in res.groupdict(): + nrItems = int(res['nrItems']) + else: + # If no number is specified we only search for one item + nrItems = 1 + return cls(nrItems=nrItems, item=res['item'], amount=int(res['amount']), currency=res['currency'], @@ -130,11 +135,4 @@ class Message(): def parse_trade(self) -> None: res = re_trade.search(self.message) if res: - self.trade = Trade(nrItems=res['nrItems'], - item=res['item'], - amount=float(res['amount']), - currency=res['currency'], - tab=res['tab'], - row=res['row'], - col=res['col'], - league=res['league']) + self.trade = Trade.by_regex_result(res)