From 457d661ae0ce672aeb18ee931ede4f3f0e50c331 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Thu, 23 Jan 2014 18:08:36 +0100 Subject: [PATCH] [FIX] test: correct Mock of search_read [IMP] search_read: build order index using dict comprehension bzr revid: chs@openerp.com-20140123170836-4qu0ei6zucaprwxs --- addons/web/controllers/main.py | 4 +--- addons/web/tests/test_dataset.py | 5 +++++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index f847f7734b0..20e552cdf0b 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -1085,9 +1085,7 @@ class DataSet(openerpweb.Controller): records = Model.read(ids, fields or False, req.context) - index = {} - for r in records: - index[r['id']] = r + index = dict((r['id'], r) for r in records) records = [index[x] for x in ids if x in index] return { diff --git a/addons/web/tests/test_dataset.py b/addons/web/tests/test_dataset.py index a6faf9e6df1..778f23a25b6 100644 --- a/addons/web/tests/test_dataset.py +++ b/addons/web/tests/test_dataset.py @@ -22,6 +22,11 @@ class TestDataSetController(unittest2.TestCase): def test_regular_find(self): self.search.return_value = [1, 2, 3] + self.read.return_value = [ + {'id': 1, 'name': 'foo'}, + {'id': 2, 'name': 'bar'}, + {'id': 3, 'name': 'qux'} + ] self.dataset.do_search_read(self.request, 'fake.model') self.read.assert_called_once_with(