dispatch tests: Add tests for removing starred flags.

This commit is contained in:
Steve Howell
2019-01-26 18:28:39 +00:00
committed by showell
parent f7cf759740
commit 1279249a09

View File

@@ -80,10 +80,6 @@ set_global('blueslip', {
}, },
}); });
set_global('starred_messages', {
add: noop,
});
// notify_server_message_read requires message_store and these dependencies. // notify_server_message_read requires message_store and these dependencies.
zrequire('unread'); zrequire('unread');
zrequire('topic_data'); zrequire('topic_data');
@@ -91,6 +87,7 @@ zrequire('stream_list');
zrequire('message_flags'); zrequire('message_flags');
zrequire('message_store'); zrequire('message_store');
zrequire('people'); zrequire('people');
zrequire('starred_messages');
zrequire('util'); zrequire('util');
zrequire('server_events_dispatch'); zrequire('server_events_dispatch');
@@ -618,13 +615,20 @@ var event_fixtures = {
messages: [999], messages: [999],
}, },
update_message_flags__starred: { update_message_flags__starred_add: {
type: 'update_message_flags', type: 'update_message_flags',
operation: 'add', operation: 'add',
flag: 'starred', flag: 'starred',
messages: [test_message.id], messages: [test_message.id],
}, },
update_message_flags__starred_remove: {
type: 'update_message_flags',
operation: 'remove',
flag: 'starred',
messages: [test_message.id],
},
delete_message: { delete_message: {
type: 'delete_message', type: 'delete_message',
message_id: 1337, message_id: 1337,
@@ -680,12 +684,17 @@ var event_fixtures = {
user_id: 55, user_id: 55,
away: true, away: true,
}, },
user_status__set_status_text: {
type: 'user_status',
user_id: test_user.user_id,
status_text: 'out to lunch',
},
}; };
function assert_same(actual, expected) { function assert_same(actual, expected) {
// This helper prevents us from getting false positives // This helper prevents us from getting false positives
// where actual and expected are both undefined. // where actual and expected are both undefined.
assert(expected); assert(expected !== undefined);
assert.deepEqual(actual, expected); assert.deepEqual(actual, expected);
} }
@@ -1381,7 +1390,10 @@ with_overrides(function (override) {
with_overrides(function (override) { with_overrides(function (override) {
// update_message_flags__starred // update_message_flags__starred
var event = event_fixtures.update_message_flags__starred;
override('starred_messages.rerender_ui', noop);
var event = event_fixtures.update_message_flags__starred_add;
global.with_stub(function (stub) { global.with_stub(function (stub) {
override('ui.update_starred_view', stub.f); override('ui.update_starred_view', stub.f);
dispatch(event); dispatch(event);
@@ -1391,6 +1403,17 @@ with_overrides(function (override) {
var msg = message_store.get(test_message.id); var msg = message_store.get(test_message.id);
assert.equal(msg.starred, true); assert.equal(msg.starred, true);
}); });
event = event_fixtures.update_message_flags__starred_remove;
global.with_stub(function (stub) {
override('ui.update_starred_view', stub.f);
dispatch(event);
var args = stub.get_args('message_id', 'new_value');
assert_same(args.message_id, test_message.id);
assert_same(args.new_value, false);
var msg = message_store.get(test_message.id);
assert.equal(msg.starred, false);
});
}); });
with_overrides(function (override) { with_overrides(function (override) {