def get_posting_form(formclass, request, mlist, data=None):
    form = formclass(data, initial={
        "sender": get_sender(request, mlist)})
    if request.user.is_authenticated:
        form.fields['sender'].choices = [
            (a, a) for a in request.user.hyperkitty_profile.addresses]
    return form
 def test_get_sender_is_string(self):
     # The get_sender function must always return a string
     from mailmanclient.restobjects.address import Address
     self.mm_user.addresses = [
         Address(None, None, dict(email="*****@*****.**")),
     ]
     self.mm_user.subscriptions = [
         FakeMMMember(self.mlist.list_id, self.mm_user.addresses[0]),
     ]
     addr = posting.get_sender(self.request, self.mlist)
     self.assertTrue(isinstance(addr, str))
 def test_sender_subscribed(self):
     self.mm_user.subscriptions = [
         FakeMMMember(self.mlist.list_id, "*****@*****.**"),
     ]
     self.assertEqual(posting.get_sender(self.request, self.mlist),
                      "*****@*****.**")
 def test_sender_not_subscribed(self):
     self.assertEqual(posting.get_sender(self.request, self.mlist),
                      "*****@*****.**")
 def test_sender_not_subscribed(self):
     self.assertEqual(posting.get_sender(self.request, self.mlist),
                      "*****@*****.**")
 def test_sender_subscribed(self):
     self.mm_user.subscriptions = [
         FakeMMMember(self.mlist.list_id, "*****@*****.**"),
     ]
     self.assertEqual(posting.get_sender(self.request, self.mlist),
                      "*****@*****.**")
 def test_sender_with_display_name(self):
     self.user.first_name = "Test"
     self.user.last_name = "User"
     self.assertEqual(posting.get_sender(self.request, self.mlist),
                      '"Test User" <*****@*****.**>')
 def test_sender_with_display_name(self):
     self.user.first_name = "Test"
     self.user.last_name = "User"
     self.assertEqual(posting.get_sender(self.request, self.mlist), '"Test User" <*****@*****.**>')
def get_posting_form(formclass, request, mlist, data=None):
    form = formclass(data, initial={"sender": get_sender(request, mlist)})
    if request.user.is_authenticated():
        form.fields["sender"].choices = [(a, a) for a in request.user.hyperkitty_profile.addresses]
    return form