add testing crate with emailparse bin
parent
d772d10d66
commit
8a07087393
|
@ -21,4 +21,4 @@ lto = true
|
||||||
debug = true
|
debug = true
|
||||||
|
|
||||||
[workspace]
|
[workspace]
|
||||||
members = ["melib", "ui", "debug_printer"]
|
members = ["melib", "ui", "debug_printer", "testing"]
|
||||||
|
|
|
@ -53,11 +53,16 @@ pub struct Attachment {
|
||||||
|
|
||||||
impl fmt::Debug for Attachment {
|
impl fmt::Debug for Attachment {
|
||||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||||
write!(f, "Attachment {{\n content_type: {:?},\n content_transfer_encoding: {:?},\n raw: Vec of {} bytes\n, body:\n{}\n }}",
|
write!(f, "Attachment {{\n content_type: {:?},\n content_transfer_encoding: {:?},\n raw: Vec of {} bytes\n, body:\n{}\n}}",
|
||||||
self.content_type,
|
self.content_type,
|
||||||
self.content_transfer_encoding,
|
self.content_transfer_encoding,
|
||||||
self.raw.len(),
|
self.raw.len(),
|
||||||
str::from_utf8(&self.raw).unwrap())
|
{
|
||||||
|
let mut text = Vec::with_capacity(4096);
|
||||||
|
self.get_text_recursive(&mut text);
|
||||||
|
std::str::from_utf8(&text).map(|r| r.to_string()).unwrap_or_else(|e| format!("Unicode error {}", e))
|
||||||
|
}
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
[package]
|
||||||
|
name = "testing"
|
||||||
|
version = "0.0.1" #:version
|
||||||
|
authors = []
|
||||||
|
workspace = ".."
|
||||||
|
|
||||||
|
[[bin]]
|
||||||
|
name = "emailparse"
|
||||||
|
path = "src/email_parse.rs"
|
||||||
|
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
melib = { path = "../melib", version = "*" }
|
|
@ -0,0 +1,24 @@
|
||||||
|
extern crate melib;
|
||||||
|
use melib::*;
|
||||||
|
|
||||||
|
use melib::Result;
|
||||||
|
|
||||||
|
fn main() -> Result<()> {
|
||||||
|
for i in std::env::args().skip(1) {
|
||||||
|
println!("i is {}", i);
|
||||||
|
let filename = std::path::PathBuf::from(i);
|
||||||
|
|
||||||
|
if filename.is_file() {
|
||||||
|
let buffer = std::fs::read_to_string(&filename).expect(&format!(
|
||||||
|
"Something went wrong reading the file {}",
|
||||||
|
filename.display()
|
||||||
|
));
|
||||||
|
let env = Envelope::from_bytes(&buffer.as_bytes()).expect("Couldn't parse email");
|
||||||
|
debug!("Env is {:#?}", env);
|
||||||
|
debug!(env.body_bytes(buffer.as_bytes()));
|
||||||
|
} else {
|
||||||
|
println!("it's not a file");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Ok(())
|
||||||
|
}
|
Loading…
Reference in New Issue