diff --git a/zerver/lib/test_helpers.py b/zerver/lib/test_helpers.py index 6371896215..1cb64c5910 100644 --- a/zerver/lib/test_helpers.py +++ b/zerver/lib/test_helpers.py @@ -365,3 +365,5 @@ class AuthedTestCase(TestCase): return msg + def get_last_message(self): + return Message.objects.latest('id') diff --git a/zerver/tests/test_hooks.py b/zerver/tests/test_hooks.py index 2fd78b5ece..f2b6f4ac43 100644 --- a/zerver/tests/test_hooks.py +++ b/zerver/tests/test_hooks.py @@ -718,7 +718,7 @@ class ZenDeskHookTests(AuthedTestCase): self.assert_json_success(result) # Check the correct message was sent - msg = Message.objects.filter().order_by('-id')[0] + msg = self.get_last_message() self.assertEqual(msg.sender.email, email) return msg @@ -750,7 +750,7 @@ class PagerDutyHookTests(AuthedTestCase): self.assert_json_success(result) # Check the correct message was sent - msg = Message.objects.filter().order_by('-id')[0] + msg = self.get_last_message() self.assertEqual(msg.sender.email, email) return msg @@ -857,7 +857,7 @@ class TravisHookTests(AuthedTestCase): stream_name=stream, content_type="application/x-www-form-urlencoded") - msg = Message.objects.filter().order_by('-id')[0] + msg = self.get_last_message() u'Author: josh_mandel\nBuild status: Passed :thumbsup:\nDetails: [changes](https://github.com/hl7-fhir/fhir-svn/compare/6dccb98bcfd9...6c457d366a31), [build log](https://travis-ci.org/hl7-fhir/fhir-svn/builds/92495257)' self.assertEqual(msg.subject, u"builds") self.assertEqual(msg.content, (u"Author: josh_mandel\nBuild status: Passed :thumbsup:\n" @@ -884,7 +884,7 @@ class PingdomHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"Service someurl.com changed its HTTP status from UP to DOWN.\nDescription: Non-recoverable failure in name resolution." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"Test check status.") self.assertEqual(msg.content, expected_message) @@ -896,7 +896,7 @@ class PingdomHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"Service smtp.someurl.com changed its SMTP status from UP to DOWN.\nDescription: Connection refused." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"SMTP check status.") self.assertEqual(msg.content, expected_message) @@ -908,7 +908,7 @@ class PingdomHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"Service imap.someurl.com changed its IMAP status from UP to DOWN.\nDescription: Invalid hostname, address or socket." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"IMAP check status.") self.assertEqual(msg.content, expected_message) @@ -920,13 +920,10 @@ class PingdomHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"Service imap.someurl.com changed its IMAP status from DOWN to UP." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"IMAP check status.") self.assertEqual(msg.content, expected_message) - def _get_recently_added_message(self): - return Message.objects.filter().order_by('-id')[0] - def _get_fixture_data(self, name): return ujson.dumps(ujson.loads(self.fixture_data('pingdom', name))) @@ -951,7 +948,7 @@ class YoHookTests(AuthedTestCase): body, content_type="application/x-www-form-urlencoded") - msg = Message.objects.filter().order_by('-id')[0] + msg = self.get_last_message() self.assertEqual(msg.content, (u"Yo from IAGO")) class TeamcityHookTests(AuthedTestCase): @@ -973,8 +970,7 @@ class TeamcityHookTests(AuthedTestCase): stream_name=stream, content_type="application/json") - msg = Message.objects.filter().order_by('-id')[0] - return msg + return self.get_last_message() def test_teamcity_success(self): msg = self.basic_test("success") @@ -1019,7 +1015,7 @@ class CodeshipHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"[Build](https://www.codeship.com/projects/10213/builds/973711) triggered by beanieboi on master branch started." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"codeship/docs") self.assertEqual(msg.content, expected_message) @@ -1031,7 +1027,7 @@ class CodeshipHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"[Build](https://www.codeship.com/projects/10213/builds/973711) triggered by beanieboi on master branch failed." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"codeship/docs") self.assertEqual(msg.content, expected_message) @@ -1043,7 +1039,7 @@ class CodeshipHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"[Build](https://www.codeship.com/projects/10213/builds/973711) triggered by beanieboi on master branch succeeded." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"codeship/docs") self.assertEqual(msg.content, expected_message) @@ -1055,13 +1051,10 @@ class CodeshipHookTests(AuthedTestCase): self._send_post_request_with_params(body) expected_message = u"[Build](https://www.codeship.com/projects/10213/builds/973711) triggered by beanieboi on master branch has some_other_status status." - msg = self._get_recently_added_message() + msg = self.get_last_message() self.assertEqual(msg.subject, u"codeship/docs") self.assertEqual(msg.content, expected_message) - def _get_recently_added_message(self): - return Message.objects.filter().order_by('-id')[0] - def _get_fixture_data(self, name): return ujson.dumps(ujson.loads(self.fixture_data('codeship', name))) diff --git a/zerver/tests/test_messages.py b/zerver/tests/test_messages.py index 848e9568e4..2c489864f2 100644 --- a/zerver/tests/test_messages.py +++ b/zerver/tests/test_messages.py @@ -614,7 +614,7 @@ class MessagePOSTTest(AuthedTestCase): "api-key": api_key}) self.assert_json_success(result) - sent_message = Message.objects.all().order_by('-id')[0] + sent_message = self.get_last_message() self.assertEqual(sent_message.content, "Test message no to") def test_message_to_nonexistent_stream(self): @@ -730,7 +730,7 @@ class MessagePOSTTest(AuthedTestCase): result = self.client.post("/json/messages", post_data) self.assert_json_success(result) - sent_message = Message.objects.all().order_by('-id')[0] + sent_message = self.get_last_message() self.assertEquals(sent_message.content, "A" * (MAX_MESSAGE_LENGTH - 3) + "...") @@ -746,7 +746,7 @@ class MessagePOSTTest(AuthedTestCase): result = self.client.post("/json/messages", post_data) self.assert_json_success(result) - sent_message = Message.objects.all().order_by('-id')[0] + sent_message = self.get_last_message() self.assertEquals(sent_message.subject, "A" * (MAX_SUBJECT_LENGTH - 3) + "...") @@ -1084,7 +1084,7 @@ class GetOldMessagesTest(AuthedTestCase): def test_message_without_rendered_content(self): """Older messages may not have rendered_content in the database""" - m = Message.objects.all().order_by('-id')[0] + m = self.get_last_message() m.rendered_content = m.rendered_content_version = None m.content = 'test content' # Use to_dict_uncached directly to avoid having to deal with remote cache diff --git a/zerver/tests/test_subs.py b/zerver/tests/test_subs.py index 852c189f89..e1ca49a672 100644 --- a/zerver/tests/test_subs.py +++ b/zerver/tests/test_subs.py @@ -741,7 +741,7 @@ class SubscriptionAPITest(AuthedTestCase): ) self.assert_json_success(result) - msg = Message.objects.latest('id') + msg = self.get_last_message() self.assertEqual(msg.recipient.type, Recipient.PERSONAL) self.assertEqual(msg.sender_id, get_user_profile_by_email('notification-bot@zulip.com').id) @@ -779,7 +779,7 @@ class SubscriptionAPITest(AuthedTestCase): ) self.assert_json_success(result) - msg = Message.objects.latest('id') + msg = self.get_last_message() self.assertEqual(msg.recipient.type, Recipient.STREAM) self.assertEqual(msg.sender_id, get_user_profile_by_email('notification-bot@zulip.com').id) @@ -812,7 +812,7 @@ class SubscriptionAPITest(AuthedTestCase): ) self.assert_json_success(result) - msg = Message.objects.latest('id') + msg = self.get_last_message() self.assertEqual(msg.sender_id, get_user_profile_by_email('notification-bot@zulip.com').id) expected_msg = "%s just created a new stream `%s`. " \ @@ -878,7 +878,7 @@ class SubscriptionAPITest(AuthedTestCase): {"principals": ujson.dumps([invitee])}, streams[:1], current_streams, invitee, streams_to_sub, invite_only=invite_only) # verify that the user was sent a message informing them about the subscription - msg = Message.objects.latest('id') + msg = self.get_last_message() self.assertEqual(msg.recipient.type, msg.recipient.PERSONAL) self.assertEqual(msg.sender_id, get_user_profile_by_email("notification-bot@zulip.com").id)