def test__mail__get_recipient_3(database, setUp): """It returns lastname and firstname of external recipient.""" from sw.allotmentclub import ExternalRecipient, Message, User from ..mail import get_recipient muster = ExternalRecipient.create(lastname="Muster", firstname="Max") Message.create(id=300, externals=[muster], user=User.get(1)) assert get_recipient(300) == "Muster, Max"
def __call__(self): result = super(HomeView, self).__call__() last = None timeline = [] for date, user_id, type_, msg in sw.allotmentclub.json_result( result['data']['data']): if timeline: last = timeline[-1] time = format_date(date) user = User.get(user_id) username = user.username if last and last['username'] == username and last['time'] == time: if msg == last['detail'][-1]: continue last['detail'].append(msg) else: item = { 'time': time, 'username': username, 'firstname': user.vorname, 'lastname': user.nachname, 'detail': [msg] } if username == 'system': item['fa_icon'] = 'fa-gear' else: item['gravatar_url'] = ( 'https://www.gravatar.com/avatar/%s' % ( hashlib.md5( user.email.encode('utf-8')).hexdigest())) timeline.append(item) result['data']['timeline'] = timeline return result
def test__mail__get_recipient_4(database, setUp): """It returns Mehrere Empfänger if multiple recipients.""" from sw.allotmentclub import ExternalRecipient, Message, User from ..mail import get_recipient muster = ExternalRecipient.create(lastname="Muster", firstname="Max") muster2 = ExternalRecipient.create(lastname="Mustermann", firstname="Max") Message.create(id=300, externals=[muster, muster2], user=User.get(1)) assert get_recipient(300) == "Mehrere Empfänger"
def test__mail__MailPreviewView_4(browser, setUp): """It renders attachments to the message.""" from sw.allotmentclub import Attachment, User import pkg_resources data = pkg_resources.resource_stream( 'sw.allotmentclub.browser.tests', 'test_protocol_print.pdf').read() Attachment.create(message_id=243, data=data, mimetype='application/pdf', user=User.get(1)) transaction.commit() browser.login() with mock.patch('sw.allotmentclub.browser.letter.datetime') as dt: dt.now.return_value = datetime(2016, 3, 25) browser.open('http://localhost/mail/243/preview') assertFileEqual(browser.contents, 'test_mail_preview_4.pdf')
def get_user(request): user_id = request.authenticated_userid if user_id: return User.get(user_id)