mirror of
https://github.com/zulip/zulip.git
synced 2025-11-04 22:13:26 +00:00
message_store.js: Increase coverage for add_message.
This commit is contained in:
@@ -5,12 +5,30 @@ add_dependencies({
|
|||||||
});
|
});
|
||||||
|
|
||||||
var noop = function () {};
|
var noop = function () {};
|
||||||
|
var with_overrides = global.with_overrides;
|
||||||
var people = global.people;
|
var people = global.people;
|
||||||
|
|
||||||
set_global('alert_words', {
|
set_global('alert_words', {
|
||||||
process_message: noop,
|
process_message: noop,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
set_global('stream_data' , {
|
||||||
|
process_message_for_recent_topics: noop,
|
||||||
|
});
|
||||||
|
|
||||||
|
set_global('recent_senders', {
|
||||||
|
process_message_for_senders: noop,
|
||||||
|
});
|
||||||
|
|
||||||
|
set_global('page_params', {
|
||||||
|
realm_allow_message_editing: true,
|
||||||
|
is_admin: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
set_global('blueslip', {
|
||||||
|
error: noop,
|
||||||
|
});
|
||||||
|
|
||||||
var me = {
|
var me = {
|
||||||
email: 'me@example.com',
|
email: 'me@example.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
@@ -67,6 +85,7 @@ var message_store = require('js/message_store.js');
|
|||||||
type: 'private',
|
type: 'private',
|
||||||
display_recipient: [me, bob, cindy],
|
display_recipient: [me, bob, cindy],
|
||||||
flags: ['has_alert_word'],
|
flags: ['has_alert_word'],
|
||||||
|
id: 2067,
|
||||||
};
|
};
|
||||||
message_store.add_message_metadata(message);
|
message_store.add_message_metadata(message);
|
||||||
|
|
||||||
@@ -76,4 +95,81 @@ var message_store = require('js/message_store.js');
|
|||||||
assert.equal(message.display_reply_to, 'Bob, Cindy');
|
assert.equal(message.display_reply_to, 'Bob, Cindy');
|
||||||
assert.equal(message.alerted, true);
|
assert.equal(message.alerted, true);
|
||||||
assert.equal(message.is_me_message, false);
|
assert.equal(message.is_me_message, false);
|
||||||
|
|
||||||
|
var retrieved_message = message_store.get(2067);
|
||||||
|
assert.equal(retrieved_message, message);
|
||||||
|
|
||||||
|
// access cached previous message, and test match subject/content
|
||||||
|
message = {
|
||||||
|
id: 2067,
|
||||||
|
match_subject: "subject foo",
|
||||||
|
match_content: "bar content",
|
||||||
|
};
|
||||||
|
message = message_store.add_message_metadata(message);
|
||||||
|
|
||||||
|
assert.equal(message.reply_to, 'bob@example.com,cindy@example.com');
|
||||||
|
assert.equal(message.to_user_ids, '103,104');
|
||||||
|
assert.equal(message.display_reply_to, 'Bob, Cindy');
|
||||||
|
assert.equal(message.match_subject, 'subject foo');
|
||||||
|
assert.equal(message.match_content, 'bar content');
|
||||||
|
|
||||||
|
message = {
|
||||||
|
sender_email: 'me@example.com',
|
||||||
|
sender_id: me.user_id,
|
||||||
|
type: 'stream',
|
||||||
|
display_recipient: [me, cindy],
|
||||||
|
stream: 'Zoolippy',
|
||||||
|
topic: 'cool thing',
|
||||||
|
subject: 'the_subject',
|
||||||
|
id: 2068,
|
||||||
|
};
|
||||||
|
|
||||||
|
// test stream properties
|
||||||
|
with_overrides(function (override) {
|
||||||
|
override('compose.empty_topic_placeholder', function () {
|
||||||
|
return 'the_subject';
|
||||||
|
});
|
||||||
|
global.with_stub(function (stub) {
|
||||||
|
set_global('composebox_typeahead', {add_topic: stub.f});
|
||||||
|
message_store.add_message_metadata(message);
|
||||||
|
var typeahead_added = stub.get_args('stream', 'subject');
|
||||||
|
assert.deepEqual(typeahead_added.stream, [me, cindy]);
|
||||||
|
assert.equal(message.subject, typeahead_added.subject);
|
||||||
|
});
|
||||||
|
|
||||||
|
assert.equal(message.always_visible_topic_edit, true);
|
||||||
|
assert.equal(message.on_hover_topic_edit, false);
|
||||||
|
assert.deepEqual(message.stream, [me, cindy]);
|
||||||
|
assert.equal(message.reply_to, 'me@example.com');
|
||||||
|
assert.deepEqual(message.flags, []);
|
||||||
|
assert.equal(message.alerted, false);
|
||||||
|
|
||||||
|
override('compose.empty_topic_placeholder', function () {
|
||||||
|
return 'not_the_subject';
|
||||||
|
});
|
||||||
|
|
||||||
|
message = {
|
||||||
|
sender_id: me.user_id,
|
||||||
|
type: 'stream',
|
||||||
|
id: 2069,
|
||||||
|
display_recipient: [me],
|
||||||
|
sender_email: 'me@example.org',
|
||||||
|
};
|
||||||
|
message_store.add_message_metadata(message);
|
||||||
|
|
||||||
|
assert.equal(message.always_visible_topic_edit, false);
|
||||||
|
assert.equal(message.on_hover_topic_edit, true);
|
||||||
|
});
|
||||||
|
|
||||||
|
page_params.realm_allow_message_editing = false;
|
||||||
|
message = {
|
||||||
|
sender_id: me.user_id,
|
||||||
|
type: 'stream',
|
||||||
|
id: 2070,
|
||||||
|
display_recipient: [me],
|
||||||
|
sender_email: 'me@example.org',
|
||||||
|
};
|
||||||
|
message_store.add_message_metadata(message);
|
||||||
|
assert.equal(message.always_visible_topic_edit, false);
|
||||||
|
assert.equal(message.on_hover_topic_edit, false);
|
||||||
}());
|
}());
|
||||||
|
|||||||
Reference in New Issue
Block a user