From aeddfaa7c0a50fff3f1dd8dce5f0bc38126e0fc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Tue, 2 Feb 2016 19:03:57 +0100 Subject: [PATCH] Add history tests for reading One2Many with datetime_field issue5269 review20671002 --- trytond/tests/history.py | 4 ++++ trytond/tests/test_history.py | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/trytond/tests/history.py b/trytond/tests/history.py index 6421ad8f18..f94bd0159c 100644 --- a/trytond/tests/history.py +++ b/trytond/tests/history.py @@ -11,6 +11,10 @@ class TestHistory(ModelSQL): _history = True value = fields.Integer('Value') lines = fields.One2Many('test.history.line', 'history', 'Lines') + lines_at_stamp = fields.One2Many( + 'test.history.line', 'history', 'Lines at Stamp', + datetime_field='stamp') + stamp = fields.Timestamp('Stamp') class TestHistoryLine(ModelSQL): diff --git a/trytond/tests/test_history.py b/trytond/tests/test_history.py index 0131dac85a..a2a3fa69d3 100644 --- a/trytond/tests/test_history.py +++ b/trytond/tests/test_history.py @@ -382,6 +382,9 @@ class HistoryTestCase(unittest.TestCase): first_stamp = line_b.create_date + history.stamp = first_stamp + history.save() + transaction.cursor.commit() with Transaction().start(DB_NAME, USER, @@ -405,6 +408,9 @@ class HistoryTestCase(unittest.TestCase): history = History(history_id) self.assertEqual(history.value, 2) self.assertEqual([l.name for l in history.lines], ['c']) + self.assertEqual(history.stamp, first_stamp) + self.assertEqual( + [l.name for l in history.lines_at_stamp], ['a', 'b']) with Transaction().set_context(_datetime=first_stamp): history = History(history_id) @@ -415,6 +421,9 @@ class HistoryTestCase(unittest.TestCase): history = History(history_id) self.assertEqual(history.value, 2) self.assertEqual([l.name for l in history.lines], ['c']) + self.assertEqual(history.stamp, first_stamp) + self.assertEqual( + [l.name for l in history.lines_at_stamp], ['a', 'b']) def test0080_search_cursor_max(self): 'Test search with number of history entries at cursor.IN_MAX'