[FIX] mail: backport of rev 752a07c to 8.0
[FIX] res.partner.find_or_create() should match using =like Otherwise john@connor.com may match sarah.john@connor.com
This commit is contained in:
parent
fc58529616
commit
6490c62e5d
|
@ -192,9 +192,9 @@ class test_message_compose(TestMail):
|
|||
email_template.write(cr, uid, [email_template_id], {
|
||||
'model_id': user_model_id,
|
||||
'body_html': '${object.login}',
|
||||
'email_to': '${object.email}, c@c',
|
||||
'email_to': '${object.email}, c@c.c',
|
||||
'partner_to': '%i,%i' % (p_b_id, p_c_id),
|
||||
'email_cc': 'd@d',
|
||||
'email_cc': 'd@d.d',
|
||||
})
|
||||
# patner by email + partner by id (no double)
|
||||
send_to = [p_a_id, p_b_id, p_c_id, p_d_id]
|
||||
|
|
|
@ -708,7 +708,7 @@ class res_partner(osv.Model, format_address):
|
|||
emails = tools.email_split(email)
|
||||
if emails:
|
||||
email = emails[0]
|
||||
ids = self.search(cr, uid, [('email','ilike',email)], context=context)
|
||||
ids = self.search(cr, uid, [('email','=ilike',email)], context=context)
|
||||
if not ids:
|
||||
return self.name_create(cr, uid, email, context=context)[0]
|
||||
return ids[0]
|
||||
|
|
|
@ -36,6 +36,9 @@ class test_base(common.TransactionCase):
|
|||
partner_id, dummy = self.res_partner.name_create(cr, uid, email)
|
||||
found_id = self.res_partner.find_or_create(cr, uid, email)
|
||||
self.assertEqual(partner_id, found_id, 'find_or_create failed')
|
||||
partner_id2, dummy2 = self.res_partner.name_create(cr, uid, 'sarah.john@connor.com')
|
||||
found_id2 = self.res_partner.find_or_create(cr, uid, 'john@connor.com')
|
||||
self.assertNotEqual(partner_id2, found_id2, 'john@connor.com match sarah.john@connor.com')
|
||||
new_id = self.res_partner.find_or_create(cr, uid, self.samples[1][0])
|
||||
self.assertTrue(new_id > partner_id, 'find_or_create failed - should have created new one')
|
||||
new_id2 = self.res_partner.find_or_create(cr, uid, self.samples[2][0])
|
||||
|
|
Loading…
Reference in New Issue