mirror of
https://github.com/chatmail/core.git
synced 2026-05-07 08:56:30 +03:00
check that recoding of jpg and png files actually works
This commit is contained in:
committed by
Alexander Krotov
parent
42f7abf2f5
commit
f7b23fb0e2
@@ -190,7 +190,9 @@ mod tests {
|
|||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
use std::string::ToString;
|
use std::string::ToString;
|
||||||
|
|
||||||
|
use crate::constants::AVATAR_SIZE;
|
||||||
use crate::test_utils::*;
|
use crate::test_utils::*;
|
||||||
|
use image::GenericImageView;
|
||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
use std::io::Write;
|
use std::io::Write;
|
||||||
|
|
||||||
@@ -229,21 +231,38 @@ mod tests {
|
|||||||
assert!(std::fs::metadata(&avatar_blob).unwrap().len() < avatar_bytes.len() as u64);
|
assert!(std::fs::metadata(&avatar_blob).unwrap().len() < avatar_bytes.len() as u64);
|
||||||
let avatar_cfg = t.ctx.get_config(Config::Selfavatar);
|
let avatar_cfg = t.ctx.get_config(Config::Selfavatar);
|
||||||
assert_eq!(avatar_cfg, avatar_blob.to_str().map(|s| s.to_string()));
|
assert_eq!(avatar_cfg, avatar_blob.to_str().map(|s| s.to_string()));
|
||||||
|
|
||||||
|
let img = image::open(avatar_src).unwrap();
|
||||||
|
assert_eq!(img.width(), 1000);
|
||||||
|
assert_eq!(img.height(), 1000);
|
||||||
|
|
||||||
|
let img = image::open(avatar_blob).unwrap();
|
||||||
|
assert_eq!(img.width(), AVATAR_SIZE);
|
||||||
|
assert_eq!(img.height(), AVATAR_SIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_selfavatar_in_blobdir() {
|
fn test_selfavatar_in_blobdir() {
|
||||||
let t = dummy_context();
|
let t = dummy_context();
|
||||||
let avatar_src = t.ctx.get_blobdir().join("avatar.jpg");
|
let avatar_src = t.ctx.get_blobdir().join("avatar.png");
|
||||||
let avatar_bytes = include_bytes!("../test-data/image/avatar1000x1000.jpg");
|
let avatar_bytes = include_bytes!("../test-data/image/avatar900x900.png");
|
||||||
File::create(&avatar_src)
|
File::create(&avatar_src)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.write_all(avatar_bytes)
|
.write_all(avatar_bytes)
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
|
let img = image::open(&avatar_src).unwrap();
|
||||||
|
assert_eq!(img.width(), 900);
|
||||||
|
assert_eq!(img.height(), 900);
|
||||||
|
|
||||||
t.ctx
|
t.ctx
|
||||||
.set_config(Config::Selfavatar, Some(&avatar_src.to_str().unwrap()))
|
.set_config(Config::Selfavatar, Some(&avatar_src.to_str().unwrap()))
|
||||||
.unwrap();
|
.unwrap();
|
||||||
let avatar_cfg = t.ctx.get_config(Config::Selfavatar);
|
let avatar_cfg = t.ctx.get_config(Config::Selfavatar);
|
||||||
assert_eq!(avatar_cfg, avatar_src.to_str().map(|s| s.to_string()));
|
assert_eq!(avatar_cfg, avatar_src.to_str().map(|s| s.to_string()));
|
||||||
|
|
||||||
|
let img = image::open(avatar_src).unwrap();
|
||||||
|
assert_eq!(img.width(), AVATAR_SIZE);
|
||||||
|
assert_eq!(img.height(), AVATAR_SIZE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
test-data/image/avatar900x900.png
Normal file
BIN
test-data/image/avatar900x900.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
Reference in New Issue
Block a user