From 6b615dba9e8006491eeff8fc06a995e2980b2973 Mon Sep 17 00:00:00 2001 From: Oliver Falk Date: Fri, 25 May 2018 11:21:29 +0200 Subject: [PATCH] Catch if digest isn't there - WIP, since we do not send a default ATM --- ivatar/views.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ivatar/views.py b/ivatar/views.py index 3e43fa0..7ef9194 100644 --- a/ivatar/views.py +++ b/ivatar/views.py @@ -23,10 +23,16 @@ class AvatarImageView(TemplateView): elif len(kwargs['digest']) == 64: # Fetch by digest from OpenID model = ConfirmedOpenId - else: + else: # pragma: no cover + # We should actually never ever reach this code... raise Exception('Digest provided is wrong: %s' % kwargs['digest']) - obj = model.objects.get(digest=kwargs['digest']) + try: + obj = model.objects.get(digest=kwargs['digest']) + except model.DoesNotExist: + # TODO: Use default!? + raise Exception('Mail/openid ("%s") does not exist"' % + kwargs['digest']) if not obj.photo: # That is hacky, but achieves what we want :-) attr = getattr(obj, 'email', obj.openid)