From 08a21157540bd0dc423697c9d0f7fa78ab56e9bf Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Thu, 15 Nov 2012 12:57:59 +0100 Subject: [PATCH 1/5] [IMP] removing some warnings (those one are generated by tests). bzr revid: vmt@openerp.com-20121115115759-toz6g9jcephwxmin --- openerp/tests/test_orm.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/openerp/tests/test_orm.py b/openerp/tests/test_orm.py index c114064cd5f..1dde83d026c 100644 --- a/openerp/tests/test_orm.py +++ b/openerp/tests/test_orm.py @@ -109,6 +109,7 @@ class TestInherits(common.TransactionCase): self.assertEqual(foo.name, 'Foo') self.assertEqual(foo.partner_id.id, par_id) + @mute_logger('openerp.osv.orm') def test_read(self): """ inherited fields should be read without any indirection """ foo_id = self.user.create(self.cr, UID, {'name': 'Foo', 'login': 'foo', 'password': 'foo'}) @@ -120,6 +121,7 @@ class TestInherits(common.TransactionCase): foo = self.user.browse(self.cr, UID, foo_id) self.assertEqual(foo.name, foo.partner_id.name) + @mute_logger('openerp.osv.orm') def test_copy(self): """ copying a user should automatically copy its partner, too """ foo_id = self.user.create(self.cr, UID, {'name': 'Foo', 'login': 'foo', 'password': 'foo'}) @@ -134,6 +136,7 @@ class TestInherits(common.TransactionCase): self.assertNotEqual(foo.id, bar.id) self.assertNotEqual(foo.partner_id.id, bar.partner_id.id) + @mute_logger('openerp.osv.orm') def test_copy_with_ancestor(self): """ copying a user with 'parent_id' in defaults should not duplicate the partner """ foo_id = self.user.create(self.cr, UID, {'name': 'Foo', 'login': 'foo', 'password': 'foo'}) From 147fae832aeb481d00dbb2ae62553bcaecc6e706 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Thu, 15 Nov 2012 13:39:37 +0100 Subject: [PATCH 2/5] [FIX] test_db_cursor: explicitely close the cursor (without relying on __del__). bzr revid: vmt@openerp.com-20121115123937-keq4eb2a3n85x0rv --- openerp/tests/test_db_cursor.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/openerp/tests/test_db_cursor.py b/openerp/tests/test_db_cursor.py index e9737547619..dba1cf47b64 100644 --- a/openerp/tests/test_db_cursor.py +++ b/openerp/tests/test_db_cursor.py @@ -9,8 +9,8 @@ import common DB = common.DB ADMIN_USER_ID = common.ADMIN_USER_ID -def cursor(): - return openerp.modules.registry.RegistryManager.get(DB).db.cursor() +def registry(): + return openerp.modules.registry.RegistryManager.get(DB) class test_cr_execute(unittest2.TestCase): @@ -21,12 +21,12 @@ class test_cr_execute(unittest2.TestCase): """ Try to use iterable but non-list or int params in query parameters. """ - cr = cursor() - with self.assertRaises(ValueError): - cr.execute("SELECT id FROM res_users WHERE login=%s", 'admin') - with self.assertRaises(ValueError): - cr.execute("SELECT id FROM res_users WHERE id=%s", 1) - with self.assertRaises(ValueError): - cr.execute("SELECT id FROM res_users WHERE id=%s", '1') + with registry().cursor(auto_commit=False) as cr: + with self.assertRaises(ValueError): + cr.execute("SELECT id FROM res_users WHERE login=%s", 'admin') + with self.assertRaises(ValueError): + cr.execute("SELECT id FROM res_users WHERE id=%s", 1) + with self.assertRaises(ValueError): + cr.execute("SELECT id FROM res_users WHERE id=%s", '1') # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From 7c33378557d5078347170f78c490f304d4fe4ca2 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Thu, 15 Nov 2012 17:06:11 +0100 Subject: [PATCH 3/5] [IMP] loading: the warning about access rights give an example that can be copied. bzr revid: vmt@openerp.com-20121115160611-9dkyx82d94pve2rx --- openerp/modules/loading.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/openerp/modules/loading.py b/openerp/modules/loading.py index c3d73859730..bcda1690c91 100644 --- a/openerp/modules/loading.py +++ b/openerp/modules/loading.py @@ -348,7 +348,8 @@ def load_modules(db, force_demo=False, status=None, update_module=False): for (model, name) in cr.fetchall(): model_obj = pool.get(model) if model_obj and not model_obj.is_transient(): - _logger.warning('Model %s (%s) has no access rules!', model, name) + _logger.warning('The model %s has no access rules, consider adding one. E.g. access_%s,access_%s,model_%s,,1,1,1,1', + model, model.replace('.', '_'), model.replace('.', '_'), model.replace('.', '_')) # Temporary warning while we remove access rights on osv_memory objects, as they have # been replaced by owner-only access rights From 8846c8e67b3078d75374c55b847e545fe1b85a94 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Fri, 16 Nov 2012 11:05:05 +0100 Subject: [PATCH 4/5] [IMP] test_exceptions/test_impex: added access rules. bzr revid: vmt@openerp.com-20121116100505-9uakbl4klbkaz95k --- .../addons/test_exceptions/__openerp__.py | 2 +- .../test_exceptions/ir.model.access.csv | 2 ++ .../tests/addons/test_impex/__openerp__.py | 2 +- .../addons/test_impex/ir.model.access.csv | 25 +++++++++++++++++++ 4 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 openerp/tests/addons/test_exceptions/ir.model.access.csv create mode 100644 openerp/tests/addons/test_impex/ir.model.access.csv diff --git a/openerp/tests/addons/test_exceptions/__openerp__.py b/openerp/tests/addons/test_exceptions/__openerp__.py index 183f8877577..fc104f13a12 100644 --- a/openerp/tests/addons/test_exceptions/__openerp__.py +++ b/openerp/tests/addons/test_exceptions/__openerp__.py @@ -8,7 +8,7 @@ 'maintainer': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['base'], - 'data': ['view.xml'], + 'data': ['view.xml', 'ir.model.access.csv'], 'installable': True, 'auto_install': False, } diff --git a/openerp/tests/addons/test_exceptions/ir.model.access.csv b/openerp/tests/addons/test_exceptions/ir.model.access.csv new file mode 100644 index 00000000000..56f99efd729 --- /dev/null +++ b/openerp/tests/addons/test_exceptions/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +access_test_exceptions_model,access_test_exceptions_model,model_test_exceptions_model,,1,1,1,1 diff --git a/openerp/tests/addons/test_impex/__openerp__.py b/openerp/tests/addons/test_impex/__openerp__.py index f3b5511dc30..2b52b6ad5fa 100644 --- a/openerp/tests/addons/test_impex/__openerp__.py +++ b/openerp/tests/addons/test_impex/__openerp__.py @@ -8,7 +8,7 @@ 'maintainer': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['base'], - 'data': [], + 'data': ['ir.model.access.csv'], 'installable': True, 'auto_install': False, } diff --git a/openerp/tests/addons/test_impex/ir.model.access.csv b/openerp/tests/addons/test_impex/ir.model.access.csv new file mode 100644 index 00000000000..9a674d9ee1f --- /dev/null +++ b/openerp/tests/addons/test_impex/ir.model.access.csv @@ -0,0 +1,25 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +access_export_boolean,access_export_boolean,model_export_boolean,,1,1,1,1 +access_export_integer,access_export_integer,model_export_integer,,1,1,1,1 +access_export_float,access_export_float,model_export_float,,1,1,1,1 +access_export_decimal,access_export_decimal,model_export_decimal,,1,1,1,1 +access_export_string_bounded,access_export_string_bounded,model_export_string_bounded,,1,1,1,1 +access_export_string_required,access_export_string_required,model_export_string_required,,1,1,1,1 +access_export_string,access_export_string,model_export_string,,1,1,1,1 +access_export_date,access_export_date,model_export_date,,1,1,1,1 +access_export_datetime,access_export_datetime,model_export_datetime,,1,1,1,1 +access_export_text,access_export_text,model_export_text,,1,1,1,1 +access_export_selection,access_export_selection,model_export_selection,,1,1,1,1 +access_export_selection_function,access_export_selection_function,model_export_selection_function,,1,1,1,1 +access_export_many2one,access_export_many2one,model_export_many2one,,1,1,1,1 +access_export_one2many,access_export_one2many,model_export_one2many,,1,1,1,1 +access_export_many2many,access_export_many2many,model_export_many2many,,1,1,1,1 +access_export_function,access_export_function,model_export_function,,1,1,1,1 +access_export_one2many_child,access_export_one2many_child,model_export_one2many_child,,1,1,1,1 +access_export_one2many_multiple,access_export_one2many_multiple,model_export_one2many_multiple,,1,1,1,1 +access_export_one2many_multiple_child,access_export_one2many_multiple_child,model_export_one2many_multiple_child,,1,1,1,1 +access_export_one2many_child_1,access_export_one2many_child_1,model_export_one2many_child_1,,1,1,1,1 +access_export_one2many_child_2,access_export_one2many_child_2,model_export_one2many_child_2,,1,1,1,1 +access_export_many2many_other,access_export_many2many_other,model_export_many2many_other,,1,1,1,1 +access_export_selection_withdefault,access_export_selection_withdefault,model_export_selection_withdefault,,1,1,1,1 +access_export_one2many_recursive,access_export_one2many_recursive,model_export_one2many_recursive,,1,1,1,1 From 35ec3e6d5b6086f465b084f0fa7c29ba09541892 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Fri, 16 Nov 2012 14:14:39 +0100 Subject: [PATCH 5/5] [IMP] test_limits/test_uninstall: added access rules. bzr revid: vmt@openerp.com-20121116131439-y14dekyogidxymof --- openerp/tests/addons/test_limits/__openerp__.py | 2 +- openerp/tests/addons/test_limits/ir.model.access.csv | 2 ++ openerp/tests/addons/test_uninstall/__openerp__.py | 2 +- openerp/tests/addons/test_uninstall/ir.model.access.csv | 2 ++ 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 openerp/tests/addons/test_limits/ir.model.access.csv create mode 100644 openerp/tests/addons/test_uninstall/ir.model.access.csv diff --git a/openerp/tests/addons/test_limits/__openerp__.py b/openerp/tests/addons/test_limits/__openerp__.py index 05b70919a2a..59972e60e36 100644 --- a/openerp/tests/addons/test_limits/__openerp__.py +++ b/openerp/tests/addons/test_limits/__openerp__.py @@ -8,7 +8,7 @@ 'maintainer': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['base'], - 'data': [], + 'data': ['ir.model.access.csv'], 'installable': True, 'auto_install': False, } diff --git a/openerp/tests/addons/test_limits/ir.model.access.csv b/openerp/tests/addons/test_limits/ir.model.access.csv new file mode 100644 index 00000000000..02f18639a73 --- /dev/null +++ b/openerp/tests/addons/test_limits/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +access_test_limits_model,access_test_limits_model,model_test_limits_model,,1,1,1,1 diff --git a/openerp/tests/addons/test_uninstall/__openerp__.py b/openerp/tests/addons/test_uninstall/__openerp__.py index d8776897df0..0015d5a52d4 100644 --- a/openerp/tests/addons/test_uninstall/__openerp__.py +++ b/openerp/tests/addons/test_uninstall/__openerp__.py @@ -8,7 +8,7 @@ 'maintainer': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['base'], - 'data': [], + 'data': ['ir.model.access.csv'], 'installable': True, 'auto_install': False, } diff --git a/openerp/tests/addons/test_uninstall/ir.model.access.csv b/openerp/tests/addons/test_uninstall/ir.model.access.csv new file mode 100644 index 00000000000..f5b5b1f8f4d --- /dev/null +++ b/openerp/tests/addons/test_uninstall/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +access_test_uninstall_model,access_test_uninstall_model,model_test_uninstall_model,,1,1,1,1