change FrenchTransaction.parse_date to be a class method

This commit is contained in:
Romain Bignon 2013-11-29 15:14:57 +01:00
commit 1a581a1543

View file

@ -66,6 +66,7 @@ class FrenchTransaction(Transaction):
else: else:
self.amount = Decimal('0') self.amount = Decimal('0')
@classmethod
def parse_date(self, date): def parse_date(self, date):
if date is None: if date is None:
return NotAvailable return NotAvailable
@ -74,7 +75,7 @@ class FrenchTransaction(Transaction):
if date.isdigit() and len(date) == 8: if date.isdigit() and len(date) == 8:
date = datetime.date(int(date[4:8]), int(date[2:4]), int(date[0:2])) date = datetime.date(int(date[4:8]), int(date[2:4]), int(date[0:2]))
elif '/' in date: elif '/' in date:
date = datetime.date(*reversed([int(x) for x in date.split('/')])) date = datetime.date(*reversed(map(int, date.split('/'))))
if not isinstance(date, (datetime.date, datetime.datetime)): if not isinstance(date, (datetime.date, datetime.datetime)):
self._logger.warning('Unable to parse date %r' % date) self._logger.warning('Unable to parse date %r' % date)
date = NotAvailable date = NotAvailable