Merge pull request #1809 from deltachat/test-get-width-height

add a higher-level test for dc_get_filemeta()
This commit is contained in:
bjoern
2020-08-10 11:56:23 +02:00
committed by GitHub

View File

@@ -1732,6 +1732,7 @@ pub async fn dc_empty_server(context: &Context, flags: u32) {
#[cfg(test)]
mod tests {
use super::*;
use crate::chat::ChatItem;
use crate::test_utils as test;
#[test]
@@ -1874,4 +1875,35 @@ mod tests {
assert_eq!(webrtc_type, VideochatType::Jitsi);
assert_eq!(url, "https://j.si/foo");
}
#[async_std::test]
async fn test_get_width_height() {
let t = test::TestContext::new().await;
// test that get_width() and get_height() are returning some dimensions for images;
// (as the device-chat contains a welcome-images, we check that)
t.ctx.update_device_chats().await.ok();
let (device_chat_id, _) =
chat::create_or_lookup_by_contact_id(&t.ctx, DC_CONTACT_ID_DEVICE, Blocked::Not)
.await
.unwrap();
let mut has_image = false;
let chatitems = chat::get_chat_msgs(&t.ctx, device_chat_id, 0, None).await;
for chatitem in chatitems {
if let ChatItem::Message { msg_id } = chatitem {
if let Ok(msg) = Message::load_from_db(&t.ctx, msg_id.clone()).await {
if msg.get_viewtype() == Viewtype::Image {
has_image = true;
// just check that width/height are inside some reasonable ranges
assert!(msg.get_width() > 100);
assert!(msg.get_height() > 100);
assert!(msg.get_width() < 4000);
assert!(msg.get_height() < 4000);
}
}
}
}
assert!(has_image);
}
}