Skip to content

Commit 49252f7

Browse files
authored
Merge pull request #399 from maykinmedia/issue/967-message-problems
[#967] Fixed inbox to handle zero messages or contacts, added tests
2 parents b2f2167 + 105a77b commit 49252f7

File tree

2 files changed

+25
-3
lines changed

2 files changed

+25
-3
lines changed

src/open_inwoner/accounts/tests/test_inbox_page.py

+17
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,23 @@ def test_reply_message(self):
158158
self.assertEqual(last_message.sender, self.contact1)
159159
self.assertEqual(last_message.receiver, self.user)
160160

161+
def test_no_messages(self):
162+
Message.objects.all().delete()
163+
164+
response = self.app.get(self.url, auto_follow=True)
165+
self.assertEqual(response.status_code, 200)
166+
# no form
167+
self.assertFalse(response.pyquery("form#message-form"))
168+
169+
def test_no_contacts(self):
170+
self.contact1.delete()
171+
self.contact2.delete()
172+
173+
response = self.app.get(self.url, auto_follow=True)
174+
self.assertEqual(response.status_code, 200)
175+
# no form
176+
self.assertFalse(response.pyquery("form#message-form"))
177+
161178

162179
class BaseInboxPageSeleniumTests:
163180
options = None

src/open_inwoner/accounts/views/inbox.py

+8-3
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,18 @@ def get_context_data(self, **kwargs):
4040
messages = self.get_messages(other_user)
4141
status = self.get_status(messages)
4242

43+
if other_user:
44+
conversation_url = reverse(
45+
"accounts:inbox", kwargs={self.slug_field: other_user.uuid}
46+
)
47+
else:
48+
conversation_url = ""
49+
4350
context.update(
4451
{
4552
"conversations": conversations,
4653
"conversation_messages": messages,
47-
"conversation_url": reverse(
48-
"accounts:inbox", kwargs={self.slug_field: other_user.uuid}
49-
),
54+
"conversation_url": conversation_url,
5055
"other_user": other_user,
5156
"status": status,
5257
}

0 commit comments

Comments
 (0)