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_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