mirror of
https://github.com/zulip/zulip.git
synced 2026-06-24 21:08:25 +08:00
test_classes: Clean up API for unsubscribing.
The old API required test authors to unnecessarily repeat themselves.
This commit is contained in:
parent
eb720485c5
commit
5fa7c3e0b2
@ -506,10 +506,9 @@ class ZulipTestCase(TestCase):
|
||||
bulk_add_subscriptions([stream], [user_profile], from_stream_creation=from_stream_creation)
|
||||
return stream
|
||||
|
||||
def unsubscribe_from_stream(self, email, stream_name, realm):
|
||||
# type: (Text, Text, Realm) -> None
|
||||
user_profile = get_user(email, realm)
|
||||
stream = get_stream(stream_name, realm)
|
||||
def unsubscribe(self, user_profile, stream_name):
|
||||
# type: (UserProfile, Text) -> None
|
||||
stream = get_stream(stream_name, user_profile.realm)
|
||||
bulk_remove_subscriptions([user_profile], [stream])
|
||||
|
||||
# Subscribe to a stream by making an API request
|
||||
|
||||
@ -301,7 +301,7 @@ class BotTest(ZulipTestCase, UploadSerializeMixin):
|
||||
self.login(self.example_email('hamlet'))
|
||||
realm = self.example_user('hamlet').realm
|
||||
stream = get_stream("Denmark", realm)
|
||||
self.unsubscribe_from_stream(self.example_email('hamlet'), "Denmark", realm)
|
||||
self.unsubscribe(self.example_user('hamlet'), "Denmark")
|
||||
do_change_stream_invite_only(stream, True)
|
||||
|
||||
bot_info = {
|
||||
@ -371,7 +371,7 @@ class BotTest(ZulipTestCase, UploadSerializeMixin):
|
||||
self.login(self.example_email('hamlet'))
|
||||
realm = self.example_user('hamlet').realm
|
||||
stream = get_stream("Denmark", realm)
|
||||
self.unsubscribe_from_stream(self.example_email('hamlet'), "Denmark", realm)
|
||||
self.unsubscribe(self.example_user('hamlet'), "Denmark")
|
||||
do_change_stream_invite_only(stream, True)
|
||||
|
||||
self.assert_num_bots_equal(0)
|
||||
@ -708,7 +708,7 @@ class BotTest(ZulipTestCase, UploadSerializeMixin):
|
||||
self.login(self.example_email('hamlet'))
|
||||
realm = self.example_user('hamlet').realm
|
||||
stream = get_stream("Denmark", realm)
|
||||
self.unsubscribe_from_stream(self.example_email('hamlet'), "Denmark", realm)
|
||||
self.unsubscribe(self.example_user('hamlet'), "Denmark")
|
||||
do_change_stream_invite_only(stream, True)
|
||||
|
||||
bot_info = {
|
||||
@ -788,7 +788,7 @@ class BotTest(ZulipTestCase, UploadSerializeMixin):
|
||||
self.login(self.example_email('hamlet'))
|
||||
realm = self.example_user('hamlet').realm
|
||||
stream = get_stream("Denmark", realm)
|
||||
self.unsubscribe_from_stream(self.example_email('hamlet'), "Denmark", realm)
|
||||
self.unsubscribe(self.example_user('hamlet'), "Denmark")
|
||||
do_change_stream_invite_only(stream, True)
|
||||
|
||||
bot_info = {
|
||||
|
||||
@ -2250,7 +2250,7 @@ class SoftDeactivationMessageTest(ZulipTestCase):
|
||||
sent_message_list = []
|
||||
sent_message_list.append(send_fake_message('Test Message 3', stream))
|
||||
# Alter subscription to stream.
|
||||
self.unsubscribe_from_stream(long_term_idle_user.email, stream_name, realm)
|
||||
self.unsubscribe(long_term_idle_user, stream_name)
|
||||
send_fake_message('Test Message 4', stream)
|
||||
self.subscribe(long_term_idle_user, stream_name)
|
||||
sent_message_list.append(send_fake_message('Test Message 5', stream))
|
||||
@ -2272,17 +2272,17 @@ class SoftDeactivationMessageTest(ZulipTestCase):
|
||||
|
||||
sent_message_list.append(send_fake_message('Test Message 6', stream))
|
||||
# Unsubscribe from stream and then immediately subscribe back again.
|
||||
self.unsubscribe_from_stream(long_term_idle_user.email, stream_name, realm)
|
||||
self.unsubscribe(long_term_idle_user, stream_name)
|
||||
self.subscribe(long_term_idle_user, stream_name)
|
||||
sent_message_list.append(send_fake_message('Test Message 7', stream))
|
||||
# Again unsubscribe from stream and send a message.
|
||||
# This will make sure that if initially in a unsubscribed state
|
||||
# a consecutive subscribe/unsubscribe doesn't misbehave.
|
||||
self.unsubscribe_from_stream(long_term_idle_user.email, stream_name, realm)
|
||||
self.unsubscribe(long_term_idle_user, stream_name)
|
||||
send_fake_message('Test Message 8', stream)
|
||||
# Do a subscribe and unsubscribe immediately.
|
||||
self.subscribe(long_term_idle_user, stream_name)
|
||||
self.unsubscribe_from_stream(long_term_idle_user.email, stream_name, realm)
|
||||
self.unsubscribe(long_term_idle_user, stream_name)
|
||||
|
||||
sent_message_list.reverse()
|
||||
idle_user_msg_list = get_user_messages(long_term_idle_user)
|
||||
@ -2307,7 +2307,7 @@ class SoftDeactivationMessageTest(ZulipTestCase):
|
||||
send_fake_message('Test Message 9', private_stream)
|
||||
self.subscribe(self.example_user("hamlet"), stream_name)
|
||||
sent_message_list.append(send_fake_message('Test Message 10', private_stream))
|
||||
self.unsubscribe_from_stream(long_term_idle_user.email, stream_name, realm)
|
||||
self.unsubscribe(long_term_idle_user, stream_name)
|
||||
send_fake_message('Test Message 11', private_stream)
|
||||
self.subscribe(long_term_idle_user, stream_name)
|
||||
sent_message_list.append(send_fake_message('Test Message 12', private_stream))
|
||||
|
||||
@ -221,11 +221,10 @@ class StreamAdminTest(ZulipTestCase):
|
||||
def test_vacate_private_stream_removes_default_stream(self):
|
||||
# type: () -> None
|
||||
stream = self.make_stream('new_stream', invite_only=True)
|
||||
realm = self.example_user("hamlet").realm
|
||||
self.subscribe(self.example_user("hamlet"), stream.name)
|
||||
do_add_default_stream(stream)
|
||||
self.assertEqual(1, DefaultStream.objects.filter(stream=stream).count())
|
||||
self.unsubscribe_from_stream(self.example_email("hamlet"), stream.name, realm)
|
||||
self.unsubscribe(self.example_user("hamlet"), stream.name)
|
||||
self.assertEqual(0, DefaultStream.objects.filter(stream=stream).count())
|
||||
# Fetch stream again from database.
|
||||
stream = Stream.objects.get(id=stream.id)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user