From 63de50d6f0897ca880fdef59dabb7e8a17a00ff2 Mon Sep 17 00:00:00 2001 From: Steve Howell Date: Mon, 23 Sep 2013 14:04:51 -0400 Subject: [PATCH] Add StreamMessagesTest.test_not_too_many_queries (imported from commit bc49d7a0f932aecb1be7cecd0f6c5a9c95b2767d) --- zerver/tests.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/zerver/tests.py b/zerver/tests.py index 2971df866a..36604f73a8 100644 --- a/zerver/tests.py +++ b/zerver/tests.py @@ -509,6 +509,30 @@ class StreamMessagesTest(AuthedTestCase): self.assertEqual(old_non_subscriber_messages, new_non_subscriber_messages) self.assertEqual(new_subscriber_messages, [elt + 1 for elt in old_subscriber_messages]) + def test_not_too_many_queries(self): + recipient_list = ['hamlet@zulip.com', 'iago@zulip.com', 'cordelia@zulip.com', 'othello@zulip.com'] + for email in recipient_list: + self.subscribe_to_stream(email, "Denmark") + + sender_email = 'hamlet@zulip.com' + sender = get_user_profile_by_email(sender_email) + message_type_name = "stream" + (sending_client, _) = Client.objects.get_or_create(name="test suite") + stream = 'Denmark' + subject = 'foo' + content = 'whatever' + realm = sender.realm + + def send_message(): + check_send_message(sender, sending_client, message_type_name, [stream], + subject, content, forwarder_user_profile=sender, realm=realm) + + send_message() # prime the caches + with queries_captured() as queries: + send_message() + + self.assertTrue(len(queries) <= 8) + def test_message_mentions(self): user_profile = get_user_profile_by_email("iago@zulip.com") self.subscribe_to_stream(user_profile.email, "Denmark")