mirror of https://github.com/zulip/zulip.git
79 lines
1.8 KiB
JavaScript
79 lines
1.8 KiB
JavaScript
zrequire('rows');
|
|
zrequire('lightbox');
|
|
|
|
set_global('message_store', {});
|
|
set_global('Image', class Image {});
|
|
set_global('overlays', {
|
|
close_overlay: () => {},
|
|
close_active: () => {},
|
|
open_overlay: () => {},
|
|
});
|
|
set_global('popovers', {
|
|
hide_all: () => {},
|
|
});
|
|
|
|
rows.is_draft_row = () => false;
|
|
|
|
set_global('$', global.make_zjquery());
|
|
|
|
run_test('pan_and_zoom', () => {
|
|
$.clear_all_elements();
|
|
|
|
const img = $.create('img-stub');
|
|
const link = $.create('link-stub');
|
|
const msg = $.create('msg-stub');
|
|
|
|
$(img).closest = () => [];
|
|
|
|
img.set_parent(link);
|
|
link.closest = () => msg;
|
|
msg.attr("zid", "1234");
|
|
img.attr("src", "example");
|
|
|
|
let fetched_zid;
|
|
|
|
message_store.get = (zid) => {
|
|
fetched_zid = zid;
|
|
return 'message-stub';
|
|
};
|
|
|
|
// Used by render_lightbox_list_images
|
|
$.stub_selector('.focused_table .message_inline_image img', []);
|
|
|
|
lightbox.open(img);
|
|
|
|
assert.equal(fetched_zid, 1234);
|
|
});
|
|
|
|
run_test('youtube', () => {
|
|
$.clear_all_elements();
|
|
|
|
const href = 'https://youtube.com/some-random-clip';
|
|
const img = $.create('img-stub');
|
|
const link = $.create('link-stub');
|
|
const msg = $.create('msg-stub');
|
|
|
|
msg.attr("zid", "4321");
|
|
|
|
$(img).attr('src', href);
|
|
|
|
$(img).closest = (sel) => {
|
|
if (sel === '.youtube-video') {
|
|
// We just need a nonempty array to
|
|
// set is_youtube_video to true.
|
|
return ['whatever'];
|
|
}
|
|
return [];
|
|
};
|
|
|
|
img.set_parent(link);
|
|
link.closest = () => msg;
|
|
link.attr('href', href);
|
|
|
|
// Used by render_lightbox_list_images
|
|
$.stub_selector('.focused_table .message_inline_image img', []);
|
|
|
|
lightbox.open(img);
|
|
assert.equal($('.image-actions .open').attr('href'), href);
|
|
});
|