implemented mime mode
- required for picoserve - moved testdata
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
use dir_embed::Embed;
|
||||
|
||||
#[derive(Embed)]
|
||||
#[dir = "./../testdata/"]
|
||||
#[dir = "./../testdata/bytes/"]
|
||||
#[mode = "bytes"]
|
||||
pub struct Assets;
|
||||
|
||||
@@ -41,3 +41,9 @@ fn byte_sub_directories_content() {
|
||||
let content_is = Assets::get("sub/file2.txt").unwrap();
|
||||
assert_eq!(*content_is, *content_should);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn byte_read_bin() {
|
||||
let file = Assets::get("bin").unwrap();
|
||||
assert_eq!(file, [0xDE, 0xAD, 0xBE, 0xEF]);
|
||||
}
|
||||
|
||||
61
tests/mime.rs
Normal file
61
tests/mime.rs
Normal file
@@ -0,0 +1,61 @@
|
||||
use dir_embed::Embed;
|
||||
|
||||
#[derive(Embed)]
|
||||
#[dir = "./../testdata/bytes/"]
|
||||
#[mode = "mime"]
|
||||
pub struct Assets;
|
||||
|
||||
#[test]
|
||||
fn mime_get() {
|
||||
assert!(Assets::get("file1.txt").is_some());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_get_missing() {
|
||||
assert!(Assets::get("missing.txt").is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_read_content() {
|
||||
let content_should = "file1".as_bytes();
|
||||
let content_is = Assets::get("file1.txt").unwrap();
|
||||
assert_eq!(*content_is.0, *content_should);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_parse_string() {
|
||||
let file: &[u8] = Assets::get("file1.txt").expect("Can't find file").0;
|
||||
let string = str::from_utf8(file).expect("Failed to parse file");
|
||||
|
||||
assert_eq!(string, "file1");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_sub_directories_get() {
|
||||
assert!(Assets::get("sub/file2.txt").is_some());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_sub_directories_content() {
|
||||
let content_should = "file2".as_bytes();
|
||||
let content_is = Assets::get("sub/file2.txt").unwrap();
|
||||
assert_eq!(*content_is.0, *content_should);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_type_html() {
|
||||
let file = Assets::get("index.html").unwrap();
|
||||
assert_eq!(file.1, "text/html");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_type_plain() {
|
||||
let file = Assets::get("file1.txt").unwrap();
|
||||
assert_eq!(file.1, "text/plain");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn mime_default_type() {
|
||||
let file = Assets::get("bin").unwrap();
|
||||
assert_eq!(file.1, "application/octet-stream");
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
use dir_embed::Embed;
|
||||
|
||||
#[derive(Embed)]
|
||||
#[dir = "./../testdata/"]
|
||||
#[dir = "./../testdata/str/"]
|
||||
#[mode = "str"]
|
||||
pub struct Assets;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user