mirror of https://github.com/zulip/zulip.git
import: Replace data-stream-id in rendered_content.
See the data-user-id commit for details.
This commit is contained in:
parent
cb5b3f347b
commit
ce1d6044db
|
@ -253,6 +253,15 @@ def fix_message_rendered_content(realm: Realm,
|
||||||
if old_user_id in user_id_map:
|
if old_user_id in user_id_map:
|
||||||
mention["data-user-id"] = str(user_id_map[old_user_id])
|
mention["data-user-id"] = str(user_id_map[old_user_id])
|
||||||
message['rendered_content'] = str(soup)
|
message['rendered_content'] = str(soup)
|
||||||
|
|
||||||
|
stream_mentions = soup.findAll("a", {"class": "stream"})
|
||||||
|
if len(stream_mentions) != 0:
|
||||||
|
stream_id_map = ID_MAP["stream"]
|
||||||
|
for mention in stream_mentions:
|
||||||
|
old_stream_id = int(mention["data-stream-id"])
|
||||||
|
if old_stream_id in stream_id_map:
|
||||||
|
mention["data-stream-id"] = str(stream_id_map[old_stream_id])
|
||||||
|
message['rendered_content'] = str(soup)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
message_object = FakeMessage()
|
message_object = FakeMessage()
|
||||||
|
|
|
@ -655,6 +655,9 @@ class ImportExportTest(ZulipTestCase):
|
||||||
user_mention_message = '@**King Hamlet** Hello'
|
user_mention_message = '@**King Hamlet** Hello'
|
||||||
self.send_stream_message(self.example_email("iago"), "Verona", user_mention_message)
|
self.send_stream_message(self.example_email("iago"), "Verona", user_mention_message)
|
||||||
|
|
||||||
|
stream_mention_message = 'Subscribe to #**Denmark**'
|
||||||
|
self.send_stream_message(self.example_email("hamlet"), "Verona", stream_mention_message)
|
||||||
|
|
||||||
# data to test import of hotspots
|
# data to test import of hotspots
|
||||||
sample_user = self.example_user('hamlet')
|
sample_user = self.example_user('hamlet')
|
||||||
|
|
||||||
|
@ -896,6 +899,14 @@ class ImportExportTest(ZulipTestCase):
|
||||||
|
|
||||||
assert_realm_values(get_user_mention)
|
assert_realm_values(get_user_mention)
|
||||||
|
|
||||||
|
def get_stream_mention(r: Realm) -> Set[Any]:
|
||||||
|
mentioned_stream = get_stream(u'Denmark', r)
|
||||||
|
data_stream_id = 'data-stream-id="{}"'.format(mentioned_stream.id)
|
||||||
|
mention_message = get_stream_messages(r).get(rendered_content__contains=data_stream_id)
|
||||||
|
return mention_message.content
|
||||||
|
|
||||||
|
assert_realm_values(get_stream_mention)
|
||||||
|
|
||||||
def test_import_files_from_local(self) -> None:
|
def test_import_files_from_local(self) -> None:
|
||||||
|
|
||||||
realm = Realm.objects.get(string_id='zulip')
|
realm = Realm.objects.get(string_id='zulip')
|
||||||
|
|
Loading…
Reference in New Issue