[#7718] send email addr instead of EmailAddress _id into sendsimplemail
diff --git a/Allura/allura/model/auth.py b/Allura/allura/model/auth.py
index 7f99866..752266e 100644
--- a/Allura/allura/model/auth.py
+++ b/Allura/allura/model/auth.py
@@ -157,8 +157,8 @@
allura.tasks.mail_tasks.sendsimplemail.post(
fromaddr=g.noreply,
reply_to=g.noreply,
- toaddr=self._id,
- subject='%s - Email address verification' % config['site_name'],
+ toaddr=self.email,
+ subject=u'%s - Email address verification' % config['site_name'],
message_id=h.gen_message_id(),
text=text)
diff --git a/Allura/allura/tests/model/test_auth.py b/Allura/allura/tests/model/test_auth.py
index 75cf5a2..3d6b69e 100644
--- a/Allura/allura/tests/model/test_auth.py
+++ b/Allura/allura/tests/model/test_auth.py
@@ -65,12 +65,25 @@
assert addr2
addr4 = M.EmailAddress.create('test@DOMAIN.NET')
assert addr4 is not addr2
- with patch('allura.lib.app_globals.request', Request.blank('/')):
- addr.send_verification_link()
+
assert addr is c.user.address_object('test_admin@domain.net')
c.user.claim_address('test@DOMAIN.NET')
assert 'test@domain.net' in c.user.email_addresses
+
+@with_setup(setUp)
+def test_email_address_send_verification_link():
+ addr = M.EmailAddress(email='test_admin@domain.net',
+ claimed_by_user_id=c.user._id)
+
+ addr.send_verification_link()
+
+ with patch('allura.tasks.mail_tasks.smtp_client._client') as _client:
+ M.MonQTask.run_ready()
+ return_path, rcpts, body = _client.sendmail.call_args[0]
+ assert_equal(rcpts, ['test_admin@domain.net'])
+
+
@td.with_user_project('test-admin')
@with_setup(setUp)
def test_user():