mirror of
https://github.com/zulip/zulip.git
synced 2025-11-05 06:23:38 +00:00
eslint: Update node tests to use new comma-dangle rules.
* 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.
This commit is contained in:
@@ -1,48 +1,48 @@
|
|||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
people_list: []
|
people_list: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js',
|
util: 'js/util.js',
|
||||||
people: 'js/people.js'
|
people: 'js/people.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('resize', {
|
set_global('resize', {
|
||||||
resize_page_components: function () {}
|
resize_page_components: function () {},
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('document', {
|
set_global('document', {
|
||||||
hasFocus: function () {
|
hasFocus: function () {
|
||||||
return true;
|
return true;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@zulip.com',
|
email: 'alice@zulip.com',
|
||||||
user_id: 1,
|
user_id: 1,
|
||||||
full_name: 'Alice Smith'
|
full_name: 'Alice Smith',
|
||||||
};
|
};
|
||||||
var fred = {
|
var fred = {
|
||||||
email: 'fred@zulip.com',
|
email: 'fred@zulip.com',
|
||||||
user_id: 2,
|
user_id: 2,
|
||||||
full_name: "Fred Flintstone"
|
full_name: "Fred Flintstone",
|
||||||
};
|
};
|
||||||
var jill = {
|
var jill = {
|
||||||
email: 'jill@zulip.com',
|
email: 'jill@zulip.com',
|
||||||
user_id: 3,
|
user_id: 3,
|
||||||
full_name: 'Jill Hill'
|
full_name: 'Jill Hill',
|
||||||
};
|
};
|
||||||
var mark = {
|
var mark = {
|
||||||
email: 'mark@zulip.com',
|
email: 'mark@zulip.com',
|
||||||
user_id: 4,
|
user_id: 4,
|
||||||
full_name: 'Marky Mark'
|
full_name: 'Marky Mark',
|
||||||
};
|
};
|
||||||
var norbert = {
|
var norbert = {
|
||||||
email: 'norbert@zulip.com',
|
email: 'norbert@zulip.com',
|
||||||
user_id: 5,
|
user_id: 5,
|
||||||
full_name: 'Norbert Oswald'
|
full_name: 'Norbert Oswald',
|
||||||
};
|
};
|
||||||
|
|
||||||
global.people.add(alice);
|
global.people.add(alice);
|
||||||
@@ -71,7 +71,7 @@ activity.update_huddles = function () {};
|
|||||||
assert.deepEqual(user_ids, [
|
assert.deepEqual(user_ids, [
|
||||||
fred.user_id,
|
fred.user_id,
|
||||||
jill.user_id,
|
jill.user_id,
|
||||||
alice.user_id
|
alice.user_id,
|
||||||
]);
|
]);
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -89,25 +89,25 @@ activity.update_huddles = function () {};
|
|||||||
{
|
{
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: huddle1,
|
reply_to: huddle1,
|
||||||
timestamp: timestamp1
|
timestamp: timestamp1,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'stream'
|
type: 'stream',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: 'ignore@zulip.com'
|
reply_to: 'ignore@zulip.com',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: huddle2,
|
reply_to: huddle2,
|
||||||
timestamp: timestamp2
|
timestamp: timestamp2,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: huddle2,
|
reply_to: huddle2,
|
||||||
timestamp: old_timestamp
|
timestamp: old_timestamp,
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
activity.process_loaded_messages(messages);
|
activity.process_loaded_messages(messages);
|
||||||
@@ -125,13 +125,11 @@ activity.update_huddles = function () {};
|
|||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
full_name('alice@zulip.com,jill@zulip.com'),
|
full_name('alice@zulip.com,jill@zulip.com'),
|
||||||
'Alice Smith, Jill Hill'
|
'Alice Smith, Jill Hill');
|
||||||
);
|
|
||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
full_name('alice@zulip.com,fred@zulip.com,jill@zulip.com'),
|
full_name('alice@zulip.com,fred@zulip.com,jill@zulip.com'),
|
||||||
'Alice Smith, Fred Flintstone, Jill Hill'
|
'Alice Smith, Fred Flintstone, Jill Hill');
|
||||||
);
|
|
||||||
}());
|
}());
|
||||||
|
|
||||||
(function test_short_huddle_name() {
|
(function test_short_huddle_name() {
|
||||||
@@ -142,28 +140,23 @@ activity.update_huddles = function () {};
|
|||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
short_name('alice@zulip.com'),
|
short_name('alice@zulip.com'),
|
||||||
'Alice Smith'
|
'Alice Smith');
|
||||||
);
|
|
||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
short_name('alice@zulip.com,jill@zulip.com'),
|
short_name('alice@zulip.com,jill@zulip.com'),
|
||||||
'Alice Smith, Jill Hill'
|
'Alice Smith, Jill Hill');
|
||||||
);
|
|
||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com'),
|
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com'),
|
||||||
'Alice Smith, Fred Flintstone, Jill Hill'
|
'Alice Smith, Fred Flintstone, Jill Hill');
|
||||||
);
|
|
||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com,mark@zulip.com'),
|
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com,mark@zulip.com'),
|
||||||
'Alice Smith, Fred Flintstone, Jill Hill, + 1 other'
|
'Alice Smith, Fred Flintstone, Jill Hill, + 1 other');
|
||||||
);
|
|
||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com,mark@zulip.com,norbert@zulip.com'),
|
short_name('alice@zulip.com,fred@zulip.com,jill@zulip.com,mark@zulip.com,norbert@zulip.com'),
|
||||||
'Alice Smith, Fred Flintstone, Jill Hill, + 2 others'
|
'Alice Smith, Fred Flintstone, Jill Hill, + 2 others');
|
||||||
);
|
|
||||||
|
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -179,8 +172,7 @@ activity.update_huddles = function () {};
|
|||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
activity.huddle_fraction_present(huddle, presence_list),
|
activity.huddle_fraction_present(huddle, presence_list),
|
||||||
'0.50'
|
'0.50');
|
||||||
);
|
|
||||||
}());
|
}());
|
||||||
|
|
||||||
|
|
||||||
@@ -189,57 +181,50 @@ activity.update_huddles = function () {};
|
|||||||
var presence = {
|
var presence = {
|
||||||
website: {
|
website: {
|
||||||
status: "active",
|
status: "active",
|
||||||
timestamp: base_time
|
timestamp: base_time,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
var status = activity._status_from_timestamp(
|
var status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, false);
|
assert.equal(status.mobile, false);
|
||||||
|
|
||||||
presence.Android = {
|
presence.Android = {
|
||||||
status: "active",
|
status: "active",
|
||||||
timestamp: base_time + activity._OFFLINE_THRESHOLD_SECS / 2,
|
timestamp: base_time + activity._OFFLINE_THRESHOLD_SECS / 2,
|
||||||
pushable: false
|
pushable: false,
|
||||||
};
|
};
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, true);
|
assert.equal(status.mobile, true);
|
||||||
assert.equal(status.status, "active");
|
assert.equal(status.status, "active");
|
||||||
|
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, false);
|
assert.equal(status.mobile, false);
|
||||||
assert.equal(status.status, "active");
|
assert.equal(status.status, "active");
|
||||||
|
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS * 2, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS * 2, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, false);
|
assert.equal(status.mobile, false);
|
||||||
assert.equal(status.status, "offline");
|
assert.equal(status.status, "offline");
|
||||||
|
|
||||||
presence.Android = {
|
presence.Android = {
|
||||||
status: "idle",
|
status: "idle",
|
||||||
timestamp: base_time + activity._OFFLINE_THRESHOLD_SECS / 2,
|
timestamp: base_time + activity._OFFLINE_THRESHOLD_SECS / 2,
|
||||||
pushable: true
|
pushable: true,
|
||||||
};
|
};
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, true);
|
assert.equal(status.mobile, true);
|
||||||
assert.equal(status.status, "idle");
|
assert.equal(status.status, "idle");
|
||||||
|
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS - 1, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, false);
|
assert.equal(status.mobile, false);
|
||||||
assert.equal(status.status, "active");
|
assert.equal(status.status, "active");
|
||||||
|
|
||||||
status = activity._status_from_timestamp(
|
status = activity._status_from_timestamp(
|
||||||
base_time + activity._OFFLINE_THRESHOLD_SECS * 2, presence
|
base_time + activity._OFFLINE_THRESHOLD_SECS * 2, presence);
|
||||||
);
|
|
||||||
assert.equal(status.mobile, true);
|
assert.equal(status.mobile, true);
|
||||||
assert.equal(status.status, "offline");
|
assert.equal(status.status, "offline");
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
alert_words: ['alertone', 'alerttwo', 'alertthree', 'al*rt.*s', '.+'],
|
alert_words: ['alertone', 'alerttwo', 'alertthree', 'al*rt.*s', '.+'],
|
||||||
email: 'tester@zulip.com'
|
email: 'tester@zulip.com',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('feature_flags', {
|
set_global('feature_flags', {
|
||||||
alert_words: true
|
alert_words: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
var alert_words = require('js/alert_words.js');
|
var alert_words = require('js/alert_words.js');
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var _ = global._;
|
var _ = global._;
|
||||||
@@ -15,7 +15,7 @@ set_global('document', null);
|
|||||||
var page_params = {
|
var page_params = {
|
||||||
bot_list: [{email: 'bot0@zulip.com', full_name: 'Bot 0'}],
|
bot_list: [{email: 'bot0@zulip.com', full_name: 'Bot 0'}],
|
||||||
is_admin: false,
|
is_admin: false,
|
||||||
email: 'owner@zulip.com'
|
email: 'owner@zulip.com',
|
||||||
};
|
};
|
||||||
set_global('page_params', page_params);
|
set_global('page_params', page_params);
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ assert.equal(bot_data.get('bot0@zulip.com').full_name, 'Bot 0');
|
|||||||
default_events_register_stream: '',
|
default_events_register_stream: '',
|
||||||
default_sending_stream: '',
|
default_sending_stream: '',
|
||||||
full_name: 'Bot 1',
|
full_name: 'Bot 1',
|
||||||
extra: 'Not in data'
|
extra: 'Not in data',
|
||||||
};
|
};
|
||||||
|
|
||||||
(function test_add() {
|
(function test_add() {
|
||||||
|
|||||||
@@ -11,24 +11,24 @@ set_global('stream_data', {subscribed_streams: function () {
|
|||||||
|
|
||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
people: 'js/people.js'
|
people: 'js/people.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
global.people.add_in_realm({
|
global.people.add_in_realm({
|
||||||
email: 'othello@zulip.com',
|
email: 'othello@zulip.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
full_name: "Othello, Moor of Venice"
|
full_name: "Othello, Moor of Venice",
|
||||||
});
|
});
|
||||||
global.people.add_in_realm({
|
global.people.add_in_realm({
|
||||||
email: 'cordelia@zulip.com',
|
email: 'cordelia@zulip.com',
|
||||||
user_id: 102,
|
user_id: 102,
|
||||||
full_name: "Cordelia Lear"
|
full_name: "Cordelia Lear",
|
||||||
});
|
});
|
||||||
|
|
||||||
global.people.add({
|
global.people.add({
|
||||||
email: 'other@zulip.com',
|
email: 'other@zulip.com',
|
||||||
user_id: 103,
|
user_id: 103,
|
||||||
full_name: "Deactivated User"
|
full_name: "Deactivated User",
|
||||||
});
|
});
|
||||||
|
|
||||||
(function test_add_topic () {
|
(function test_add_topic () {
|
||||||
|
|||||||
@@ -7,11 +7,11 @@ var noop = function () {};
|
|||||||
// dispatcher from server_events.
|
// dispatcher from server_events.
|
||||||
(function work_around_server_events_loading_issues() {
|
(function work_around_server_events_loading_issues() {
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
set_global('document', {});
|
set_global('document', {});
|
||||||
set_global('window', {
|
set_global('window', {
|
||||||
addEventListener: noop
|
addEventListener: noop,
|
||||||
});
|
});
|
||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
}());
|
}());
|
||||||
@@ -21,17 +21,17 @@ var noop = function () {};
|
|||||||
set_global('tutorial', {
|
set_global('tutorial', {
|
||||||
is_running: function () {
|
is_running: function () {
|
||||||
return false;
|
return false;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
set_global('home_msg_list', {
|
set_global('home_msg_list', {
|
||||||
select_id: noop,
|
select_id: noop,
|
||||||
selected_id: function () {return 1;}
|
selected_id: function () {return 1;},
|
||||||
});
|
});
|
||||||
set_global('echo', {
|
set_global('echo', {
|
||||||
process_from_server: function (messages) {
|
process_from_server: function (messages) {
|
||||||
return messages;
|
return messages;
|
||||||
},
|
},
|
||||||
set_realm_filters: noop
|
set_realm_filters: noop,
|
||||||
});
|
});
|
||||||
|
|
||||||
// page_params is highly coupled to dispatching now
|
// page_params is highly coupled to dispatching now
|
||||||
@@ -79,7 +79,7 @@ function dispatch(ev) {
|
|||||||
var event_fixtures = {
|
var event_fixtures = {
|
||||||
alert_words: {
|
alert_words: {
|
||||||
type: 'alert_words',
|
type: 'alert_words',
|
||||||
alert_words: ['fire', 'lunch']
|
alert_words: ['fire', 'lunch'],
|
||||||
},
|
},
|
||||||
|
|
||||||
default_streams: {
|
default_streams: {
|
||||||
@@ -89,33 +89,33 @@ var event_fixtures = {
|
|||||||
name: 'devel',
|
name: 'devel',
|
||||||
description: 'devel',
|
description: 'devel',
|
||||||
invite_only: false,
|
invite_only: false,
|
||||||
stream_id: 1
|
stream_id: 1,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'test',
|
name: 'test',
|
||||||
description: 'test',
|
description: 'test',
|
||||||
invite_only: true,
|
invite_only: true,
|
||||||
stream_id: 1
|
stream_id: 1,
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
message: {
|
message: {
|
||||||
type: 'message',
|
type: 'message',
|
||||||
message: {
|
message: {
|
||||||
content: 'hello'
|
content: 'hello',
|
||||||
},
|
},
|
||||||
flags: []
|
flags: [],
|
||||||
},
|
},
|
||||||
|
|
||||||
muted_topics: {
|
muted_topics: {
|
||||||
type: 'muted_topics',
|
type: 'muted_topics',
|
||||||
muted_topics: [['devel', 'js'], ['lunch', 'burritos']]
|
muted_topics: [['devel', 'js'], ['lunch', 'burritos']],
|
||||||
},
|
},
|
||||||
|
|
||||||
pointer: {
|
pointer: {
|
||||||
type: 'pointer',
|
type: 'pointer',
|
||||||
pointer: 999
|
pointer: 999,
|
||||||
},
|
},
|
||||||
|
|
||||||
presence: {
|
presence: {
|
||||||
@@ -123,10 +123,10 @@ var event_fixtures = {
|
|||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
presence: {
|
presence: {
|
||||||
client_name: 'electron',
|
client_name: 'electron',
|
||||||
is_mirror_dummy: false
|
is_mirror_dummy: false,
|
||||||
// etc.
|
// etc.
|
||||||
},
|
},
|
||||||
server_timestamp: 999999
|
server_timestamp: 999999,
|
||||||
},
|
},
|
||||||
|
|
||||||
// Please keep this next section un-nested, as we want this to partly
|
// Please keep this next section un-nested, as we want this to partly
|
||||||
@@ -135,35 +135,35 @@ var event_fixtures = {
|
|||||||
type: 'realm',
|
type: 'realm',
|
||||||
op: 'update',
|
op: 'update',
|
||||||
property: 'create_stream_by_admins_only',
|
property: 'create_stream_by_admins_only',
|
||||||
value: false
|
value: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
realm__update__invite_by_admins_only: {
|
realm__update__invite_by_admins_only: {
|
||||||
type: 'realm',
|
type: 'realm',
|
||||||
op: 'update',
|
op: 'update',
|
||||||
property: 'invite_by_admins_only',
|
property: 'invite_by_admins_only',
|
||||||
value: false
|
value: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
realm__update__invite_required: {
|
realm__update__invite_required: {
|
||||||
type: 'realm',
|
type: 'realm',
|
||||||
op: 'update',
|
op: 'update',
|
||||||
property: 'invite_required',
|
property: 'invite_required',
|
||||||
value: false
|
value: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
realm__update__name: {
|
realm__update__name: {
|
||||||
type: 'realm',
|
type: 'realm',
|
||||||
op: 'update',
|
op: 'update',
|
||||||
property: 'name',
|
property: 'name',
|
||||||
value: 'new_realm_name'
|
value: 'new_realm_name',
|
||||||
},
|
},
|
||||||
|
|
||||||
realm__update__restricted_to_domain: {
|
realm__update__restricted_to_domain: {
|
||||||
type: 'realm',
|
type: 'realm',
|
||||||
op: 'update',
|
op: 'update',
|
||||||
property: 'restricted_to_domain',
|
property: 'restricted_to_domain',
|
||||||
value: false
|
value: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
realm__update_dict__default: {
|
realm__update_dict__default: {
|
||||||
@@ -172,8 +172,8 @@ var event_fixtures = {
|
|||||||
property: 'default',
|
property: 'default',
|
||||||
data: {
|
data: {
|
||||||
allow_message_editing: true,
|
allow_message_editing: true,
|
||||||
message_content_edit_limit_seconds: 5
|
message_content_edit_limit_seconds: 5,
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_bot__add: {
|
realm_bot__add: {
|
||||||
@@ -181,9 +181,9 @@ var event_fixtures = {
|
|||||||
op: 'add',
|
op: 'add',
|
||||||
bot: {
|
bot: {
|
||||||
email: 'the-bot@example.com',
|
email: 'the-bot@example.com',
|
||||||
full_name: 'The Bot'
|
full_name: 'The Bot',
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_bot__remove: {
|
realm_bot__remove: {
|
||||||
@@ -191,8 +191,8 @@ var event_fixtures = {
|
|||||||
op: 'remove',
|
op: 'remove',
|
||||||
bot: {
|
bot: {
|
||||||
email: 'the-bot@example.com',
|
email: 'the-bot@example.com',
|
||||||
full_name: 'The Bot'
|
full_name: 'The Bot',
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_bot__update: {
|
realm_bot__update: {
|
||||||
@@ -200,24 +200,24 @@ var event_fixtures = {
|
|||||||
op: 'update',
|
op: 'update',
|
||||||
bot: {
|
bot: {
|
||||||
email: 'the-bot@example.com',
|
email: 'the-bot@example.com',
|
||||||
full_name: 'The Bot Has A New Name'
|
full_name: 'The Bot Has A New Name',
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_emoji: {
|
realm_emoji: {
|
||||||
type: 'realm_emoji',
|
type: 'realm_emoji',
|
||||||
realm_emoji: {
|
realm_emoji: {
|
||||||
airplane: {
|
airplane: {
|
||||||
display_url: 'some_url'
|
display_url: 'some_url',
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_filters: {
|
realm_filters: {
|
||||||
type: 'realm_filters',
|
type: 'realm_filters',
|
||||||
realm_filters: [
|
realm_filters: [
|
||||||
['#[123]', 'ticket %(id)s']
|
['#[123]', 'ticket %(id)s'],
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_user__add: {
|
realm_user__add: {
|
||||||
@@ -225,9 +225,9 @@ var event_fixtures = {
|
|||||||
op: 'add',
|
op: 'add',
|
||||||
person: {
|
person: {
|
||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
full_name: 'Alice User'
|
full_name: 'Alice User',
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_user__remove: {
|
realm_user__remove: {
|
||||||
@@ -235,9 +235,9 @@ var event_fixtures = {
|
|||||||
op: 'remove',
|
op: 'remove',
|
||||||
person: {
|
person: {
|
||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
full_name: 'Alice User'
|
full_name: 'Alice User',
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
realm_user__update: {
|
realm_user__update: {
|
||||||
@@ -245,22 +245,22 @@ var event_fixtures = {
|
|||||||
op: 'update',
|
op: 'update',
|
||||||
person: {
|
person: {
|
||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
full_name: 'Alice NewName'
|
full_name: 'Alice NewName',
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
referral: {
|
referral: {
|
||||||
type: 'referral',
|
type: 'referral',
|
||||||
referrals: {
|
referrals: {
|
||||||
granted: 10,
|
granted: 10,
|
||||||
used: 5
|
used: 5,
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
restart: {
|
restart: {
|
||||||
type: 'restart',
|
type: 'restart',
|
||||||
immediate: true
|
immediate: true,
|
||||||
},
|
},
|
||||||
|
|
||||||
stream: {
|
stream: {
|
||||||
@@ -268,7 +268,7 @@ var event_fixtures = {
|
|||||||
op: 'update',
|
op: 'update',
|
||||||
name: 'devel',
|
name: 'devel',
|
||||||
property: 'color',
|
property: 'color',
|
||||||
value: 'blue'
|
value: 'blue',
|
||||||
},
|
},
|
||||||
|
|
||||||
subscription__add: {
|
subscription__add: {
|
||||||
@@ -277,10 +277,10 @@ var event_fixtures = {
|
|||||||
subscriptions: [
|
subscriptions: [
|
||||||
{
|
{
|
||||||
name: 'devel',
|
name: 'devel',
|
||||||
stream_id: 42
|
stream_id: 42,
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
subscription__remove: {
|
subscription__remove: {
|
||||||
@@ -288,9 +288,9 @@ var event_fixtures = {
|
|||||||
op: 'remove',
|
op: 'remove',
|
||||||
subscriptions: [
|
subscriptions: [
|
||||||
{
|
{
|
||||||
stream_id: 42
|
stream_id: 42,
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
subscription__peer_add: {
|
subscription__peer_add: {
|
||||||
@@ -300,10 +300,10 @@ var event_fixtures = {
|
|||||||
subscriptions: [
|
subscriptions: [
|
||||||
{
|
{
|
||||||
name: 'devel',
|
name: 'devel',
|
||||||
stream_id: 42
|
stream_id: 42,
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
subscription__peer_remove: {
|
subscription__peer_remove: {
|
||||||
@@ -312,10 +312,10 @@ var event_fixtures = {
|
|||||||
user_id: 555,
|
user_id: 555,
|
||||||
subscriptions: [
|
subscriptions: [
|
||||||
{
|
{
|
||||||
stream_id: 42
|
stream_id: 42,
|
||||||
// etc.
|
// etc.
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
subscription__update: {
|
subscription__update: {
|
||||||
@@ -323,46 +323,46 @@ var event_fixtures = {
|
|||||||
op: 'update',
|
op: 'update',
|
||||||
name: 'devel',
|
name: 'devel',
|
||||||
property: 'color',
|
property: 'color',
|
||||||
value: 'black'
|
value: 'black',
|
||||||
},
|
},
|
||||||
|
|
||||||
update_display_settings__default_language: {
|
update_display_settings__default_language: {
|
||||||
type: 'update_display_settings',
|
type: 'update_display_settings',
|
||||||
setting_name: 'default_language',
|
setting_name: 'default_language',
|
||||||
default_language: 'fr'
|
default_language: 'fr',
|
||||||
},
|
},
|
||||||
|
|
||||||
update_display_settings__left_side_userlist: {
|
update_display_settings__left_side_userlist: {
|
||||||
type: 'update_display_settings',
|
type: 'update_display_settings',
|
||||||
setting_name: 'left_side_userlist',
|
setting_name: 'left_side_userlist',
|
||||||
left_side_userlist: true
|
left_side_userlist: true,
|
||||||
},
|
},
|
||||||
|
|
||||||
update_display_settings__twenty_four_hour_time: {
|
update_display_settings__twenty_four_hour_time: {
|
||||||
type: 'update_display_settings',
|
type: 'update_display_settings',
|
||||||
setting_name: 'twenty_four_hour_time',
|
setting_name: 'twenty_four_hour_time',
|
||||||
twenty_four_hour_time: true
|
twenty_four_hour_time: true,
|
||||||
},
|
},
|
||||||
|
|
||||||
update_global_notifications: {
|
update_global_notifications: {
|
||||||
type: 'update_global_notifications',
|
type: 'update_global_notifications',
|
||||||
notification_name: 'enable_stream_sounds',
|
notification_name: 'enable_stream_sounds',
|
||||||
setting: true
|
setting: true,
|
||||||
},
|
},
|
||||||
|
|
||||||
update_message_flags__read: {
|
update_message_flags__read: {
|
||||||
type: 'update_message_flags',
|
type: 'update_message_flags',
|
||||||
operation: 'add',
|
operation: 'add',
|
||||||
flag: 'read',
|
flag: 'read',
|
||||||
messages: [5, 999]
|
messages: [5, 999],
|
||||||
},
|
},
|
||||||
|
|
||||||
update_message_flags__starred: {
|
update_message_flags__starred: {
|
||||||
type: 'update_message_flags',
|
type: 'update_message_flags',
|
||||||
operation: 'add',
|
operation: 'add',
|
||||||
flag: 'starred',
|
flag: 'starred',
|
||||||
messages: [7, 99]
|
messages: [7, 99],
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
function assert_same(actual, expected) {
|
function assert_same(actual, expected) {
|
||||||
@@ -623,8 +623,7 @@ run(function (override, capture, args) {
|
|||||||
override(
|
override(
|
||||||
'subs',
|
'subs',
|
||||||
'update_subscription_properties',
|
'update_subscription_properties',
|
||||||
capture(['name', 'property', 'value'])
|
capture(['name', 'property', 'value']));
|
||||||
);
|
|
||||||
override('admin', 'update_default_streams_table', noop);
|
override('admin', 'update_default_streams_table', noop);
|
||||||
dispatch(event);
|
dispatch(event);
|
||||||
assert_same(args.name, event.name);
|
assert_same(args.name, event.name);
|
||||||
@@ -677,8 +676,7 @@ run(function (override, capture, args) {
|
|||||||
override(
|
override(
|
||||||
'subs',
|
'subs',
|
||||||
'update_subscription_properties',
|
'update_subscription_properties',
|
||||||
capture(['name', 'property', 'value'])
|
capture(['name', 'property', 'value']));
|
||||||
);
|
|
||||||
dispatch(event);
|
dispatch(event);
|
||||||
assert_same(args.name, event.name);
|
assert_same(args.name, event.name);
|
||||||
assert_same(args.property, event.property);
|
assert_same(args.property, event.property);
|
||||||
@@ -711,8 +709,7 @@ run(function (override, capture, args) {
|
|||||||
override(
|
override(
|
||||||
'notifications',
|
'notifications',
|
||||||
'handle_global_notification_updates',
|
'handle_global_notification_updates',
|
||||||
capture(['name', 'setting'])
|
capture(['name', 'setting']));
|
||||||
);
|
|
||||||
dispatch(event);
|
dispatch(event);
|
||||||
assert_same(args.name, event.notification_name);
|
assert_same(args.name, event.notification_name);
|
||||||
assert_same(args.setting, event.setting);
|
assert_same(args.setting, event.setting);
|
||||||
|
|||||||
@@ -10,22 +10,22 @@ set_global('page_params', {
|
|||||||
people_list: [],
|
people_list: [],
|
||||||
realm_emoji: {
|
realm_emoji: {
|
||||||
burrito: {display_url: '/static/third/gemoji/images/emoji/burrito.png',
|
burrito: {display_url: '/static/third/gemoji/images/emoji/burrito.png',
|
||||||
source_url: '/static/third/gemoji/images/emoji/burrito.png'}
|
source_url: '/static/third/gemoji/images/emoji/burrito.png'},
|
||||||
},
|
},
|
||||||
realm_filters: [
|
realm_filters: [
|
||||||
[
|
[
|
||||||
"#(?P<id>[0-9]{2,8})",
|
"#(?P<id>[0-9]{2,8})",
|
||||||
"https://trac.zulip.net/ticket/%(id)s"
|
"https://trac.zulip.net/ticket/%(id)s",
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"ZBUG_(?P<id>[0-9]{2,8})",
|
"ZBUG_(?P<id>[0-9]{2,8})",
|
||||||
"https://trac2.zulip.net/ticket/%(id)s"
|
"https://trac2.zulip.net/ticket/%(id)s",
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"ZGROUP_(?P<id>[0-9]{2,8}):(?P<zone>[0-9]{1,8})",
|
"ZGROUP_(?P<id>[0-9]{2,8}):(?P<zone>[0-9]{1,8})",
|
||||||
"https://zone_%(zone)s.zulip.net/ticket/%(id)s"
|
"https://zone_%(zone)s.zulip.net/ticket/%(id)s",
|
||||||
]
|
],
|
||||||
]
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
@@ -34,7 +34,7 @@ add_dependencies({
|
|||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
stream_data: 'js/stream_data.js',
|
stream_data: 'js/stream_data.js',
|
||||||
hashchange: 'js/hashchange',
|
hashchange: 'js/hashchange',
|
||||||
fenced_code: 'js/fenced_code.js'
|
fenced_code: 'js/fenced_code.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var doc = "";
|
var doc = "";
|
||||||
@@ -61,7 +61,7 @@ var people = global.people;
|
|||||||
people.add({
|
people.add({
|
||||||
full_name: 'Cordelia Lear',
|
full_name: 'Cordelia Lear',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
email: 'cordelia@zulip.com'
|
email: 'cordelia@zulip.com',
|
||||||
});
|
});
|
||||||
|
|
||||||
var stream_data = global.stream_data;
|
var stream_data = global.stream_data;
|
||||||
@@ -70,7 +70,7 @@ var denmark = {
|
|||||||
color: 'blue',
|
color: 'blue',
|
||||||
name: 'Denmark',
|
name: 'Denmark',
|
||||||
stream_id: 1,
|
stream_id: 1,
|
||||||
in_home_view: false
|
in_home_view: false,
|
||||||
};
|
};
|
||||||
var social = {
|
var social = {
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
@@ -78,7 +78,7 @@ var social = {
|
|||||||
name: 'social',
|
name: 'social',
|
||||||
stream_id: 2,
|
stream_id: 2,
|
||||||
in_home_view: true,
|
in_home_view: true,
|
||||||
invite_only: true
|
invite_only: true,
|
||||||
};
|
};
|
||||||
stream_data.add_sub('Denmark', denmark);
|
stream_data.add_sub('Denmark', denmark);
|
||||||
stream_data.add_sub('social', social);
|
stream_data.add_sub('social', social);
|
||||||
@@ -107,7 +107,7 @@ var bugdown_data = JSON.parse(fs.readFileSync(path.join(__dirname, '../../zerver
|
|||||||
"User Mention @**leo with some name**",
|
"User Mention @**leo with some name**",
|
||||||
"Stream #**Verona**",
|
"Stream #**Verona**",
|
||||||
"This contains !gravatar(leo@zulip.com)",
|
"This contains !gravatar(leo@zulip.com)",
|
||||||
"And an avatar !avatar(leo@zulip.com) is here"
|
"And an avatar !avatar(leo@zulip.com) is here",
|
||||||
];
|
];
|
||||||
|
|
||||||
var markup = [
|
var markup = [
|
||||||
@@ -122,7 +122,7 @@ var bugdown_data = JSON.parse(fs.readFileSync(path.join(__dirname, '../../zerver
|
|||||||
"https://twitter.com/jacobian/status/407886996565016579",
|
"https://twitter.com/jacobian/status/407886996565016579",
|
||||||
"then https://twitter.com/jacobian/status/407886996565016579",
|
"then https://twitter.com/jacobian/status/407886996565016579",
|
||||||
"twitter url http://twitter.com/jacobian/status/407886996565016579",
|
"twitter url http://twitter.com/jacobian/status/407886996565016579",
|
||||||
"youtube url https://www.youtube.com/watch?v=HHZ8iqswiCw&feature=youtu.be&a"
|
"youtube url https://www.youtube.com/watch?v=HHZ8iqswiCw&feature=youtu.be&a",
|
||||||
];
|
];
|
||||||
|
|
||||||
no_markup.forEach(function (content) {
|
no_markup.forEach(function (content) {
|
||||||
@@ -186,7 +186,7 @@ var bugdown_data = JSON.parse(fs.readFileSync(path.join(__dirname, '../../zerver
|
|||||||
{input: 'This is a !gravatar(cordelia@zulip.com) of Cordelia Lear',
|
{input: 'This is a !gravatar(cordelia@zulip.com) of Cordelia Lear',
|
||||||
expected: '<p>This is a <img alt="cordelia@zulip.com" class="message_body_gravatar" src="/avatar/cordelia@zulip.com?s=30" title="cordelia@zulip.com"> of Cordelia Lear</p>'},
|
expected: '<p>This is a <img alt="cordelia@zulip.com" class="message_body_gravatar" src="/avatar/cordelia@zulip.com?s=30" title="cordelia@zulip.com"> of Cordelia Lear</p>'},
|
||||||
{input: 'Test *italic*',
|
{input: 'Test *italic*',
|
||||||
expected: '<p>Test <em>italic</em></p>'}
|
expected: '<p>Test <em>italic</em></p>'},
|
||||||
];
|
];
|
||||||
|
|
||||||
test_cases.forEach(function (test_case) {
|
test_cases.forEach(function (test_case) {
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js',
|
util: 'js/util.js',
|
||||||
stream_data: 'js/stream_data.js'
|
stream_data: 'js/stream_data.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
email: 'hamlet@zulip.com',
|
email: 'hamlet@zulip.com',
|
||||||
domain: 'zulip.com'
|
domain: 'zulip.com',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('feature_flags', {});
|
set_global('feature_flags', {});
|
||||||
@@ -24,7 +24,7 @@ function assert_same_operators(result, terms) {
|
|||||||
return {
|
return {
|
||||||
negated: negated,
|
negated: negated,
|
||||||
operator: term.operator,
|
operator: term.operator,
|
||||||
operand: term.operand
|
operand: term.operand,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
assert.deepEqual(result, terms);
|
assert.deepEqual(result, terms);
|
||||||
@@ -34,7 +34,7 @@ function assert_same_operators(result, terms) {
|
|||||||
var operators = [
|
var operators = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'stream', operand: 'exclude_stream', negated: true},
|
{operator: 'stream', operand: 'exclude_stream', negated: true},
|
||||||
{operator: 'topic', operand: 'bar'}
|
{operator: 'topic', operand: 'bar'},
|
||||||
];
|
];
|
||||||
var filter = new Filter(operators);
|
var filter = new Filter(operators);
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ function assert_same_operators(result, terms) {
|
|||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'topic', operand: 'bar'},
|
{operator: 'topic', operand: 'bar'},
|
||||||
{operator: 'search', operand: 'pizza'}
|
{operator: 'search', operand: 'pizza'},
|
||||||
];
|
];
|
||||||
filter = new Filter(operators);
|
filter = new Filter(operators);
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ function assert_same_operators(result, terms) {
|
|||||||
// we don't consider ourselves to have a stream operator, because we don't
|
// we don't consider ourselves to have a stream operator, because we don't
|
||||||
// want to have the stream in the tab bar or unsubscribe messaging, etc.
|
// want to have the stream in the tab bar or unsubscribe messaging, etc.
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'exclude', negated: true}
|
{operator: 'stream', operand: 'exclude', negated: true},
|
||||||
];
|
];
|
||||||
filter = new Filter(operators);
|
filter = new Filter(operators);
|
||||||
assert(!filter.has_operator('stream'));
|
assert(!filter.has_operator('stream'));
|
||||||
@@ -74,7 +74,7 @@ function assert_same_operators(result, terms) {
|
|||||||
// the search logic happens on the back end and we need to have can_apply_locally()
|
// the search logic happens on the back end and we need to have can_apply_locally()
|
||||||
// be false, and we want "Search results" in the tab bar.
|
// be false, and we want "Search results" in the tab bar.
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'search', operand: 'stop_word', negated: true}
|
{operator: 'search', operand: 'stop_word', negated: true},
|
||||||
];
|
];
|
||||||
filter = new Filter(operators);
|
filter = new Filter(operators);
|
||||||
assert(filter.has_operator('search'));
|
assert(filter.has_operator('search'));
|
||||||
@@ -82,7 +82,7 @@ function assert_same_operators(result, terms) {
|
|||||||
|
|
||||||
// Similar logic applies to negated "has" searches.
|
// Similar logic applies to negated "has" searches.
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'has', operand: 'images', negated: true}
|
{operator: 'has', operand: 'images', negated: true},
|
||||||
];
|
];
|
||||||
filter = new Filter(operators);
|
filter = new Filter(operators);
|
||||||
assert(filter.has_operator('has'));
|
assert(filter.has_operator('has'));
|
||||||
@@ -92,7 +92,7 @@ function assert_same_operators(result, terms) {
|
|||||||
(function test_topic_stuff() {
|
(function test_topic_stuff() {
|
||||||
var operators = [
|
var operators = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'topic', operand: 'old topic'}
|
{operator: 'topic', operand: 'old topic'},
|
||||||
];
|
];
|
||||||
var filter = new Filter(operators);
|
var filter = new Filter(operators);
|
||||||
|
|
||||||
@@ -109,7 +109,7 @@ function assert_same_operators(result, terms) {
|
|||||||
(function test_new_style_operators() {
|
(function test_new_style_operators() {
|
||||||
var term = {
|
var term = {
|
||||||
operator: 'stream',
|
operator: 'stream',
|
||||||
operand: 'foo'
|
operand: 'foo',
|
||||||
};
|
};
|
||||||
var operators = [term];
|
var operators = [term];
|
||||||
var filter = new Filter(operators);
|
var filter = new Filter(operators);
|
||||||
@@ -121,7 +121,7 @@ function assert_same_operators(result, terms) {
|
|||||||
var operators = [
|
var operators = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'in', operand: 'all'},
|
{operator: 'in', operand: 'all'},
|
||||||
{operator: 'topic', operand: 'bar'}
|
{operator: 'topic', operand: 'bar'},
|
||||||
];
|
];
|
||||||
|
|
||||||
var filter = new Filter(operators);
|
var filter = new Filter(operators);
|
||||||
@@ -129,7 +129,7 @@ function assert_same_operators(result, terms) {
|
|||||||
|
|
||||||
global.page_params.narrow_stream = 'default';
|
global.page_params.narrow_stream = 'default';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'default'}
|
{operator: 'stream', operand: 'default'},
|
||||||
];
|
];
|
||||||
filter = new Filter(operators);
|
filter = new Filter(operators);
|
||||||
assert_same_operators(filter.public_operators(), []);
|
assert_same_operators(filter.public_operators(), []);
|
||||||
@@ -261,7 +261,7 @@ function get_predicate(operators) {
|
|||||||
var narrow;
|
var narrow;
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'social', negated: true}
|
{operator: 'stream', operand: 'social', negated: true},
|
||||||
];
|
];
|
||||||
predicate = new Filter(narrow).predicate();
|
predicate = new Filter(narrow).predicate();
|
||||||
assert(predicate({type: 'stream', stream: 'devel'}));
|
assert(predicate({type: 'stream', stream: 'devel'}));
|
||||||
@@ -285,7 +285,7 @@ function get_predicate(operators) {
|
|||||||
// Try to get the MIT regex to explode for an empty stream.
|
// Try to get the MIT regex to explode for an empty stream.
|
||||||
var terms = [
|
var terms = [
|
||||||
{operator: 'stream', operand: ''},
|
{operator: 'stream', operand: ''},
|
||||||
{operator: 'topic', operand: 'bar'}
|
{operator: 'topic', operand: 'bar'},
|
||||||
];
|
];
|
||||||
predicate = new Filter(terms).predicate();
|
predicate = new Filter(terms).predicate();
|
||||||
assert(!predicate({type: 'stream', stream: 'foo', subject: 'bar'}));
|
assert(!predicate({type: 'stream', stream: 'foo', subject: 'bar'}));
|
||||||
@@ -293,7 +293,7 @@ function get_predicate(operators) {
|
|||||||
// Try to get the MIT regex to explode for an empty topic.
|
// Try to get the MIT regex to explode for an empty topic.
|
||||||
terms = [
|
terms = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'topic', operand: ''}
|
{operator: 'topic', operand: ''},
|
||||||
];
|
];
|
||||||
predicate = new Filter(terms).predicate();
|
predicate = new Filter(terms).predicate();
|
||||||
assert(!predicate({type: 'stream', stream: 'foo', subject: 'bar'}));
|
assert(!predicate({type: 'stream', stream: 'foo', subject: 'bar'}));
|
||||||
@@ -321,7 +321,7 @@ function get_predicate(operators) {
|
|||||||
// Exercise caching feature.
|
// Exercise caching feature.
|
||||||
var terms = [
|
var terms = [
|
||||||
{operator: 'stream', operand: 'Foo'},
|
{operator: 'stream', operand: 'Foo'},
|
||||||
{operator: 'topic', operand: 'bar'}
|
{operator: 'topic', operand: 'bar'},
|
||||||
];
|
];
|
||||||
var filter = new Filter(terms);
|
var filter = new Filter(terms);
|
||||||
predicate = filter.predicate();
|
predicate = filter.predicate();
|
||||||
@@ -343,38 +343,38 @@ function get_predicate(operators) {
|
|||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'Foo'},
|
{operator: 'stream', operand: 'Foo'},
|
||||||
{operator: 'topic', operand: 'Bar'},
|
{operator: 'topic', operand: 'Bar'},
|
||||||
{operator: 'search', operand: 'yo'}
|
{operator: 'search', operand: 'yo'},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
|
|
||||||
string = 'pm-with:leo+test@zulip.com';
|
string = 'pm-with:leo+test@zulip.com';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'pm-with', operand: 'leo+test@zulip.com'}
|
{operator: 'pm-with', operand: 'leo+test@zulip.com'},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
|
|
||||||
string = 'sender:leo+test@zulip.com';
|
string = 'sender:leo+test@zulip.com';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'sender', operand: 'leo+test@zulip.com'}
|
{operator: 'sender', operand: 'leo+test@zulip.com'},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
|
|
||||||
string = 'stream:With+Space';
|
string = 'stream:With+Space';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'With Space'}
|
{operator: 'stream', operand: 'With Space'},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
|
|
||||||
string = 'https://www.google.com';
|
string = 'https://www.google.com';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'search', operand: 'https://www.google.com'}
|
{operator: 'search', operand: 'https://www.google.com'},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
|
|
||||||
string = 'stream:foo -stream:exclude';
|
string = 'stream:foo -stream:exclude';
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'foo'},
|
{operator: 'stream', operand: 'foo'},
|
||||||
{operator: 'stream', operand: 'exclude', negated: true}
|
{operator: 'stream', operand: 'exclude', negated: true},
|
||||||
];
|
];
|
||||||
_test();
|
_test();
|
||||||
}());
|
}());
|
||||||
@@ -386,19 +386,19 @@ function get_predicate(operators) {
|
|||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'Foo'},
|
{operator: 'stream', operand: 'Foo'},
|
||||||
{operator: 'topic', operand: 'Bar', negated: true},
|
{operator: 'topic', operand: 'Bar', negated: true},
|
||||||
{operator: 'search', operand: 'yo'}
|
{operator: 'search', operand: 'yo'},
|
||||||
];
|
];
|
||||||
string = 'stream:Foo -topic:Bar yo';
|
string = 'stream:Foo -topic:Bar yo';
|
||||||
assert.deepEqual(Filter.unparse(operators), string);
|
assert.deepEqual(Filter.unparse(operators), string);
|
||||||
|
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'id', operand: 50}
|
{operator: 'id', operand: 50},
|
||||||
];
|
];
|
||||||
string = 'id:50';
|
string = 'id:50';
|
||||||
assert.deepEqual(Filter.unparse(operators), string);
|
assert.deepEqual(Filter.unparse(operators), string);
|
||||||
|
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'near', operand: 150}
|
{operator: 'near', operand: 150},
|
||||||
];
|
];
|
||||||
string = 'near:150';
|
string = 'near:150';
|
||||||
assert.deepEqual(Filter.unparse(operators), string);
|
assert.deepEqual(Filter.unparse(operators), string);
|
||||||
@@ -410,85 +410,85 @@ function get_predicate(operators) {
|
|||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'is', operand: 'starred'}
|
{operator: 'is', operand: 'starred'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to stream devel, Narrow to starred messages';
|
string = 'Narrow to stream devel, Narrow to starred messages';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'topic', operand: 'JS'}
|
{operator: 'topic', operand: 'JS'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to devel > JS';
|
string = 'Narrow to devel > JS';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'is', operand: 'private'},
|
{operator: 'is', operand: 'private'},
|
||||||
{operator: 'search', operand: 'lunch'}
|
{operator: 'search', operand: 'lunch'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to all private messages, Search for lunch';
|
string = 'Narrow to all private messages, Search for lunch';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'id', operand: 99}
|
{operator: 'id', operand: 99},
|
||||||
];
|
];
|
||||||
string = 'Narrow to message ID 99';
|
string = 'Narrow to message ID 99';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'in', operand: 'home'}
|
{operator: 'in', operand: 'home'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to messages in home';
|
string = 'Narrow to messages in home';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'is', operand: 'mentioned'}
|
{operator: 'is', operand: 'mentioned'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to mentioned messages';
|
string = 'Narrow to mentioned messages';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'is', operand: 'alerted'}
|
{operator: 'is', operand: 'alerted'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to alerted messages';
|
string = 'Narrow to alerted messages';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'is', operand: 'something_we_do_not_support'}
|
{operator: 'is', operand: 'something_we_do_not_support'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to (unknown operator)';
|
string = 'Narrow to (unknown operator)';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'bogus', operand: 'foo'}
|
{operator: 'bogus', operand: 'foo'},
|
||||||
];
|
];
|
||||||
string = 'Narrow to (unknown operator)';
|
string = 'Narrow to (unknown operator)';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'topic', operand: 'JS', negated: true}
|
{operator: 'topic', operand: 'JS', negated: true},
|
||||||
];
|
];
|
||||||
string = 'Narrow to stream devel, Exclude topic JS';
|
string = 'Narrow to stream devel, Exclude topic JS';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'is', operand: 'private'},
|
{operator: 'is', operand: 'private'},
|
||||||
{operator: 'search', operand: 'lunch', negated: true}
|
{operator: 'search', operand: 'lunch', negated: true},
|
||||||
];
|
];
|
||||||
string = 'Narrow to all private messages, Exclude lunch';
|
string = 'Narrow to all private messages, Exclude lunch';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'is', operand: 'starred', negated: true}
|
{operator: 'is', operand: 'starred', negated: true},
|
||||||
];
|
];
|
||||||
string = 'Narrow to stream devel, Exclude starred messages';
|
string = 'Narrow to stream devel, Exclude starred messages';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|
||||||
narrow = [
|
narrow = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'has', operand: 'image', negated: true}
|
{operator: 'has', operand: 'image', negated: true},
|
||||||
];
|
];
|
||||||
string = 'Narrow to stream devel, Exclude messages with one or more image';
|
string = 'Narrow to stream devel, Exclude messages with one or more image';
|
||||||
assert.equal(Filter.describe(narrow), string);
|
assert.equal(Filter.describe(narrow), string);
|
||||||
|
|||||||
@@ -6,14 +6,14 @@ var hashchange = require('js/hashchange.js');
|
|||||||
|
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'topic', operand: 'algol'}
|
{operator: 'topic', operand: 'algol'},
|
||||||
];
|
];
|
||||||
hash = hashchange.operators_to_hash(operators);
|
hash = hashchange.operators_to_hash(operators);
|
||||||
assert.equal(hash, '#narrow/stream/devel/topic/algol');
|
assert.equal(hash, '#narrow/stream/devel/topic/algol');
|
||||||
|
|
||||||
operators = [
|
operators = [
|
||||||
{operator: 'stream', operand: 'devel'},
|
{operator: 'stream', operand: 'devel'},
|
||||||
{operator: 'topic', operand: 'visual c++', negated: true}
|
{operator: 'topic', operand: 'visual c++', negated: true},
|
||||||
];
|
];
|
||||||
hash = hashchange.operators_to_hash(operators);
|
hash = hashchange.operators_to_hash(operators);
|
||||||
assert.equal(hash, '#narrow/stream/devel/-topic/visual.20c.2B.2B');
|
assert.equal(hash, '#narrow/stream/devel/-topic/visual.20c.2B.2B');
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
Handlebars: 'handlebars',
|
Handlebars: 'handlebars',
|
||||||
templates: 'js/templates',
|
templates: 'js/templates',
|
||||||
i18n: 'i18next'
|
i18n: 'i18next',
|
||||||
});
|
});
|
||||||
|
|
||||||
var i18n = global.i18n;
|
var i18n = global.i18n;
|
||||||
@@ -10,17 +10,17 @@ i18n.init({
|
|||||||
keySeparator: false,
|
keySeparator: false,
|
||||||
interpolation: {
|
interpolation: {
|
||||||
prefix: "__",
|
prefix: "__",
|
||||||
suffix: "__"
|
suffix: "__",
|
||||||
},
|
},
|
||||||
lng: 'fr',
|
lng: 'fr',
|
||||||
resources: {
|
resources: {
|
||||||
fr: {
|
fr: {
|
||||||
translation: {
|
translation: {
|
||||||
Reply: "French",
|
Reply: "French",
|
||||||
"You'll receive notifications when a message arrives and __page_params.product_name__ isn't in focus or the message is offscreen.": "Some French text with __page_params.product_name__"
|
"You'll receive notifications when a message arrives and __page_params.product_name__ isn't in focus or the message is offscreen.": "Some French text with __page_params.product_name__",
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
var jsdom = require("jsdom");
|
var jsdom = require("jsdom");
|
||||||
@@ -37,11 +37,11 @@ var _ = global._;
|
|||||||
id: "99",
|
id: "99",
|
||||||
stream: "devel",
|
stream: "devel",
|
||||||
subject: "testing",
|
subject: "testing",
|
||||||
sender_full_name: "King Lear"
|
sender_full_name: "King Lear",
|
||||||
},
|
},
|
||||||
can_edit_message: true,
|
can_edit_message: true,
|
||||||
can_mute_topic: true,
|
can_mute_topic: true,
|
||||||
narrowed: true
|
narrowed: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '<div style="height: 250px">';
|
var html = '<div style="height: 250px">';
|
||||||
@@ -71,8 +71,8 @@ var _ = global._;
|
|||||||
enable_digest_emails: false,
|
enable_digest_emails: false,
|
||||||
domain: "zulip.com",
|
domain: "zulip.com",
|
||||||
autoscroll_forever: false,
|
autoscroll_forever: false,
|
||||||
default_desktop_notifications: false
|
default_desktop_notifications: false,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = global.render_template('settings_tab', args);
|
var html = global.render_template('settings_tab', args);
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js',
|
util: 'js/util.js',
|
||||||
muting: 'js/muting.js',
|
muting: 'js/muting.js',
|
||||||
MessageListView: 'js/message_list_view.js'
|
MessageListView: 'js/message_list_view.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
@@ -27,17 +27,17 @@ var MessageList = require('js/message_list').MessageList;
|
|||||||
var messages = [
|
var messages = [
|
||||||
{
|
{
|
||||||
id: 50,
|
id: 50,
|
||||||
content: 'fifty'
|
content: 'fifty',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 60
|
id: 60,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 70
|
id: 70,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 80
|
id: 80,
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.equal(list.empty(), true);
|
assert.equal(list.empty(), true);
|
||||||
@@ -71,11 +71,11 @@ var MessageList = require('js/message_list').MessageList;
|
|||||||
|
|
||||||
var old_messages = [
|
var old_messages = [
|
||||||
{
|
{
|
||||||
id: 30
|
id: 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 40
|
id: 40,
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
list.prepend(old_messages, true);
|
list.prepend(old_messages, true);
|
||||||
assert.equal(list.first().id, 30);
|
assert.equal(list.first().id, 30);
|
||||||
@@ -83,8 +83,8 @@ var MessageList = require('js/message_list').MessageList;
|
|||||||
|
|
||||||
var new_messages = [
|
var new_messages = [
|
||||||
{
|
{
|
||||||
id: 90
|
id: 90,
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
list.append(new_messages, true);
|
list.append(new_messages, true);
|
||||||
assert.equal(list.last().id, 90);
|
assert.equal(list.last().id, 90);
|
||||||
|
|||||||
@@ -4,11 +4,11 @@ var MessageListView = require('js/message_list_view.js');
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
$: 'jquery',
|
$: 'jquery',
|
||||||
XDate: 'third/xdate/xdate.dev.js',
|
XDate: 'third/xdate/xdate.dev.js',
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
twenty_four_hour_time: false
|
twenty_four_hour_time: false,
|
||||||
});
|
});
|
||||||
set_global('home_msg_list', null);
|
set_global('home_msg_list', null);
|
||||||
set_global('feature_flags', {twenty_four_hour_time: false});
|
set_global('feature_flags', {twenty_four_hour_time: false});
|
||||||
@@ -22,7 +22,7 @@ set_global('timerender', {
|
|||||||
return [{outerHTML: String(time1.getTime())}];
|
return [{outerHTML: String(time1.getTime())}];
|
||||||
}
|
}
|
||||||
return [{outerHTML: String(time1.getTime()) + ' - ' + String(time2.getTime())}];
|
return [{outerHTML: String(time1.getTime()) + ' - ' + String(time2.getTime())}];
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
(function test_merge_message_groups() {
|
(function test_merge_message_groups() {
|
||||||
@@ -37,7 +37,7 @@ set_global('timerender', {
|
|||||||
message = {};
|
message = {};
|
||||||
}
|
}
|
||||||
message_context = _.defaults(message_context, {
|
message_context = _.defaults(message_context, {
|
||||||
include_sender: true
|
include_sender: true,
|
||||||
});
|
});
|
||||||
message_context.msg = _.defaults(message, {
|
message_context.msg = _.defaults(message, {
|
||||||
id: _.uniqueId('test_message_'),
|
id: _.uniqueId('test_message_'),
|
||||||
@@ -46,7 +46,7 @@ set_global('timerender', {
|
|||||||
stream: 'Test Stream 1',
|
stream: 'Test Stream 1',
|
||||||
subject: 'Test Subject 1',
|
subject: 'Test Subject 1',
|
||||||
sender_email: 'test@example.com',
|
sender_email: 'test@example.com',
|
||||||
timestamp: _.uniqueId()
|
timestamp: _.uniqueId(),
|
||||||
});
|
});
|
||||||
return message_context;
|
return message_context;
|
||||||
}
|
}
|
||||||
@@ -55,7 +55,7 @@ set_global('timerender', {
|
|||||||
return {
|
return {
|
||||||
message_containers: messages,
|
message_containers: messages,
|
||||||
message_group_id: _.uniqueId('test_message_group_'),
|
message_group_id: _.uniqueId('test_message_group_'),
|
||||||
show_date: true
|
show_date: true,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ set_global('timerender', {
|
|||||||
list._message_groups = message_groups;
|
list._message_groups = message_groups;
|
||||||
list.list = {
|
list.list = {
|
||||||
unsubscribed_bookend_content: function () {},
|
unsubscribed_bookend_content: function () {},
|
||||||
subscribed_bookend_content: function () {}
|
subscribed_bookend_content: function () {},
|
||||||
};
|
};
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
@@ -72,8 +72,7 @@ set_global('timerender', {
|
|||||||
function assert_message_list_equal(list1, list2) {
|
function assert_message_list_equal(list1, list2) {
|
||||||
assert.deepEqual(
|
assert.deepEqual(
|
||||||
_.chain(list1).pluck('msg').pluck('id').value(),
|
_.chain(list1).pluck('msg').pluck('id').value(),
|
||||||
_.chain(list2).pluck('msg').pluck('id').value()
|
_.chain(list2).pluck('msg').pluck('id').value());
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function assert_message_groups_list_equal(list1, list2) {
|
function assert_message_groups_list_equal(list1, list2) {
|
||||||
@@ -85,14 +84,13 @@ set_global('timerender', {
|
|||||||
}
|
}
|
||||||
assert.deepEqual(
|
assert.deepEqual(
|
||||||
_.map(list1, extract_message_ids),
|
_.map(list1, extract_message_ids),
|
||||||
_.map(list2, extract_message_ids)
|
_.map(list2, extract_message_ids));
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
(function test_empty_list_bottom() {
|
(function test_empty_list_bottom() {
|
||||||
var list = build_list([]);
|
var list = build_list([]);
|
||||||
var message_group = build_message_group([
|
var message_group = build_message_group([
|
||||||
build_message_context()
|
build_message_context(),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var result = list.merge_message_groups([message_group], 'bottom');
|
var result = list.merge_message_groups([message_group], 'bottom');
|
||||||
@@ -109,12 +107,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context();
|
var message1 = build_message_context();
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context();
|
var message2 = build_message_context();
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -122,8 +120,7 @@ set_global('timerender', {
|
|||||||
|
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[build_message_group([message1, message2])]
|
[build_message_group([message1, message2])]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -135,12 +132,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context();
|
var message1 = build_message_context();
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({subject: 'Test subject 2'});
|
var message2 = build_message_context({subject: 'Test subject 2'});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -149,8 +146,7 @@ set_global('timerender', {
|
|||||||
assert(!message_group2.show_date);
|
assert(!message_group2.show_date);
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group1, message_group2]
|
[message_group1, message_group2]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -162,12 +158,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context({timestamp: 1000});
|
var message1 = build_message_context({timestamp: 1000});
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({timestamp: 900000});
|
var message2 = build_message_context({timestamp: 900000});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -176,8 +172,7 @@ set_global('timerender', {
|
|||||||
assert(message_group2.show_date);
|
assert(message_group2.show_date);
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group1, message_group2]
|
[message_group1, message_group2]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -189,12 +184,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context({historical: false});
|
var message1 = build_message_context({historical: false});
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({historical: true});
|
var message2 = build_message_context({historical: true});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -203,8 +198,7 @@ set_global('timerender', {
|
|||||||
assert(message_group1.bookend_bottom);
|
assert(message_group1.bookend_bottom);
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group1, message_group2]
|
[message_group1, message_group2]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
assert_message_groups_list_equal(result.append_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -216,12 +210,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context();
|
var message1 = build_message_context();
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({is_me_message: true});
|
var message2 = build_message_context({is_me_message: true});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -230,8 +224,7 @@ set_global('timerender', {
|
|||||||
assert(message2.include_sender);
|
assert(message2.include_sender);
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[build_message_group([message1, message2])]
|
[build_message_group([message1, message2])]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -244,12 +237,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context();
|
var message1 = build_message_context();
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context();
|
var message2 = build_message_context();
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -257,13 +250,11 @@ set_global('timerender', {
|
|||||||
|
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[build_message_group([message2, message1])]
|
[build_message_group([message2, message1])]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, []);
|
assert_message_groups_list_equal(result.prepend_groups, []);
|
||||||
assert_message_groups_list_equal(result.rerender_groups,
|
assert_message_groups_list_equal(result.rerender_groups,
|
||||||
[build_message_group([message2, message1])]
|
[build_message_group([message2, message1])]);
|
||||||
);
|
|
||||||
assert_message_list_equal(result.append_messages, []);
|
assert_message_list_equal(result.append_messages, []);
|
||||||
assert_message_list_equal(result.rerender_messages, []);
|
assert_message_list_equal(result.rerender_messages, []);
|
||||||
}());
|
}());
|
||||||
@@ -272,12 +263,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context();
|
var message1 = build_message_context();
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({subject: 'Test Subject 2'});
|
var message2 = build_message_context({subject: 'Test Subject 2'});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -285,8 +276,7 @@ set_global('timerender', {
|
|||||||
|
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group2, message_group1]
|
[message_group2, message_group1]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
@@ -298,12 +288,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context({timestamp: 900000});
|
var message1 = build_message_context({timestamp: 900000});
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({timestamp: 1000});
|
var message2 = build_message_context({timestamp: 1000});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -311,12 +301,10 @@ set_global('timerender', {
|
|||||||
|
|
||||||
assert.equal(
|
assert.equal(
|
||||||
message_group1.show_date,
|
message_group1.show_date,
|
||||||
'900000000 - 1000000'
|
'900000000 - 1000000');
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group2, message_group1]
|
[message_group2, message_group1]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, [message_group1]);
|
assert_message_groups_list_equal(result.rerender_groups, [message_group1]);
|
||||||
@@ -328,12 +316,12 @@ set_global('timerender', {
|
|||||||
|
|
||||||
var message1 = build_message_context({historical: false});
|
var message1 = build_message_context({historical: false});
|
||||||
var message_group1 = build_message_group([
|
var message_group1 = build_message_group([
|
||||||
message1
|
message1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var message2 = build_message_context({historical: true});
|
var message2 = build_message_context({historical: true});
|
||||||
var message_group2 = build_message_group([
|
var message_group2 = build_message_group([
|
||||||
message2
|
message2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
var list = build_list([message_group1]);
|
var list = build_list([message_group1]);
|
||||||
@@ -342,8 +330,7 @@ set_global('timerender', {
|
|||||||
assert(message_group2.bookend_bottom);
|
assert(message_group2.bookend_bottom);
|
||||||
assert_message_groups_list_equal(
|
assert_message_groups_list_equal(
|
||||||
list._message_groups,
|
list._message_groups,
|
||||||
[message_group2, message_group1]
|
[message_group2, message_group1]);
|
||||||
);
|
|
||||||
assert_message_groups_list_equal(result.append_groups, []);
|
assert_message_groups_list_equal(result.append_groups, []);
|
||||||
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
assert_message_groups_list_equal(result.prepend_groups, [message_group2]);
|
||||||
assert_message_groups_list_equal(result.rerender_groups, []);
|
assert_message_groups_list_equal(result.rerender_groups, []);
|
||||||
|
|||||||
@@ -2,42 +2,42 @@ global.stub_out_jquery();
|
|||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var noop = function () {};
|
var noop = function () {};
|
||||||
var people = global.people;
|
var people = global.people;
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
email: 'me@example.com'
|
email: 'me@example.com',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('alert_words', {
|
set_global('alert_words', {
|
||||||
process_message: noop
|
process_message: noop,
|
||||||
});
|
});
|
||||||
|
|
||||||
var me = {
|
var me = {
|
||||||
email: 'me@example.com',
|
email: 'me@example.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
full_name: 'Me Myself'
|
full_name: 'Me Myself',
|
||||||
};
|
};
|
||||||
|
|
||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
user_id: 102,
|
user_id: 102,
|
||||||
full_name: 'Alice'
|
full_name: 'Alice',
|
||||||
};
|
};
|
||||||
|
|
||||||
var bob = {
|
var bob = {
|
||||||
email: 'bob@example.com',
|
email: 'bob@example.com',
|
||||||
user_id: 103,
|
user_id: 103,
|
||||||
full_name: 'Bob'
|
full_name: 'Bob',
|
||||||
};
|
};
|
||||||
|
|
||||||
var cindy = {
|
var cindy = {
|
||||||
email: 'cindy@example.com',
|
email: 'cindy@example.com',
|
||||||
user_id: 104,
|
user_id: 104,
|
||||||
full_name: 'Cindy'
|
full_name: 'Cindy',
|
||||||
};
|
};
|
||||||
|
|
||||||
people.add_in_realm(me);
|
people.add_in_realm(me);
|
||||||
@@ -54,7 +54,7 @@ var message_store = require('js/message_store.js');
|
|||||||
sender_email: 'me@example.com',
|
sender_email: 'me@example.com',
|
||||||
type: 'private',
|
type: 'private',
|
||||||
display_recipient: [me, bob, cindy],
|
display_recipient: [me, bob, cindy],
|
||||||
flags: ['has_alert_word']
|
flags: ['has_alert_word'],
|
||||||
};
|
};
|
||||||
message_store._add_message_metadata(message);
|
message_store._add_message_metadata(message);
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
domain: 'zulip.com'
|
domain: 'zulip.com',
|
||||||
});
|
});
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
unread: 'js/unread.js'
|
unread: 'js/unread.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var muting = require('js/muting.js');
|
var muting = require('js/muting.js');
|
||||||
@@ -42,16 +42,16 @@ var muting = require('js/muting.js');
|
|||||||
muting.mute_topic('devel', 'java');
|
muting.mute_topic('devel', 'java');
|
||||||
assert.deepEqual(muting.get_muted_topics().sort(), [
|
assert.deepEqual(muting.get_muted_topics().sort(), [
|
||||||
['devel', 'java'],
|
['devel', 'java'],
|
||||||
['office', 'gossip']
|
['office', 'gossip'],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
muting.set_muted_topics([
|
muting.set_muted_topics([
|
||||||
['social', 'breakfast'],
|
['social', 'breakfast'],
|
||||||
['design', 'typography']
|
['design', 'typography'],
|
||||||
]);
|
]);
|
||||||
assert.deepEqual(muting.get_muted_topics().sort(), [
|
assert.deepEqual(muting.get_muted_topics().sort(), [
|
||||||
['design', 'typography'],
|
['design', 'typography'],
|
||||||
['social', 'breakfast']
|
['social', 'breakfast'],
|
||||||
]);
|
]);
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ var muting = require('js/muting.js');
|
|||||||
muting.set_muted_topics([]);
|
muting.set_muted_topics([]);
|
||||||
assert(!muting.is_topic_muted('SOCial', 'breakfast'));
|
assert(!muting.is_topic_muted('SOCial', 'breakfast'));
|
||||||
muting.set_muted_topics([
|
muting.set_muted_topics([
|
||||||
['SOCial', 'breakfast']
|
['SOCial', 'breakfast'],
|
||||||
]);
|
]);
|
||||||
assert(muting.is_topic_muted('SOCial', 'breakfast'));
|
assert(muting.is_topic_muted('SOCial', 'breakfast'));
|
||||||
assert(muting.is_topic_muted('social', 'breakfast'));
|
assert(muting.is_topic_muted('social', 'breakfast'));
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
stream_data: 'js/stream_data.js',
|
stream_data: 'js/stream_data.js',
|
||||||
Filter: 'js/filter.js'
|
Filter: 'js/filter.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var narrow = require('js/narrow.js');
|
var narrow = require('js/narrow.js');
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
@@ -8,13 +8,13 @@ var people = require("js/people.js");
|
|||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
people_list: [],
|
people_list: [],
|
||||||
email: 'hamlet@example.com'
|
email: 'hamlet@example.com',
|
||||||
});
|
});
|
||||||
set_global('activity', {
|
set_global('activity', {
|
||||||
set_user_statuses: function () {}
|
set_user_statuses: function () {},
|
||||||
});
|
});
|
||||||
set_global('admin', {
|
set_global('admin', {
|
||||||
show_or_hide_menu_item: function () {}
|
show_or_hide_menu_item: function () {},
|
||||||
});
|
});
|
||||||
|
|
||||||
var _ = global._;
|
var _ = global._;
|
||||||
@@ -23,7 +23,7 @@ var _ = global._;
|
|||||||
var orig_person = {
|
var orig_person = {
|
||||||
email: 'orig@example.com',
|
email: 'orig@example.com',
|
||||||
user_id: 31,
|
user_id: 31,
|
||||||
full_name: 'Original'
|
full_name: 'Original',
|
||||||
};
|
};
|
||||||
people.add(orig_person);
|
people.add(orig_person);
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ var _ = global._;
|
|||||||
var isaac = {
|
var isaac = {
|
||||||
email: email,
|
email: email,
|
||||||
user_id: 32,
|
user_id: 32,
|
||||||
full_name: full_name
|
full_name: full_name,
|
||||||
};
|
};
|
||||||
people.add(isaac);
|
people.add(isaac);
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ var _ = global._;
|
|||||||
var person = {
|
var person = {
|
||||||
email: 'mary@example.com',
|
email: 'mary@example.com',
|
||||||
user_id: 42,
|
user_id: 42,
|
||||||
full_name: 'Mary'
|
full_name: 'Mary',
|
||||||
};
|
};
|
||||||
people.add(person);
|
people.add(person);
|
||||||
person = people.get_by_email('mary@example.com');
|
person = people.get_by_email('mary@example.com');
|
||||||
@@ -107,7 +107,7 @@ var _ = global._;
|
|||||||
person = {
|
person = {
|
||||||
email: 'mary@example.com',
|
email: 'mary@example.com',
|
||||||
user_id: 42,
|
user_id: 42,
|
||||||
full_name: 'Mary New'
|
full_name: 'Mary New',
|
||||||
};
|
};
|
||||||
people.update(person);
|
people.update(person);
|
||||||
person = people.get_person_from_user_id(42);
|
person = people.get_person_from_user_id(42);
|
||||||
@@ -126,23 +126,23 @@ var _ = global._;
|
|||||||
var myself = {
|
var myself = {
|
||||||
email: 'myself@example.com',
|
email: 'myself@example.com',
|
||||||
user_id: 201,
|
user_id: 201,
|
||||||
full_name: 'Yours Truly'
|
full_name: 'Yours Truly',
|
||||||
};
|
};
|
||||||
global.page_params.email = myself.email;
|
global.page_params.email = myself.email;
|
||||||
var alice1 = {
|
var alice1 = {
|
||||||
email: 'alice1@example.com',
|
email: 'alice1@example.com',
|
||||||
user_id: 202,
|
user_id: 202,
|
||||||
full_name: 'Alice'
|
full_name: 'Alice',
|
||||||
};
|
};
|
||||||
var alice2 = {
|
var alice2 = {
|
||||||
email: 'alice2@example.com',
|
email: 'alice2@example.com',
|
||||||
user_id: 203,
|
user_id: 203,
|
||||||
full_name: 'Alice'
|
full_name: 'Alice',
|
||||||
};
|
};
|
||||||
var bob = {
|
var bob = {
|
||||||
email: 'bob@example.com',
|
email: 'bob@example.com',
|
||||||
user_id: 204,
|
user_id: 204,
|
||||||
full_name: 'Bob van Roberts'
|
full_name: 'Bob van Roberts',
|
||||||
};
|
};
|
||||||
people.add_in_realm(myself);
|
people.add_in_realm(myself);
|
||||||
people.add_in_realm(alice1);
|
people.add_in_realm(alice1);
|
||||||
@@ -152,7 +152,7 @@ var _ = global._;
|
|||||||
var expected = [
|
var expected = [
|
||||||
{ email: 'alice1@example.com', full_name: 'Alice' },
|
{ email: 'alice1@example.com', full_name: 'Alice' },
|
||||||
{ email: 'alice2@example.com', full_name: 'Alice' },
|
{ email: 'alice2@example.com', full_name: 'Alice' },
|
||||||
{ email: 'bob@example.com', full_name: 'Bob van Roberts' }
|
{ email: 'bob@example.com', full_name: 'Bob van Roberts' },
|
||||||
];
|
];
|
||||||
assert.deepEqual(others, expected);
|
assert.deepEqual(others, expected);
|
||||||
|
|
||||||
@@ -175,22 +175,22 @@ var _ = global._;
|
|||||||
var charles = {
|
var charles = {
|
||||||
email: 'charles@example.com',
|
email: 'charles@example.com',
|
||||||
user_id: 301,
|
user_id: 301,
|
||||||
full_name: 'Charles Dickens'
|
full_name: 'Charles Dickens',
|
||||||
};
|
};
|
||||||
var maria = {
|
var maria = {
|
||||||
email: 'athens@example.com',
|
email: 'athens@example.com',
|
||||||
user_id: 302,
|
user_id: 302,
|
||||||
full_name: 'Maria Athens'
|
full_name: 'Maria Athens',
|
||||||
};
|
};
|
||||||
var ashton = {
|
var ashton = {
|
||||||
email: 'ashton@example.com',
|
email: 'ashton@example.com',
|
||||||
user_id: 303,
|
user_id: 303,
|
||||||
full_name: 'Ashton Smith'
|
full_name: 'Ashton Smith',
|
||||||
};
|
};
|
||||||
var linus = {
|
var linus = {
|
||||||
email: 'ltorvalds@example.com',
|
email: 'ltorvalds@example.com',
|
||||||
user_id: 304,
|
user_id: 304,
|
||||||
full_name: 'Linus Torvalds'
|
full_name: 'Linus Torvalds',
|
||||||
};
|
};
|
||||||
|
|
||||||
people.add_in_realm(charles);
|
people.add_in_realm(charles);
|
||||||
@@ -203,7 +203,7 @@ var _ = global._;
|
|||||||
var filtered_people = people.filter_people_by_search_terms(users, [search_term]);
|
var filtered_people = people.filter_people_by_search_terms(users, [search_term]);
|
||||||
var expected = [
|
var expected = [
|
||||||
{ email: 'athens@example.com', full_name: 'Maria Athens' },
|
{ email: 'athens@example.com', full_name: 'Maria Athens' },
|
||||||
{ email: 'ashton@example.com', full_name: 'Ashton Smith' }
|
{ email: 'ashton@example.com', full_name: 'Ashton Smith' },
|
||||||
];
|
];
|
||||||
assert.equal(filtered_people["ashton@example.com"], true);
|
assert.equal(filtered_people["ashton@example.com"], true);
|
||||||
assert.equal(filtered_people["athens@example.com"], true);
|
assert.equal(filtered_people["athens@example.com"], true);
|
||||||
@@ -232,12 +232,12 @@ var _ = global._;
|
|||||||
var emp401 = {
|
var emp401 = {
|
||||||
email: 'emp401@example.com',
|
email: 'emp401@example.com',
|
||||||
user_id: 401,
|
user_id: 401,
|
||||||
full_name: 'whatever 401'
|
full_name: 'whatever 401',
|
||||||
};
|
};
|
||||||
var emp402 = {
|
var emp402 = {
|
||||||
email: 'EMP402@example.com',
|
email: 'EMP402@example.com',
|
||||||
user_id: 402,
|
user_id: 402,
|
||||||
full_name: 'whatever 402'
|
full_name: 'whatever 402',
|
||||||
};
|
};
|
||||||
|
|
||||||
people.add_in_realm(emp401);
|
people.add_in_realm(emp401);
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ global.stub_out_jquery();
|
|||||||
set_global('document', {
|
set_global('document', {
|
||||||
hasFocus: function () {
|
hasFocus: function () {
|
||||||
return true;
|
return true;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
set_global('feature_flags', {});
|
set_global('feature_flags', {});
|
||||||
set_global('page_params', {});
|
set_global('page_params', {});
|
||||||
@@ -16,7 +16,7 @@ add_dependencies({
|
|||||||
compose_fade: 'js/compose_fade.js',
|
compose_fade: 'js/compose_fade.js',
|
||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
unread: 'js/unread.js',
|
unread: 'js/unread.js',
|
||||||
activity: 'js/activity.js'
|
activity: 'js/activity.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var compose_fade = require('js/compose_fade.js');
|
var compose_fade = require('js/compose_fade.js');
|
||||||
@@ -42,27 +42,27 @@ var activity = require('js/activity.js');
|
|||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@zulip.com',
|
email: 'alice@zulip.com',
|
||||||
user_id: 1,
|
user_id: 1,
|
||||||
full_name: 'Alice Smith'
|
full_name: 'Alice Smith',
|
||||||
};
|
};
|
||||||
var fred = {
|
var fred = {
|
||||||
email: 'fred@zulip.com',
|
email: 'fred@zulip.com',
|
||||||
user_id: 2,
|
user_id: 2,
|
||||||
full_name: "Fred Flintstone"
|
full_name: "Fred Flintstone",
|
||||||
};
|
};
|
||||||
var jill = {
|
var jill = {
|
||||||
email: 'jill@zulip.com',
|
email: 'jill@zulip.com',
|
||||||
user_id: 3,
|
user_id: 3,
|
||||||
full_name: 'Jill Hill'
|
full_name: 'Jill Hill',
|
||||||
};
|
};
|
||||||
var mark = {
|
var mark = {
|
||||||
email: 'mark@zulip.com',
|
email: 'mark@zulip.com',
|
||||||
user_id: 4,
|
user_id: 4,
|
||||||
full_name: 'Marky Mark'
|
full_name: 'Marky Mark',
|
||||||
};
|
};
|
||||||
var norbert = {
|
var norbert = {
|
||||||
email: 'norbert@zulip.com',
|
email: 'norbert@zulip.com',
|
||||||
user_id: 5,
|
user_id: 5,
|
||||||
full_name: 'Norbert Oswald'
|
full_name: 'Norbert Oswald',
|
||||||
};
|
};
|
||||||
|
|
||||||
global.people.add(alice);
|
global.people.add(alice);
|
||||||
@@ -112,7 +112,7 @@ activity.presence_info[norbert.user_id] = {status: activity.ACTIVE};
|
|||||||
num_unread: 0,
|
num_unread: 0,
|
||||||
type: 'idle',
|
type: 'idle',
|
||||||
type_desc: 'is not active',
|
type_desc: 'is not active',
|
||||||
mobile: undefined }
|
mobile: undefined },
|
||||||
]);
|
]);
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -130,7 +130,7 @@ activity.presence_info[norbert.user_id] = {status: activity.ACTIVE};
|
|||||||
num_unread: 0,
|
num_unread: 0,
|
||||||
type: 'active',
|
type: 'active',
|
||||||
type_desc: 'is active',
|
type_desc: 'is active',
|
||||||
mobile: undefined }
|
mobile: undefined },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// Test if user index in presence_info is the expected one
|
// Test if user index in presence_info is the expected one
|
||||||
@@ -147,7 +147,7 @@ activity.presence_info[norbert.user_id] = {status: activity.ACTIVE};
|
|||||||
num_unread: 0,
|
num_unread: 0,
|
||||||
type: 'active',
|
type: 'active',
|
||||||
type_desc: 'is active',
|
type_desc: 'is active',
|
||||||
mobile: undefined }
|
mobile: undefined },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
all_users = activity._filter_and_sort(activity.presence_info);
|
all_users = activity._filter_and_sort(activity.presence_info);
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ add_dependencies({
|
|||||||
typeahead_helper: 'js/typeahead_helper.js',
|
typeahead_helper: 'js/typeahead_helper.js',
|
||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
stream_data: 'js/stream_data.js',
|
stream_data: 'js/stream_data.js',
|
||||||
narrow: 'js/narrow.js'
|
narrow: 'js/narrow.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var people = global.people;
|
var people = global.people;
|
||||||
@@ -22,7 +22,7 @@ var people = global.people;
|
|||||||
var search = require('js/search_suggestion.js');
|
var search = require('js/search_suggestion.js');
|
||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
email: 'bob@zulip.com'
|
email: 'bob@zulip.com',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('narrow', {});
|
set_global('narrow', {});
|
||||||
@@ -43,7 +43,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
var suggestions = search.get_suggestions(query);
|
var suggestions = search.get_suggestions(query);
|
||||||
|
|
||||||
var expected = [
|
var expected = [
|
||||||
'fred'
|
'fred',
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
}());
|
}());
|
||||||
@@ -64,7 +64,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
var expected = [
|
var expected = [
|
||||||
"stream:Denmark topic:Hamlet shakespeare",
|
"stream:Denmark topic:Hamlet shakespeare",
|
||||||
"stream:Denmark topic:Hamlet",
|
"stream:Denmark topic:Hamlet",
|
||||||
"stream:Denmark"
|
"stream:Denmark",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
@@ -83,14 +83,14 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
{
|
{
|
||||||
email: 'ted@zulip.com',
|
email: 'ted@zulip.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
full_name: 'Ted Smith'
|
full_name: 'Ted Smith',
|
||||||
};
|
};
|
||||||
|
|
||||||
var alice =
|
var alice =
|
||||||
{
|
{
|
||||||
email: 'alice@zulip.com',
|
email: 'alice@zulip.com',
|
||||||
user_id: 102,
|
user_id: 102,
|
||||||
full_name: 'Alice Ignore'
|
full_name: 'Alice Ignore',
|
||||||
};
|
};
|
||||||
|
|
||||||
people.add(ted);
|
people.add(ted);
|
||||||
@@ -101,7 +101,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
var expected = [
|
var expected = [
|
||||||
"is:private",
|
"is:private",
|
||||||
"pm-with:alice@zulip.com",
|
"pm-with:alice@zulip.com",
|
||||||
"pm-with:ted@zulip.com"
|
"pm-with:ted@zulip.com",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -110,7 +110,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"is:private al",
|
"is:private al",
|
||||||
"pm-with:alice@zulip.com",
|
"pm-with:alice@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -119,7 +119,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"pm-with:t",
|
"pm-with:t",
|
||||||
"pm-with:ted@zulip.com",
|
"pm-with:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -128,7 +128,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"-pm-with:t",
|
"-pm-with:t",
|
||||||
"is:private -pm-with:ted@zulip.com",
|
"is:private -pm-with:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -136,7 +136,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
suggestions = search.get_suggestions(query);
|
suggestions = search.get_suggestions(query);
|
||||||
expected = [
|
expected = [
|
||||||
"pm-with:ted@zulip.com",
|
"pm-with:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -145,7 +145,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"sender:ted",
|
"sender:ted",
|
||||||
"sender:ted@zulip.com",
|
"sender:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -154,7 +154,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"sender:te",
|
"sender:te",
|
||||||
"sender:ted@zulip.com",
|
"sender:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -163,7 +163,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"-sender:te",
|
"-sender:te",
|
||||||
"is:private -sender:ted@zulip.com",
|
"is:private -sender:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
suggestions = search.get_suggestions(query);
|
suggestions = search.get_suggestions(query);
|
||||||
expected = [
|
expected = [
|
||||||
"sender:ted@zulip.com",
|
"sender:ted@zulip.com",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -181,7 +181,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
suggestions = search.get_suggestions(query);
|
suggestions = search.get_suggestions(query);
|
||||||
expected = [
|
expected = [
|
||||||
"is:private near:3",
|
"is:private near:3",
|
||||||
"is:private"
|
"is:private",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -189,7 +189,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
suggestions = search.get_suggestions(query);
|
suggestions = search.get_suggestions(query);
|
||||||
expected = [
|
expected = [
|
||||||
"pm-with:ted@zulip.com near:3",
|
"pm-with:ted@zulip.com near:3",
|
||||||
"pm-with:ted@zulip.com"
|
"pm-with:ted@zulip.com",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -219,7 +219,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
"is:alerted",
|
"is:alerted",
|
||||||
"sender:bob@zulip.com",
|
"sender:bob@zulip.com",
|
||||||
"stream:devel",
|
"stream:devel",
|
||||||
"stream:office"
|
"stream:office",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
@@ -250,20 +250,20 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
|
|
||||||
global.stream_data.populate_stream_topics_for_tests({
|
global.stream_data.populate_stream_topics_for_tests({
|
||||||
devel: [
|
devel: [
|
||||||
{subject: 'REXX'}
|
{subject: 'REXX'},
|
||||||
],
|
],
|
||||||
office: [
|
office: [
|
||||||
{subject: 'team'},
|
{subject: 'team'},
|
||||||
{subject: 'ignore'},
|
{subject: 'ignore'},
|
||||||
{subject: 'test'}
|
{subject: 'test'},
|
||||||
]
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
suggestions = search.get_suggestions('te');
|
suggestions = search.get_suggestions('te');
|
||||||
expected = [
|
expected = [
|
||||||
"te",
|
"te",
|
||||||
"stream:office topic:team",
|
"stream:office topic:team",
|
||||||
"stream:office topic:test"
|
"stream:office topic:test",
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -276,7 +276,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
suggestions = search.get_suggestions('topic:staplers stream:office');
|
suggestions = search.get_suggestions('topic:staplers stream:office');
|
||||||
expected = [
|
expected = [
|
||||||
'topic:staplers stream:office',
|
'topic:staplers stream:office',
|
||||||
'topic:staplers'
|
'topic:staplers',
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -284,7 +284,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
'stream:devel topic:',
|
'stream:devel topic:',
|
||||||
'stream:devel topic:REXX',
|
'stream:devel topic:REXX',
|
||||||
'stream:devel'
|
'stream:devel',
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
'stream:devel -topic:',
|
'stream:devel -topic:',
|
||||||
'stream:devel -topic:REXX',
|
'stream:devel -topic:REXX',
|
||||||
'stream:devel'
|
'stream:devel',
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|
||||||
@@ -300,7 +300,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
'-topic:te',
|
'-topic:te',
|
||||||
'stream:office -topic:team',
|
'stream:office -topic:team',
|
||||||
'stream:office -topic:test'
|
'stream:office -topic:test',
|
||||||
];
|
];
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
}());
|
}());
|
||||||
@@ -321,7 +321,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
var suggestions = search.get_suggestions(query);
|
var suggestions = search.get_suggestions(query);
|
||||||
|
|
||||||
var expected = [
|
var expected = [
|
||||||
"stream:office"
|
"stream:office",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
@@ -344,7 +344,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
|
|
||||||
var expected = [
|
var expected = [
|
||||||
"stream:of",
|
"stream:of",
|
||||||
"stream:office"
|
"stream:office",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
@@ -364,19 +364,19 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
var ted = {
|
var ted = {
|
||||||
email: 'ted@zulip.com',
|
email: 'ted@zulip.com',
|
||||||
user_id: 201,
|
user_id: 201,
|
||||||
full_name: 'Ted Smith'
|
full_name: 'Ted Smith',
|
||||||
};
|
};
|
||||||
|
|
||||||
var bob = {
|
var bob = {
|
||||||
email: 'bob@zulip.com',
|
email: 'bob@zulip.com',
|
||||||
user_id: 202,
|
user_id: 202,
|
||||||
full_name: 'Bob Terry'
|
full_name: 'Bob Terry',
|
||||||
};
|
};
|
||||||
|
|
||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@zulip.com',
|
email: 'alice@zulip.com',
|
||||||
user_id: 203,
|
user_id: 203,
|
||||||
full_name: 'Alice Ignore'
|
full_name: 'Alice Ignore',
|
||||||
};
|
};
|
||||||
people.add(ted);
|
people.add(ted);
|
||||||
people.add(bob);
|
people.add(bob);
|
||||||
@@ -387,8 +387,8 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
office: [
|
office: [
|
||||||
{subject: 'team'},
|
{subject: 'team'},
|
||||||
{subject: 'ignore'},
|
{subject: 'ignore'},
|
||||||
{subject: 'test'}
|
{subject: 'test'},
|
||||||
]
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
var suggestions = search.get_suggestions(query);
|
var suggestions = search.get_suggestions(query);
|
||||||
@@ -398,7 +398,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
"pm-with:bob@zulip.com", // bob TErry
|
"pm-with:bob@zulip.com", // bob TErry
|
||||||
"pm-with:ted@zulip.com",
|
"pm-with:ted@zulip.com",
|
||||||
"sender:bob@zulip.com",
|
"sender:bob@zulip.com",
|
||||||
"sender:ted@zulip.com"
|
"sender:ted@zulip.com",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
@@ -415,7 +415,7 @@ global.stream_data.populate_stream_topics_for_tests({});
|
|||||||
expected = [
|
expected = [
|
||||||
"Ted",
|
"Ted",
|
||||||
"pm-with:ted@zulip.com",
|
"pm-with:ted@zulip.com",
|
||||||
"sender:ted@zulip.com"
|
"sender:ted@zulip.com",
|
||||||
];
|
];
|
||||||
|
|
||||||
assert.deepEqual(suggestions.strings, expected);
|
assert.deepEqual(suggestions.strings, expected);
|
||||||
|
|||||||
@@ -3,14 +3,14 @@ var _ = global._;
|
|||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js',
|
util: 'js/util.js',
|
||||||
tutorial: 'js/tutorial.js'
|
tutorial: 'js/tutorial.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var noop = function () {};
|
var noop = function () {};
|
||||||
|
|
||||||
set_global('document', {});
|
set_global('document', {});
|
||||||
set_global('window', {
|
set_global('window', {
|
||||||
addEventListener: noop
|
addEventListener: noop,
|
||||||
});
|
});
|
||||||
|
|
||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
@@ -19,11 +19,11 @@ set_global('blueslip', {});
|
|||||||
set_global('channel', {});
|
set_global('channel', {});
|
||||||
set_global('home_msg_list', {
|
set_global('home_msg_list', {
|
||||||
select_id: noop,
|
select_id: noop,
|
||||||
selected_id: function () {return 1;}
|
selected_id: function () {return 1;},
|
||||||
});
|
});
|
||||||
set_global('page_params', {test_suite: false});
|
set_global('page_params', {test_suite: false});
|
||||||
set_global('reload', {
|
set_global('reload', {
|
||||||
is_in_progress: function () {return false;}
|
is_in_progress: function () {return false;},
|
||||||
});
|
});
|
||||||
|
|
||||||
var page_params = global.page_params;
|
var page_params = global.page_params;
|
||||||
@@ -32,7 +32,7 @@ set_global('echo', {
|
|||||||
process_from_server: function (messages) {
|
process_from_server: function (messages) {
|
||||||
return messages;
|
return messages;
|
||||||
},
|
},
|
||||||
set_realm_filters: noop
|
set_realm_filters: noop,
|
||||||
});
|
});
|
||||||
|
|
||||||
var server_events = require('js/server_events.js');
|
var server_events = require('js/server_events.js');
|
||||||
@@ -47,12 +47,12 @@ var setup = function (results) {
|
|||||||
},
|
},
|
||||||
update_messages: function () {
|
update_messages: function () {
|
||||||
throw Error('update error');
|
throw Error('update error');
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
set_global('subs', {
|
set_global('subs', {
|
||||||
update_subscription_properties: function () {
|
update_subscription_properties: function () {
|
||||||
throw Error('subs update error');
|
throw Error('subs update error');
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
global.blueslip.error = function (msg, more_info, stack) {
|
global.blueslip.error = function (msg, more_info, stack) {
|
||||||
results.msg = msg;
|
results.msg = msg;
|
||||||
|
|||||||
@@ -2,13 +2,13 @@ global.stub_out_jquery();
|
|||||||
|
|
||||||
set_global('page_params', {
|
set_global('page_params', {
|
||||||
is_admin: false,
|
is_admin: false,
|
||||||
people_list: []
|
people_list: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
stream_color: 'js/stream_color.js',
|
stream_color: 'js/stream_color.js',
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('blueslip', {});
|
set_global('blueslip', {});
|
||||||
@@ -22,7 +22,7 @@ var people = global.people;
|
|||||||
color: 'blue',
|
color: 'blue',
|
||||||
name: 'Denmark',
|
name: 'Denmark',
|
||||||
stream_id: 1,
|
stream_id: 1,
|
||||||
in_home_view: false
|
in_home_view: false,
|
||||||
};
|
};
|
||||||
var social = {
|
var social = {
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
@@ -30,7 +30,7 @@ var people = global.people;
|
|||||||
name: 'social',
|
name: 'social',
|
||||||
stream_id: 2,
|
stream_id: 2,
|
||||||
in_home_view: true,
|
in_home_view: true,
|
||||||
invite_only: true
|
invite_only: true,
|
||||||
};
|
};
|
||||||
var test = {
|
var test = {
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
@@ -38,7 +38,7 @@ var people = global.people;
|
|||||||
name: 'test',
|
name: 'test',
|
||||||
stream_id: 3,
|
stream_id: 3,
|
||||||
in_home_view: false,
|
in_home_view: false,
|
||||||
invite_only: false
|
invite_only: false,
|
||||||
};
|
};
|
||||||
stream_data.add_sub('Denmark', denmark);
|
stream_data.add_sub('Denmark', denmark);
|
||||||
stream_data.add_sub('social', social);
|
stream_data.add_sub('social', social);
|
||||||
@@ -77,7 +77,7 @@ var people = global.people;
|
|||||||
name: 'Denmark',
|
name: 'Denmark',
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
color: 'red',
|
color: 'red',
|
||||||
stream_id: id
|
stream_id: id,
|
||||||
};
|
};
|
||||||
stream_data.add_sub('Denmark', sub);
|
stream_data.add_sub('Denmark', sub);
|
||||||
sub = stream_data.get_sub('Denmark');
|
sub = stream_data.get_sub('Denmark');
|
||||||
@@ -98,7 +98,7 @@ var people = global.people;
|
|||||||
var me = {
|
var me = {
|
||||||
email: 'me@zulip.com',
|
email: 'me@zulip.com',
|
||||||
full_name: 'Current User',
|
full_name: 'Current User',
|
||||||
user_id: 81
|
user_id: 81,
|
||||||
};
|
};
|
||||||
|
|
||||||
// set up user data
|
// set up user data
|
||||||
@@ -132,17 +132,17 @@ var people = global.people;
|
|||||||
var fred = {
|
var fred = {
|
||||||
email: 'fred@zulip.com',
|
email: 'fred@zulip.com',
|
||||||
full_name: 'Fred',
|
full_name: 'Fred',
|
||||||
user_id: 101
|
user_id: 101,
|
||||||
};
|
};
|
||||||
var not_fred = {
|
var not_fred = {
|
||||||
email: 'not_fred@zulip.com',
|
email: 'not_fred@zulip.com',
|
||||||
full_name: 'Not Fred',
|
full_name: 'Not Fred',
|
||||||
user_id: 102
|
user_id: 102,
|
||||||
};
|
};
|
||||||
var george = {
|
var george = {
|
||||||
email: 'george@zulip.com',
|
email: 'george@zulip.com',
|
||||||
full_name: 'George',
|
full_name: 'George',
|
||||||
user_id: 103
|
user_id: 103,
|
||||||
};
|
};
|
||||||
people.add(fred);
|
people.add(fred);
|
||||||
people.add(not_fred);
|
people.add(not_fred);
|
||||||
@@ -160,7 +160,7 @@ var people = global.people;
|
|||||||
var brutus = {
|
var brutus = {
|
||||||
email: email,
|
email: email,
|
||||||
full_name: 'Brutus',
|
full_name: 'Brutus',
|
||||||
user_id: 104
|
user_id: 104,
|
||||||
};
|
};
|
||||||
people.add(brutus);
|
people.add(brutus);
|
||||||
assert(!stream_data.user_is_subscribed('Rome', email));
|
assert(!stream_data.user_is_subscribed('Rome', email));
|
||||||
@@ -218,7 +218,7 @@ var people = global.people;
|
|||||||
var message = {
|
var message = {
|
||||||
stream: 'Rome',
|
stream: 'Rome',
|
||||||
timestamp: 101,
|
timestamp: 101,
|
||||||
subject: 'toPic1'
|
subject: 'toPic1',
|
||||||
};
|
};
|
||||||
stream_data.process_message_for_recent_topics(message);
|
stream_data.process_message_for_recent_topics(message);
|
||||||
|
|
||||||
@@ -228,14 +228,14 @@ var people = global.people;
|
|||||||
subject: 'toPic1',
|
subject: 'toPic1',
|
||||||
canon_subject: 'topic1',
|
canon_subject: 'topic1',
|
||||||
count: 1,
|
count: 1,
|
||||||
timestamp: 101
|
timestamp: 101,
|
||||||
}
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
message = {
|
message = {
|
||||||
stream: 'Rome',
|
stream: 'Rome',
|
||||||
timestamp: 102,
|
timestamp: 102,
|
||||||
subject: 'Topic1'
|
subject: 'Topic1',
|
||||||
};
|
};
|
||||||
stream_data.process_message_for_recent_topics(message);
|
stream_data.process_message_for_recent_topics(message);
|
||||||
history = stream_data.get_recent_topics('Rome');
|
history = stream_data.get_recent_topics('Rome');
|
||||||
@@ -244,14 +244,14 @@ var people = global.people;
|
|||||||
subject: 'Topic1',
|
subject: 'Topic1',
|
||||||
canon_subject: 'topic1',
|
canon_subject: 'topic1',
|
||||||
count: 2,
|
count: 2,
|
||||||
timestamp: 102
|
timestamp: 102,
|
||||||
}
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
message = {
|
message = {
|
||||||
stream: 'Rome',
|
stream: 'Rome',
|
||||||
timestamp: 103,
|
timestamp: 103,
|
||||||
subject: 'topic2'
|
subject: 'topic2',
|
||||||
};
|
};
|
||||||
stream_data.process_message_for_recent_topics(message);
|
stream_data.process_message_for_recent_topics(message);
|
||||||
history = stream_data.get_recent_topics('Rome');
|
history = stream_data.get_recent_topics('Rome');
|
||||||
@@ -260,14 +260,14 @@ var people = global.people;
|
|||||||
subject: 'topic2',
|
subject: 'topic2',
|
||||||
canon_subject: 'topic2',
|
canon_subject: 'topic2',
|
||||||
count: 1,
|
count: 1,
|
||||||
timestamp: 103
|
timestamp: 103,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
subject: 'Topic1',
|
subject: 'Topic1',
|
||||||
canon_subject: 'topic1',
|
canon_subject: 'topic1',
|
||||||
count: 2,
|
count: 2,
|
||||||
timestamp: 102
|
timestamp: 102,
|
||||||
}
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
stream_data.process_message_for_recent_topics(message, true);
|
stream_data.process_message_for_recent_topics(message, true);
|
||||||
@@ -277,8 +277,8 @@ var people = global.people;
|
|||||||
subject: 'Topic1',
|
subject: 'Topic1',
|
||||||
canon_subject: 'topic1',
|
canon_subject: 'topic1',
|
||||||
count: 2,
|
count: 2,
|
||||||
timestamp: 102
|
timestamp: 102,
|
||||||
}
|
},
|
||||||
]);
|
]);
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -290,7 +290,7 @@ var people = global.people;
|
|||||||
name: 'stream_to_admin',
|
name: 'stream_to_admin',
|
||||||
stream_id: 1,
|
stream_id: 1,
|
||||||
in_home_view: false,
|
in_home_view: false,
|
||||||
invite_only: false
|
invite_only: false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -339,21 +339,21 @@ var people = global.people;
|
|||||||
stream_id: 1,
|
stream_id: 1,
|
||||||
name: 'c',
|
name: 'c',
|
||||||
color: 'cinnamon',
|
color: 'cinnamon',
|
||||||
subscribed: true
|
subscribed: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
var blue = {
|
var blue = {
|
||||||
stream_id: 2,
|
stream_id: 2,
|
||||||
name: 'b',
|
name: 'b',
|
||||||
color: 'blue',
|
color: 'blue',
|
||||||
subscribed: false
|
subscribed: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
var amber = {
|
var amber = {
|
||||||
stream_id: 3,
|
stream_id: 3,
|
||||||
name: 'a',
|
name: 'a',
|
||||||
color: 'amber',
|
color: 'amber',
|
||||||
subscribed: true
|
subscribed: true,
|
||||||
};
|
};
|
||||||
stream_data.clear_subscriptions();
|
stream_data.clear_subscriptions();
|
||||||
stream_data.add_sub(cinnamon.name, cinnamon);
|
stream_data.add_sub(cinnamon.name, cinnamon);
|
||||||
|
|||||||
@@ -10,12 +10,12 @@ add_dependencies({
|
|||||||
stream_data: 'js/stream_data',
|
stream_data: 'js/stream_data',
|
||||||
subs: 'js/subs',
|
subs: 'js/subs',
|
||||||
util: 'js/util',
|
util: 'js/util',
|
||||||
hashchange: 'js/hashchange'
|
hashchange: 'js/hashchange',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('unread', {});
|
set_global('unread', {});
|
||||||
set_global('message_store', {
|
set_global('message_store', {
|
||||||
recent_private_messages: new global.Array()
|
recent_private_messages: new global.Array(),
|
||||||
});
|
});
|
||||||
|
|
||||||
// TODO: move pm_list-related tests to their own module
|
// TODO: move pm_list-related tests to their own module
|
||||||
@@ -37,12 +37,12 @@ global.compile_template('stream_privacy');
|
|||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@zulip.com',
|
email: 'alice@zulip.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
full_name: 'Alice'
|
full_name: 'Alice',
|
||||||
};
|
};
|
||||||
var bob = {
|
var bob = {
|
||||||
email: 'bob@zulip.com',
|
email: 'bob@zulip.com',
|
||||||
user_id: 102,
|
user_id: 102,
|
||||||
full_name: 'Bob'
|
full_name: 'Bob',
|
||||||
};
|
};
|
||||||
global.people.add_in_realm(alice);
|
global.people.add_in_realm(alice);
|
||||||
global.people.add_in_realm(bob);
|
global.people.add_in_realm(bob);
|
||||||
@@ -88,7 +88,7 @@ function clear_filters() {
|
|||||||
stream_id: 100,
|
stream_id: 100,
|
||||||
color: 'blue',
|
color: 'blue',
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
id: 5
|
id: 5,
|
||||||
};
|
};
|
||||||
global.stream_data.add_sub('devel', devel);
|
global.stream_data.add_sub('devel', devel);
|
||||||
|
|
||||||
@@ -97,7 +97,7 @@ function clear_filters() {
|
|||||||
stream_id: 200,
|
stream_id: 200,
|
||||||
color: 'green',
|
color: 'green',
|
||||||
subscribed: true,
|
subscribed: true,
|
||||||
id: 6
|
id: 6,
|
||||||
};
|
};
|
||||||
global.stream_data.add_sub('social', social);
|
global.stream_data.add_sub('social', social);
|
||||||
|
|
||||||
@@ -135,7 +135,7 @@ function clear_filters() {
|
|||||||
color: 'blue',
|
color: 'blue',
|
||||||
id: 5,
|
id: 5,
|
||||||
pin_to_top: false,
|
pin_to_top: false,
|
||||||
subscribed: true
|
subscribed: true,
|
||||||
};
|
};
|
||||||
stream_list.create_sidebar_row(develSub);
|
stream_list.create_sidebar_row(develSub);
|
||||||
global.stream_data.add_sub('devel', develSub);
|
global.stream_data.add_sub('devel', develSub);
|
||||||
@@ -146,7 +146,7 @@ function clear_filters() {
|
|||||||
color: 'green',
|
color: 'green',
|
||||||
id: 6,
|
id: 6,
|
||||||
pin_to_top: true,
|
pin_to_top: true,
|
||||||
subscribed: true
|
subscribed: true,
|
||||||
};
|
};
|
||||||
stream_list.create_sidebar_row(socialSub);
|
stream_list.create_sidebar_row(socialSub);
|
||||||
global.stream_data.add_sub('social', socialSub);
|
global.stream_data.add_sub('social', socialSub);
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
set_global('page_params', {realm_emoji: {
|
set_global('page_params', {realm_emoji: {
|
||||||
burrito: {display_url: '/static/third/gemoji/images/emoji/burrito.png',
|
burrito: {display_url: '/static/third/gemoji/images/emoji/burrito.png',
|
||||||
source_url: '/static/third/gemoji/images/emoji/burrito.png'}
|
source_url: '/static/third/gemoji/images/emoji/burrito.png'},
|
||||||
}});
|
}});
|
||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
Handlebars: 'handlebars',
|
Handlebars: 'handlebars',
|
||||||
templates: 'js/templates',
|
templates: 'js/templates',
|
||||||
emoji: 'js/emoji',
|
emoji: 'js/emoji',
|
||||||
i18n: 'i18next'
|
i18n: 'i18next',
|
||||||
});
|
});
|
||||||
|
|
||||||
var i18n = global.i18n;
|
var i18n = global.i18n;
|
||||||
@@ -16,9 +16,9 @@ i18n.init({
|
|||||||
keySeparator: false,
|
keySeparator: false,
|
||||||
interpolation: {
|
interpolation: {
|
||||||
prefix: "__",
|
prefix: "__",
|
||||||
suffix: "__"
|
suffix: "__",
|
||||||
},
|
},
|
||||||
lng: 'en'
|
lng: 'en',
|
||||||
});
|
});
|
||||||
|
|
||||||
var jsdom = require("jsdom");
|
var jsdom = require("jsdom");
|
||||||
@@ -43,7 +43,7 @@ function render(template_name, args) {
|
|||||||
'notification-settings',
|
'notification-settings',
|
||||||
'bot-settings',
|
'bot-settings',
|
||||||
'alert-word-settings',
|
'alert-word-settings',
|
||||||
'ui-settings'
|
'ui-settings',
|
||||||
]);
|
]);
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -78,11 +78,11 @@ function render(template_name, args) {
|
|||||||
id: "99",
|
id: "99",
|
||||||
stream: "devel",
|
stream: "devel",
|
||||||
subject: "testing",
|
subject: "testing",
|
||||||
sender_full_name: "King Lear"
|
sender_full_name: "King Lear",
|
||||||
},
|
},
|
||||||
can_edit_message: true,
|
can_edit_message: true,
|
||||||
can_mute_topic: true,
|
can_mute_topic: true,
|
||||||
narrowed: true
|
narrowed: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '<div style="height: 250px">';
|
var html = '<div style="height: 250px">';
|
||||||
@@ -111,8 +111,8 @@ function render(template_name, args) {
|
|||||||
emoji: {
|
emoji: {
|
||||||
name: "MouseFace",
|
name: "MouseFace",
|
||||||
display_url: "http://emojipedia-us.s3.amazonaws.com/cache/46/7f/467fe69069c408e07517621f263ea9b5.png",
|
display_url: "http://emojipedia-us.s3.amazonaws.com/cache/46/7f/467fe69069c408e07517621f263ea9b5.png",
|
||||||
source_url: "http://emojipedia-us.s3.amazonaws.com/cache/46/7f/467fe69069c408e07517621f263ea9b5.png"
|
source_url: "http://emojipedia-us.s3.amazonaws.com/cache/46/7f/467fe69069c408e07517621f263ea9b5.png",
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -133,8 +133,8 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
filter: {
|
filter: {
|
||||||
pattern: "#(?P<id>[0-9]+)",
|
pattern: "#(?P<id>[0-9]+)",
|
||||||
url_format_string: "https://trac.example.com/ticket/%(id)s"
|
url_format_string: "https://trac.example.com/ticket/%(id)s",
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -166,7 +166,7 @@ function render(template_name, args) {
|
|||||||
|
|
||||||
(function admin_tab() {
|
(function admin_tab() {
|
||||||
var args = {
|
var args = {
|
||||||
realm_name: 'Zulip'
|
realm_name: 'Zulip',
|
||||||
};
|
};
|
||||||
var html = render('admin_tab', args);
|
var html = render('admin_tab', args);
|
||||||
var admin_features = ["admin_users_table", "admin_bots_table",
|
var admin_features = ["admin_users_table", "admin_bots_table",
|
||||||
@@ -187,8 +187,8 @@ function render(template_name, args) {
|
|||||||
is_active: true,
|
is_active: true,
|
||||||
is_active_human: true,
|
is_active_human: true,
|
||||||
email: user + '@zulip.com',
|
email: user + '@zulip.com',
|
||||||
full_name: user
|
full_name: user,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
html += render('admin_user_list', args);
|
html += render('admin_user_list', args);
|
||||||
});
|
});
|
||||||
@@ -213,7 +213,7 @@ function render(template_name, args) {
|
|||||||
var words = ['lunch', 'support'];
|
var words = ['lunch', 'support'];
|
||||||
_.each(words, function (word) {
|
_.each(words, function (word) {
|
||||||
var args = {
|
var args = {
|
||||||
word: word
|
word: word,
|
||||||
};
|
};
|
||||||
html += render('alert_word_settings_item', args);
|
html += render('alert_word_settings_item', args);
|
||||||
});
|
});
|
||||||
@@ -230,7 +230,7 @@ function render(template_name, args) {
|
|||||||
|
|
||||||
(function bankruptcy_modal() {
|
(function bankruptcy_modal() {
|
||||||
var args = {
|
var args = {
|
||||||
unread_count: 99
|
unread_count: 99,
|
||||||
};
|
};
|
||||||
var html = render('bankruptcy_modal', args);
|
var html = render('bankruptcy_modal', args);
|
||||||
global.write_handlebars_output("bankruptcy_modal", html);
|
global.write_handlebars_output("bankruptcy_modal", html);
|
||||||
@@ -242,8 +242,8 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
method: {
|
method: {
|
||||||
method: "Email",
|
method: "Email",
|
||||||
enabled: false
|
enabled: false,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -263,7 +263,7 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
bookend_content: "subscribed to stream",
|
bookend_content: "subscribed to stream",
|
||||||
trailing: true,
|
trailing: true,
|
||||||
subscribed: true
|
subscribed: true,
|
||||||
};
|
};
|
||||||
var html;
|
var html;
|
||||||
var all_html = '';
|
var all_html = '';
|
||||||
@@ -277,7 +277,7 @@ function render(template_name, args) {
|
|||||||
args = {
|
args = {
|
||||||
bookend_content: "Not subscribed to stream",
|
bookend_content: "Not subscribed to stream",
|
||||||
trailing: true,
|
trailing: true,
|
||||||
subscribed: false
|
subscribed: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
html = render('bookend', args);
|
html = render('bookend', args);
|
||||||
@@ -299,7 +299,7 @@ function render(template_name, args) {
|
|||||||
email: "hamlet@zulip.com",
|
email: "hamlet@zulip.com",
|
||||||
api_key: "123456ABCD",
|
api_key: "123456ABCD",
|
||||||
name: "Hamlet",
|
name: "Hamlet",
|
||||||
avatar_url: "/hamlet/avatar/url"
|
avatar_url: "/hamlet/avatar/url",
|
||||||
};
|
};
|
||||||
html += render('bot_avatar_row', args);
|
html += render('bot_avatar_row', args);
|
||||||
html += '</ol>';
|
html += '</ol>';
|
||||||
@@ -315,7 +315,7 @@ function render(template_name, args) {
|
|||||||
(function compose_invite_users() {
|
(function compose_invite_users() {
|
||||||
var args = {
|
var args = {
|
||||||
email: 'hamlet@zulip.com',
|
email: 'hamlet@zulip.com',
|
||||||
name: 'Hamlet'
|
name: 'Hamlet',
|
||||||
};
|
};
|
||||||
var html = render('compose-invite-users', args);
|
var html = render('compose-invite-users', args);
|
||||||
global.write_handlebars_output("compose-invite-users", html);
|
global.write_handlebars_output("compose-invite-users", html);
|
||||||
@@ -326,7 +326,7 @@ function render(template_name, args) {
|
|||||||
(function compose_all_everyone() {
|
(function compose_all_everyone() {
|
||||||
var args = {
|
var args = {
|
||||||
count: '101',
|
count: '101',
|
||||||
name: 'all'
|
name: 'all',
|
||||||
};
|
};
|
||||||
var html = render('compose_all_everyone', args);
|
var html = render('compose_all_everyone', args);
|
||||||
global.write_handlebars_output("compose_all_everyone", html);
|
global.write_handlebars_output("compose_all_everyone", html);
|
||||||
@@ -341,7 +341,7 @@ function render(template_name, args) {
|
|||||||
note: "You sent a message to a muted topic.",
|
note: "You sent a message to a muted topic.",
|
||||||
link_text: "Narrow to here",
|
link_text: "Narrow to here",
|
||||||
link_msg_id: "99",
|
link_msg_id: "99",
|
||||||
link_class: "compose_notification_narrow_by_subject"
|
link_class: "compose_notification_narrow_by_subject",
|
||||||
};
|
};
|
||||||
var html = '<div id="out-of-view-notification" class="notification-alert">';
|
var html = '<div id="out-of-view-notification" class="notification-alert">';
|
||||||
html += render('compose_notification', args);
|
html += render('compose_notification', args);
|
||||||
@@ -360,7 +360,7 @@ function render(template_name, args) {
|
|||||||
|
|
||||||
(function emoji_popover_content() {
|
(function emoji_popover_content() {
|
||||||
var args = {
|
var args = {
|
||||||
emoji_list: global.emoji.emojis_name_to_css_class
|
emoji_list: global.emoji.emojis_name_to_css_class,
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '<div style="height: 250px">';
|
var html = '<div style="height: 250px">';
|
||||||
@@ -379,9 +379,9 @@ function render(template_name, args) {
|
|||||||
fraction_present: 0.1,
|
fraction_present: 0.1,
|
||||||
emails: "alice@zulip.com,bob@zulip.com",
|
emails: "alice@zulip.com,bob@zulip.com",
|
||||||
short_name: "Alice and Bob",
|
short_name: "Alice and Bob",
|
||||||
name: "Alice and Bob"
|
name: "Alice and Bob",
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
var html = render('group_pms', args);
|
var html = render('group_pms', args);
|
||||||
global.write_handlebars_output("group_pms", html);
|
global.write_handlebars_output("group_pms", html);
|
||||||
@@ -394,12 +394,12 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
streams: [
|
streams: [
|
||||||
{
|
{
|
||||||
name: "devel"
|
name: "devel",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "social"
|
name: "social",
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
var html = render('invite_subscription', args);
|
var html = render('invite_subscription', args);
|
||||||
global.write_handlebars_output("invite_subscription", html);
|
global.write_handlebars_output("invite_subscription", html);
|
||||||
@@ -417,8 +417,8 @@ function render(template_name, args) {
|
|||||||
is_stream: true,
|
is_stream: true,
|
||||||
content: 'This is message one.',
|
content: 'This is message one.',
|
||||||
last_edit_timestr: '11:00',
|
last_edit_timestr: '11:00',
|
||||||
starred: true
|
starred: true,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('single_message', message);
|
var html = render('single_message', message);
|
||||||
@@ -439,7 +439,7 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
topic: "lunch",
|
topic: "lunch",
|
||||||
content: "Let's go to lunch!",
|
content: "Let's go to lunch!",
|
||||||
is_stream: true
|
is_stream: true,
|
||||||
};
|
};
|
||||||
var html = render('message_edit_form', args);
|
var html = render('message_edit_form', args);
|
||||||
global.write_handlebars_output("message_edit_form", html);
|
global.write_handlebars_output("message_edit_form", html);
|
||||||
@@ -456,11 +456,11 @@ function render(template_name, args) {
|
|||||||
match_content: 'This is message one.',
|
match_content: 'This is message one.',
|
||||||
starred: true,
|
starred: true,
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
content: 'This is message one.'
|
content: 'This is message one.',
|
||||||
},
|
},
|
||||||
include_recipient: true,
|
include_recipient: true,
|
||||||
display_recipient: 'devel',
|
display_recipient: 'devel',
|
||||||
last_edit_timestr: '11:00'
|
last_edit_timestr: '11:00',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
msg: {
|
msg: {
|
||||||
@@ -468,9 +468,9 @@ function render(template_name, args) {
|
|||||||
match_content: 'This is message <span class="highlight">two</span>.',
|
match_content: 'This is message <span class="highlight">two</span>.',
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
unread: true,
|
unread: true,
|
||||||
id: 2
|
id: 2,
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
var groups = [
|
var groups = [
|
||||||
@@ -481,8 +481,8 @@ function render(template_name, args) {
|
|||||||
message_containers: messages,
|
message_containers: messages,
|
||||||
show_date: '"<span id="timerender82">Jan 07</span>"',
|
show_date: '"<span id="timerender82">Jan 07</span>"',
|
||||||
subject: 'two messages',
|
subject: 'two messages',
|
||||||
match_subject: '<span class="highlight">two</span> messages'
|
match_subject: '<span class="highlight">two</span> messages',
|
||||||
}
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
var html = render('message_group', {message_groups: groups, use_match_properties: true});
|
var html = render('message_group', {message_groups: groups, use_match_properties: true});
|
||||||
@@ -505,10 +505,10 @@ function render(template_name, args) {
|
|||||||
full_date_str: 'Monday',
|
full_date_str: 'Monday',
|
||||||
full_time_str: '12:00',
|
full_time_str: '12:00',
|
||||||
sender_full_name: 'Alice Smith',
|
sender_full_name: 'Alice Smith',
|
||||||
sender_email: 'alice@zulip.com'
|
sender_email: 'alice@zulip.com',
|
||||||
},
|
},
|
||||||
sent_by_uri: '/sent_by/uri',
|
sent_by_uri: '/sent_by/uri',
|
||||||
pm_with_uri: '/pm_with/uri'
|
pm_with_uri: '/pm_with/uri',
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('message_info_popover_content', args);
|
var html = render('message_info_popover_content', args);
|
||||||
@@ -523,8 +523,8 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
message: {
|
message: {
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
stream: 'devel'
|
stream: 'devel',
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('message_info_popover_title', args);
|
var html = render('message_info_popover_title', args);
|
||||||
@@ -539,13 +539,13 @@ function render(template_name, args) {
|
|||||||
users: [
|
users: [
|
||||||
{
|
{
|
||||||
email: 'lear@zulip.com',
|
email: 'lear@zulip.com',
|
||||||
full_name: 'King Lear'
|
full_name: 'King Lear',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
email: 'othello@zulip.com',
|
email: 'othello@zulip.com',
|
||||||
full_name: 'Othello the Moor'
|
full_name: 'Othello the Moor',
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('new_stream_users', args);
|
var html = render('new_stream_users', args);
|
||||||
@@ -559,7 +559,7 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
content: "Hello",
|
content: "Hello",
|
||||||
gravatar_url: "/gravatar/url",
|
gravatar_url: "/gravatar/url",
|
||||||
title: "You have a notification"
|
title: "You have a notification",
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('notification', args);
|
var html = render('notification', args);
|
||||||
@@ -585,12 +585,12 @@ function render(template_name, args) {
|
|||||||
sounds_enabled: true, enable_offline_email_notifications: true,
|
sounds_enabled: true, enable_offline_email_notifications: true,
|
||||||
enable_offline_push_notifications: true, enable_online_push_notifications: true,
|
enable_offline_push_notifications: true, enable_online_push_notifications: true,
|
||||||
enable_digest_emails: true,
|
enable_digest_emails: true,
|
||||||
autoscroll_forever: true, default_desktop_notifications: true
|
autoscroll_forever: true, default_desktop_notifications: true,
|
||||||
};
|
};
|
||||||
var page_params = $.extend(page_param_checkbox_options, {
|
var page_params = $.extend(page_param_checkbox_options, {
|
||||||
fullname: "Alyssa P. Hacker", password_auth_enabled: true,
|
fullname: "Alyssa P. Hacker", password_auth_enabled: true,
|
||||||
avatar_url: "https://google.com",
|
avatar_url: "https://google.com",
|
||||||
domain: "zulip.com"
|
domain: "zulip.com",
|
||||||
});
|
});
|
||||||
|
|
||||||
var checkbox_ids = ["enable_stream_desktop_notifications",
|
var checkbox_ids = ["enable_stream_desktop_notifications",
|
||||||
@@ -628,9 +628,9 @@ function render(template_name, args) {
|
|||||||
want_show_more_messages_links: true,
|
want_show_more_messages_links: true,
|
||||||
messages: [
|
messages: [
|
||||||
{
|
{
|
||||||
recipients: "alice,bob"
|
recipients: "alice,bob",
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -673,8 +673,8 @@ function render(template_name, args) {
|
|||||||
color: 'red',
|
color: 'red',
|
||||||
name: 'devel',
|
name: 'devel',
|
||||||
in_home_view: true,
|
in_home_view: true,
|
||||||
id: 55
|
id: 55,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('stream_sidebar_actions', args);
|
var html = render('stream_sidebar_actions', args);
|
||||||
@@ -690,7 +690,7 @@ function render(template_name, args) {
|
|||||||
color: "red",
|
color: "red",
|
||||||
dark_background: "maroon",
|
dark_background: "maroon",
|
||||||
uri: "/devel/uri",
|
uri: "/devel/uri",
|
||||||
id: 999
|
id: 999,
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '<ul id="stream_filters">';
|
var html = '<ul id="stream_filters">';
|
||||||
@@ -719,14 +719,14 @@ function render(template_name, args) {
|
|||||||
can_make_private: true, /* not logical, but that's ok */
|
can_make_private: true, /* not logical, but that's ok */
|
||||||
email_address: 'xxxxxxxxxxxxxxx@zulip.com',
|
email_address: 'xxxxxxxxxxxxxxx@zulip.com',
|
||||||
id: 888,
|
id: 888,
|
||||||
in_home_view: true
|
in_home_view: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'social',
|
name: 'social',
|
||||||
color: 'green',
|
color: 'green',
|
||||||
id: 999
|
id: 999,
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -754,15 +754,15 @@ function render(template_name, args) {
|
|||||||
cls: 'root',
|
cls: 'root',
|
||||||
title: 'Home',
|
title: 'Home',
|
||||||
hash: '#',
|
hash: '#',
|
||||||
data: 'home'
|
data: 'home',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
cls: 'stream',
|
cls: 'stream',
|
||||||
title: 'Devel',
|
title: 'Devel',
|
||||||
hash: '/stream/uri',
|
hash: '/stream/uri',
|
||||||
data: 'devel'
|
data: 'devel',
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('tab_bar', args);
|
var html = render('tab_bar', args);
|
||||||
@@ -787,7 +787,7 @@ function render(template_name, args) {
|
|||||||
is_muted: false,
|
is_muted: false,
|
||||||
topic_name: 'lunch',
|
topic_name: 'lunch',
|
||||||
url: '/lunch/url',
|
url: '/lunch/url',
|
||||||
unread: 5
|
unread: 5,
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('topic_list_item', args);
|
var html = render('topic_list_item', args);
|
||||||
@@ -802,7 +802,7 @@ function render(template_name, args) {
|
|||||||
var args = {
|
var args = {
|
||||||
stream_name: 'social',
|
stream_name: 'social',
|
||||||
topic_name: 'lunch',
|
topic_name: 'lunch',
|
||||||
can_mute_topic: true
|
can_mute_topic: true,
|
||||||
};
|
};
|
||||||
var html = render('topic_sidebar_actions', args);
|
var html = render('topic_sidebar_actions', args);
|
||||||
|
|
||||||
@@ -820,13 +820,13 @@ function render(template_name, args) {
|
|||||||
'tutorial_reply',
|
'tutorial_reply',
|
||||||
'tutorial_stream',
|
'tutorial_stream',
|
||||||
'tutorial_subject',
|
'tutorial_subject',
|
||||||
'tutorial_title'
|
'tutorial_title',
|
||||||
];
|
];
|
||||||
var html = '';
|
var html = '';
|
||||||
_.each(tutorials, function (tutorial) {
|
_.each(tutorials, function (tutorial) {
|
||||||
var args = {
|
var args = {
|
||||||
placement: 'left',
|
placement: 'left',
|
||||||
title: 'Title'
|
title: 'Title',
|
||||||
};
|
};
|
||||||
html = render(tutorial, args);
|
html = render(tutorial, args);
|
||||||
global.write_handlebars_output(tutorial, html);
|
global.write_handlebars_output(tutorial, html);
|
||||||
@@ -842,16 +842,16 @@ function render(template_name, args) {
|
|||||||
type: "active",
|
type: "active",
|
||||||
num_unread: 0,
|
num_unread: 0,
|
||||||
email: "lear@zulip.com",
|
email: "lear@zulip.com",
|
||||||
name: "King Lear"
|
name: "King Lear",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type_desc: "Away",
|
type_desc: "Away",
|
||||||
type: "away",
|
type: "away",
|
||||||
num_unread: 5,
|
num_unread: 5,
|
||||||
email: "othello@zulip.com",
|
email: "othello@zulip.com",
|
||||||
name: "Othello"
|
name: "Othello",
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
@@ -868,7 +868,7 @@ function render(template_name, args) {
|
|||||||
(function user_sidebar_actions() {
|
(function user_sidebar_actions() {
|
||||||
var args = {
|
var args = {
|
||||||
email: 'hamlet@zulip.com',
|
email: 'hamlet@zulip.com',
|
||||||
name: 'Hamlet'
|
name: 'Hamlet',
|
||||||
};
|
};
|
||||||
|
|
||||||
var html = render('user_sidebar_actions', args);
|
var html = render('user_sidebar_actions', args);
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ add_dependencies({
|
|||||||
muting: 'js/muting',
|
muting: 'js/muting',
|
||||||
narrow: 'js/narrow',
|
narrow: 'js/narrow',
|
||||||
stream_data: 'js/stream_data',
|
stream_data: 'js/stream_data',
|
||||||
templates: 'js/templates'
|
templates: 'js/templates',
|
||||||
});
|
});
|
||||||
|
|
||||||
set_global('unread', {});
|
set_global('unread', {});
|
||||||
@@ -23,7 +23,7 @@ global.compile_template('topic_list_item');
|
|||||||
var max_topics = 5;
|
var max_topics = 5;
|
||||||
|
|
||||||
var topics = [
|
var topics = [
|
||||||
{subject: "coding"}
|
{subject: "coding"},
|
||||||
];
|
];
|
||||||
global.stream_data.populate_stream_topics_for_tests({devel: topics});
|
global.stream_data.populate_stream_topics_for_tests({devel: topics});
|
||||||
global.unread.num_unread_for_subject = function () {
|
global.unread.num_unread_for_subject = function () {
|
||||||
|
|||||||
@@ -12,13 +12,13 @@ global.stub_out_jquery();
|
|||||||
add_dependencies({
|
add_dependencies({
|
||||||
muting: 'js/muting.js',
|
muting: 'js/muting.js',
|
||||||
people: 'js/people.js',
|
people: 'js/people.js',
|
||||||
unread: 'js/unread.js'
|
unread: 'js/unread.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var stream_data = require('js/stream_data.js');
|
var stream_data = require('js/stream_data.js');
|
||||||
|
|
||||||
stream_data = {
|
stream_data = {
|
||||||
canonicalized_name: stream_data.canonicalized_name
|
canonicalized_name: stream_data.canonicalized_name,
|
||||||
};
|
};
|
||||||
set_global('stream_data', stream_data);
|
set_global('stream_data', stream_data);
|
||||||
set_global('blueslip', {});
|
set_global('blueslip', {});
|
||||||
@@ -45,7 +45,7 @@ var zero_counts = {
|
|||||||
stream_count: new Dict(),
|
stream_count: new Dict(),
|
||||||
subject_count: new Dict(),
|
subject_count: new Dict(),
|
||||||
pm_count: new Dict(),
|
pm_count: new Dict(),
|
||||||
unread_in_current_view: 0
|
unread_in_current_view: 0,
|
||||||
};
|
};
|
||||||
|
|
||||||
(function test_empty_counts_while_narrowed() {
|
(function test_empty_counts_while_narrowed() {
|
||||||
@@ -82,14 +82,14 @@ var zero_counts = {
|
|||||||
id: 15,
|
id: 15,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch'
|
subject: 'lunch',
|
||||||
};
|
};
|
||||||
|
|
||||||
var other_message = {
|
var other_message = {
|
||||||
id: 16,
|
id: 16,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch'
|
subject: 'lunch',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.process_loaded_messages([message, other_message]);
|
unread.process_loaded_messages([message, other_message]);
|
||||||
@@ -98,7 +98,7 @@ var zero_counts = {
|
|||||||
assert.equal(count, 2);
|
assert.equal(count, 2);
|
||||||
|
|
||||||
var event = {
|
var event = {
|
||||||
subject: 'dinner'
|
subject: 'dinner',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.update_unread_topics(message, event);
|
unread.update_unread_topics(message, event);
|
||||||
@@ -110,7 +110,7 @@ var zero_counts = {
|
|||||||
assert.equal(count, 1);
|
assert.equal(count, 1);
|
||||||
|
|
||||||
event = {
|
event = {
|
||||||
subject: 'snack'
|
subject: 'snack',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.update_unread_topics(other_message, event);
|
unread.update_unread_topics(other_message, event);
|
||||||
@@ -127,10 +127,10 @@ var zero_counts = {
|
|||||||
id: 18,
|
id: 18,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch'
|
subject: 'lunch',
|
||||||
};
|
};
|
||||||
event = {
|
event = {
|
||||||
subject: 'brunch'
|
subject: 'brunch',
|
||||||
};
|
};
|
||||||
unread.update_unread_topics(other_message, event);
|
unread.update_unread_topics(other_message, event);
|
||||||
|
|
||||||
@@ -161,7 +161,7 @@ var zero_counts = {
|
|||||||
id: 15,
|
id: 15,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'test_muting'
|
subject: 'test_muting',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.process_loaded_messages([message]);
|
unread.process_loaded_messages([message]);
|
||||||
@@ -186,7 +186,7 @@ var zero_counts = {
|
|||||||
var message = {
|
var message = {
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch'
|
subject: 'lunch',
|
||||||
};
|
};
|
||||||
|
|
||||||
var num_msgs = 10000;
|
var num_msgs = 10000;
|
||||||
@@ -224,7 +224,7 @@ var zero_counts = {
|
|||||||
id: 15,
|
id: 15,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch'
|
subject: 'lunch',
|
||||||
};
|
};
|
||||||
|
|
||||||
home_msg_list.get = function (msg_id) {
|
home_msg_list.get = function (msg_id) {
|
||||||
@@ -261,7 +261,7 @@ var zero_counts = {
|
|||||||
id: 999,
|
id: 999,
|
||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'foo',
|
stream: 'foo',
|
||||||
subject: 'phantom'
|
subject: 'phantom',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.process_read_message(message);
|
unread.process_read_message(message);
|
||||||
@@ -283,13 +283,13 @@ var zero_counts = {
|
|||||||
var message = {
|
var message = {
|
||||||
id: 15,
|
id: 15,
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: 'anybody@example.com'
|
reply_to: 'anybody@example.com',
|
||||||
};
|
};
|
||||||
|
|
||||||
var anybody = {
|
var anybody = {
|
||||||
email: 'anybody@example.com',
|
email: 'anybody@example.com',
|
||||||
user_id: 999,
|
user_id: 999,
|
||||||
full_name: 'Any Body'
|
full_name: 'Any Body',
|
||||||
};
|
};
|
||||||
people.add_in_realm(anybody);
|
people.add_in_realm(anybody);
|
||||||
|
|
||||||
@@ -308,14 +308,14 @@ var zero_counts = {
|
|||||||
var alice = {
|
var alice = {
|
||||||
email: 'alice@example.com',
|
email: 'alice@example.com',
|
||||||
user_id: 101,
|
user_id: 101,
|
||||||
full_name: 'Alice'
|
full_name: 'Alice',
|
||||||
};
|
};
|
||||||
people.add_in_realm(alice);
|
people.add_in_realm(alice);
|
||||||
|
|
||||||
var bob = {
|
var bob = {
|
||||||
email: 'bob@example.com',
|
email: 'bob@example.com',
|
||||||
user_id: 102,
|
user_id: 102,
|
||||||
full_name: 'Bob'
|
full_name: 'Bob',
|
||||||
};
|
};
|
||||||
people.add_in_realm(bob);
|
people.add_in_realm(bob);
|
||||||
|
|
||||||
@@ -325,11 +325,11 @@ var zero_counts = {
|
|||||||
var message = {
|
var message = {
|
||||||
id: 15,
|
id: 15,
|
||||||
reply_to: 'alice@example.com',
|
reply_to: 'alice@example.com',
|
||||||
type: 'private'
|
type: 'private',
|
||||||
};
|
};
|
||||||
|
|
||||||
var read_message = {
|
var read_message = {
|
||||||
flags: ['read']
|
flags: ['read'],
|
||||||
};
|
};
|
||||||
unread.process_loaded_messages([message, read_message]);
|
unread.process_loaded_messages([message, read_message]);
|
||||||
assert.equal(unread.num_unread_for_person(alice.user_id), 1);
|
assert.equal(unread.num_unread_for_person(alice.user_id), 1);
|
||||||
@@ -352,7 +352,7 @@ var zero_counts = {
|
|||||||
type: 'stream',
|
type: 'stream',
|
||||||
stream: 'social',
|
stream: 'social',
|
||||||
subject: 'lunch',
|
subject: 'lunch',
|
||||||
mentioned: true
|
mentioned: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.process_loaded_messages([message]);
|
unread.process_loaded_messages([message]);
|
||||||
@@ -376,7 +376,7 @@ var zero_counts = {
|
|||||||
assert.equal(count, 0);
|
assert.equal(count, 0);
|
||||||
|
|
||||||
var message = {
|
var message = {
|
||||||
id: 15
|
id: 15,
|
||||||
};
|
};
|
||||||
current_msg_list.all_messages = function () {
|
current_msg_list.all_messages = function () {
|
||||||
return [message];
|
return [message];
|
||||||
@@ -410,7 +410,7 @@ var zero_counts = {
|
|||||||
var message = {
|
var message = {
|
||||||
id: 9,
|
id: 9,
|
||||||
type: 'private',
|
type: 'private',
|
||||||
reply_to: 'unknown@zulip.com'
|
reply_to: 'unknown@zulip.com',
|
||||||
};
|
};
|
||||||
|
|
||||||
unread.process_read_message(message);
|
unread.process_read_message(message);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
global.stub_out_jquery();
|
global.stub_out_jquery();
|
||||||
|
|
||||||
add_dependencies({
|
add_dependencies({
|
||||||
util: 'js/util.js'
|
util: 'js/util.js',
|
||||||
});
|
});
|
||||||
|
|
||||||
var util = global.util;
|
var util = global.util;
|
||||||
@@ -13,7 +13,7 @@ var _ = global._;
|
|||||||
var cv = new util.CachedValue({
|
var cv = new util.CachedValue({
|
||||||
compute_value: function () {
|
compute_value: function () {
|
||||||
return x * 2;
|
return x * 2;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.equal(cv.get(), 10);
|
assert.equal(cv.get(), 10);
|
||||||
@@ -55,39 +55,32 @@ var _ = global._;
|
|||||||
_.each([util.same_recipient, util.same_major_recipient], function (same) {
|
_.each([util.same_recipient, util.same_major_recipient], function (same) {
|
||||||
assert(same(
|
assert(same(
|
||||||
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
||||||
{type: 'stream', stream: 'fOO', subject: 'bar'}
|
{type: 'stream', stream: 'fOO', subject: 'bar'}));
|
||||||
));
|
|
||||||
|
|
||||||
assert(!same(
|
assert(!same(
|
||||||
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
||||||
{type: 'stream', stream: 'yo', subject: 'whatever'}
|
{type: 'stream', stream: 'yo', subject: 'whatever'}));
|
||||||
));
|
|
||||||
|
|
||||||
assert(same(
|
assert(same(
|
||||||
{type: 'private', reply_to: 'fred@zulip.com,melissa@zulip.com'},
|
{type: 'private', reply_to: 'fred@zulip.com,melissa@zulip.com'},
|
||||||
{type: 'private', reply_to: 'fred@zulip.com,melissa@zulip.com'}
|
{type: 'private', reply_to: 'fred@zulip.com,melissa@zulip.com'}));
|
||||||
));
|
|
||||||
|
|
||||||
assert(same(
|
assert(same(
|
||||||
{type: 'private', reply_to: 'fred@zulip.com'},
|
{type: 'private', reply_to: 'fred@zulip.com'},
|
||||||
{type: 'private', reply_to: 'Fred@zulip.com'}
|
{type: 'private', reply_to: 'Fred@zulip.com'}));
|
||||||
));
|
|
||||||
|
|
||||||
assert(!same(
|
assert(!same(
|
||||||
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
{type: 'stream', stream: 'Foo', subject: 'Bar'},
|
||||||
{type: 'private', reply_to: 'Fred@zulip.com'}
|
{type: 'private', reply_to: 'Fred@zulip.com'}));
|
||||||
));
|
|
||||||
});
|
});
|
||||||
|
|
||||||
assert(util.same_major_recipient(
|
assert(util.same_major_recipient(
|
||||||
{type: 'stream', stream: 'Foo', subject: 'sub1'},
|
{type: 'stream', stream: 'Foo', subject: 'sub1'},
|
||||||
{type: 'stream', stream: 'fOO', subject: 'sub2'}
|
{type: 'stream', stream: 'fOO', subject: 'sub2'}));
|
||||||
));
|
|
||||||
|
|
||||||
assert(!util.same_recipient(
|
assert(!util.same_recipient(
|
||||||
{type: 'stream', stream: 'Foo', subject: 'sub1'},
|
{type: 'stream', stream: 'Foo', subject: 'sub1'},
|
||||||
{type: 'stream', stream: 'fOO', subject: 'sub2'}
|
{type: 'stream', stream: 'fOO', subject: 'sub2'}));
|
||||||
));
|
|
||||||
|
|
||||||
}());
|
}());
|
||||||
|
|
||||||
@@ -108,8 +101,7 @@ var _ = global._;
|
|||||||
(function test_normalize_recipients() {
|
(function test_normalize_recipients() {
|
||||||
assert.equal(
|
assert.equal(
|
||||||
util.normalize_recipients('ZOE@foo.com, bob@foo.com, alice@foo.com, AARON@foo.com '),
|
util.normalize_recipients('ZOE@foo.com, bob@foo.com, alice@foo.com, AARON@foo.com '),
|
||||||
'aaron@foo.com,alice@foo.com,bob@foo.com,zoe@foo.com'
|
'aaron@foo.com,alice@foo.com,bob@foo.com,zoe@foo.com');
|
||||||
);
|
|
||||||
}());
|
}());
|
||||||
|
|
||||||
(function test_random_int() {
|
(function test_random_int() {
|
||||||
@@ -160,7 +152,7 @@ var _ = global._;
|
|||||||
'@**all**',
|
'@**all**',
|
||||||
'some text before @**all** some text after',
|
'some text before @**all** some text after',
|
||||||
'@**all** some text after only',
|
'@**all** some text after only',
|
||||||
'some text before only @**all**'
|
'some text before only @**all**',
|
||||||
];
|
];
|
||||||
|
|
||||||
var messages_with_everyone_mentions = [
|
var messages_with_everyone_mentions = [
|
||||||
@@ -171,21 +163,21 @@ var _ = global._;
|
|||||||
'@**everyone**',
|
'@**everyone**',
|
||||||
'some text before @**everyone** some text after',
|
'some text before @**everyone** some text after',
|
||||||
'@**everyone** some text after only',
|
'@**everyone** some text after only',
|
||||||
'some text before only @**everyone**'
|
'some text before only @**everyone**',
|
||||||
];
|
];
|
||||||
|
|
||||||
var messages_without_all_mentions = [
|
var messages_without_all_mentions = [
|
||||||
'`@everyone`',
|
'`@everyone`',
|
||||||
'some_email@everyone.com',
|
'some_email@everyone.com',
|
||||||
'`@**everyone**`',
|
'`@**everyone**`',
|
||||||
'some_email@**everyone**.com'
|
'some_email@**everyone**.com',
|
||||||
];
|
];
|
||||||
|
|
||||||
var messages_without_everyone_mentions = [
|
var messages_without_everyone_mentions = [
|
||||||
'`@everyone`',
|
'`@everyone`',
|
||||||
'some_email@everyone.com',
|
'some_email@everyone.com',
|
||||||
'`@**everyone**`',
|
'`@**everyone**`',
|
||||||
'some_email@**everyone**.com'
|
'some_email@**everyone**.com',
|
||||||
];
|
];
|
||||||
var i;
|
var i;
|
||||||
for (i=0; i<messages_with_all_mentions.length; i += 1) {
|
for (i=0; i<messages_with_all_mentions.length; i += 1) {
|
||||||
|
|||||||
Reference in New Issue
Block a user