From: Raphael Collet Date: Thu, 16 Oct 2014 10:32:23 +0000 (+0200) Subject: [IMP] test_new_api, test_inherit: improve code of tests X-Git-Tag: InsPy_8.0_01~3^2~5 X-Git-Url: http://git.inspyration.org/?a=commitdiff_plain;h=83b8e413ffdbfed34f123c5c907042ab75f38d28;p=odoo%2Fodoo.git [IMP] test_new_api, test_inherit: improve code of tests --- diff --git a/openerp/addons/test_inherit/tests/test_inherit.py b/openerp/addons/test_inherit/tests/test_inherit.py index 2b383ce..e9be815 100644 --- a/openerp/addons/test_inherit/tests/test_inherit.py +++ b/openerp/addons/test_inherit/tests/test_inherit.py @@ -10,10 +10,10 @@ class test_inherits(common.TransactionCase): # to verify the purpose of the inheritance computing of the class # in the openerp.osv.orm._build_model. mother = self.env['test.inherit.mother'] - daugther = self.env['test.inherit.daughter'] + daughter = self.env['test.inherit.daughter'] self.assertIn('field_in_mother', mother._fields) - self.assertIn('field_in_mother', daugther._fields) + self.assertIn('field_in_mother', daughter._fields) def test_field_extension(self): """ check the extension of a field in an inherited model """ @@ -27,10 +27,10 @@ class test_inherits(common.TransactionCase): self.assertEqual(mother.default_get(['name']), {'name': "Bar"}) self.assertEqual(mother._defaults.get('name'), "Bar") - # the field daugther.template_id should inherit + # the field daughter.template_id should inherit # model_name='test.inherit.mother', string='Template', required=True - daugther = self.env['test.inherit.daughter'] - field = daugther._fields['template_id'] + daughter = self.env['test.inherit.daughter'] + field = daughter._fields['template_id'] self.assertEqual(field.comodel_name, 'test.inherit.mother') self.assertEqual(field.string, "Template") self.assertTrue(field.required) diff --git a/openerp/addons/test_new_api/tests/test_onchange.py b/openerp/addons/test_new_api/tests/test_onchange.py index 6ebc45a..da28bdf 100644 --- a/openerp/addons/test_new_api/tests/test_onchange.py +++ b/openerp/addons/test_new_api/tests/test_onchange.py @@ -31,6 +31,7 @@ class TestOnChange(common.TransactionCase): self.assertEqual(field_onchange.get('body'), '1') self.assertEqual(field_onchange.get('discussion'), '1') + # changing 'discussion' should recompute 'name' values = { 'discussion': discussion.id, 'name': "[%s] %s" % ('', USER.name), @@ -40,9 +41,10 @@ class TestOnChange(common.TransactionCase): } self.env.invalidate_all() result = self.Message.onchange(values, 'discussion', field_onchange) - self.assertLessEqual(set(['name']), set(result['value'])) + self.assertIn('name', result['value']) self.assertEqual(result['value']['name'], "[%s] %s" % (discussion.name, USER.name)) + # changing 'body' should recompute 'size' values = { 'discussion': discussion.id, 'name': "[%s] %s" % (discussion.name, USER.name), @@ -52,9 +54,22 @@ class TestOnChange(common.TransactionCase): } self.env.invalidate_all() result = self.Message.onchange(values, 'body', field_onchange) - self.assertLessEqual(set(['size']), set(result['value'])) + self.assertIn('size', result['value']) self.assertEqual(result['value']['size'], len(BODY)) + # changing 'body' should not recompute 'name', even if 'discussion' and + # 'name' are not consistent with each other + values = { + 'discussion': discussion.id, + 'name': False, + 'body': BODY, + 'author': USER.id, + 'size': 0, + } + self.env.invalidate_all() + result = self.Message.onchange(values, 'body', field_onchange) + self.assertNotIn('name', result['value']) + def test_onchange_one2many(self): """ test the effect of onchange() on one2many fields """ BODY = "What a beautiful day!" @@ -87,7 +102,7 @@ class TestOnChange(common.TransactionCase): # } # self.env.invalidate_all() # result = self.Discussion.onchange(values, 'messages', field_onchange) - # self.assertLessEqual(set(['messages']), set(result['value'])) + # self.assertIn('messages', result['value']) # self.assertItemsEqual(result['value']['messages'], [ # (0, 0, { # 'name': "[%s] %s" % ("Foo", USER.name), @@ -121,7 +136,7 @@ class TestOnChange(common.TransactionCase): } self.env.invalidate_all() result = self.Discussion.onchange(values, 'name', field_onchange) - self.assertLessEqual(set(['messages']), set(result['value'])) + self.assertIn('messages', result['value']) self.assertItemsEqual(result['value']['messages'], [ (0, 0, { 'name': "[%s] %s" % ("Foo", USER.name), @@ -161,7 +176,7 @@ class TestOnChange(common.TransactionCase): self.env.invalidate_all() result = discussion.onchange(values, 'moderator', field_onchange) - self.assertLessEqual(set(['participants']), set(result['value'])) + self.assertIn('participants', result['value']) self.assertItemsEqual(result['value']['participants'], participants + [(4, demo.id)]) def test_onchange_one2many_value(self): @@ -184,4 +199,5 @@ class TestOnChange(common.TransactionCase): 'message_changes': 0, } result = discussion.onchange(values, 'messages', field_onchange) - self.assertEqual(result['value'].get('message_changes', 0), len(discussion.messages)) + self.assertIn('message_changes', result['value']) + self.assertEqual(result['value']['message_changes'], len(discussion.messages))