From 601f86fa940fdbe97d573ef4f3753093512fb641 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sun, 4 Jul 2010 22:56:23 +0200 Subject: [PATCH] Fix DateTime microsecond replacement replace method return a new datetime (transplanted from 9fa480f96eba384f411b9369347d5913d92bbd15) --- trytond/backend/fields.py | 3 +-- trytond/tests/test_fields.py | 8 ++++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/trytond/backend/fields.py b/trytond/backend/fields.py index ec1d538d87..0919c26ef1 100644 --- a/trytond/backend/fields.py +++ b/trytond/backend/fields.py @@ -118,8 +118,7 @@ class DateTime(Field): hours, minutes, seconds = map(int, timepart.split(":")) return datetime.datetime(year, month, day, hours, minutes, seconds) assert(isinstance(value, datetime.datetime)) - value.replace(microsecond=0) - return value + return value.replace(microsecond=0) class Timestamp(Field): diff --git a/trytond/tests/test_fields.py b/trytond/tests/test_fields.py index 28c06f6f47..f263dd570b 100644 --- a/trytond/tests/test_fields.py +++ b/trytond/tests/test_fields.py @@ -2114,6 +2114,14 @@ class FieldsTestCase(unittest.TestCase): }, CONTEXT) self.assert_(datetime8_id) + datetime9_id = self.datetime.create(cursor, USER, { + 'datetime': today.replace(microsecond=1), + }, CONTEXT) + self.assert_(datetime9_id) + datetime9 = self.datetime.read(cursor, USER, datetime9_id, + ['datetime'], CONTEXT) + self.assert_(datetime9['datetime'] == today) + cursor.rollback() cursor.close()