mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
* In most cases, eslint --fix with the right comma-dangle settings was able to update the code correctly. * The exceptions were cases where the parser incorrectly treated the arguments to functions like `assert_equal` as arguments; we fixed these manually. Since this is test code, we can be reasonably confident that just fixing the failures suffices to correct any bugs introduced by making changes automatically.
68 lines
1.9 KiB
JavaScript
68 lines
1.9 KiB
JavaScript
set_global('page_params', {
|
|
domain: 'zulip.com',
|
|
});
|
|
add_dependencies({
|
|
unread: 'js/unread.js',
|
|
});
|
|
|
|
var muting = require('js/muting.js');
|
|
|
|
(function test_edge_cases() {
|
|
// private messages
|
|
assert(!muting.is_topic_muted(undefined, undefined));
|
|
|
|
// defensive
|
|
assert(!muting.is_topic_muted('nonexistent', undefined));
|
|
}());
|
|
|
|
(function test_basics() {
|
|
assert(!muting.is_topic_muted('devel', 'java'));
|
|
muting.mute_topic('devel', 'java');
|
|
assert(muting.is_topic_muted('devel', 'java'));
|
|
|
|
// test idempotentcy
|
|
muting.mute_topic('devel', 'java');
|
|
assert(muting.is_topic_muted('devel', 'java'));
|
|
|
|
muting.unmute_topic('devel', 'java');
|
|
assert(!muting.is_topic_muted('devel', 'java'));
|
|
|
|
// test idempotentcy
|
|
muting.unmute_topic('devel', 'java');
|
|
assert(!muting.is_topic_muted('devel', 'java'));
|
|
|
|
// test unknown stream is harmless too
|
|
muting.unmute_topic('unknown', 'java');
|
|
assert(!muting.is_topic_muted('unknown', 'java'));
|
|
}());
|
|
|
|
(function test_get_and_set_muted_topics() {
|
|
assert.deepEqual(muting.get_muted_topics(), []);
|
|
muting.mute_topic('office', 'gossip');
|
|
muting.mute_topic('devel', 'java');
|
|
assert.deepEqual(muting.get_muted_topics().sort(), [
|
|
['devel', 'java'],
|
|
['office', 'gossip'],
|
|
]);
|
|
|
|
muting.set_muted_topics([
|
|
['social', 'breakfast'],
|
|
['design', 'typography'],
|
|
]);
|
|
assert.deepEqual(muting.get_muted_topics().sort(), [
|
|
['design', 'typography'],
|
|
['social', 'breakfast'],
|
|
]);
|
|
}());
|
|
|
|
(function test_case_insensitivity() {
|
|
muting.set_muted_topics([]);
|
|
assert(!muting.is_topic_muted('SOCial', 'breakfast'));
|
|
muting.set_muted_topics([
|
|
['SOCial', 'breakfast'],
|
|
]);
|
|
assert(muting.is_topic_muted('SOCial', 'breakfast'));
|
|
assert(muting.is_topic_muted('social', 'breakfast'));
|
|
assert(muting.is_topic_muted('social', 'breakFAST'));
|
|
}());
|