Add from-eml command (#1656)

* from-eml initial ver

* Adding tests for `from-eml`

* Add eml to prepares_and_decorates_filesystem_source_files

* Sort the file order

Co-authored-by: Jonathan Turner <jonathandturner@users.noreply.github.com>
This commit is contained in:
Adam Shirey
2020-04-25 21:26:35 -07:00
committed by GitHub
parent e7767ab7b3
commit ad8ab5b04d
8 changed files with 313 additions and 0 deletions

View File

@ -0,0 +1,84 @@
use nu_test_support::{nu, pipeline};
const TEST_CWD: &str = "tests/fixtures/formats";
// The To field in this email is just "username@domain.com", which gets parsed out as the Address. The Name is empty.
#[test]
fn from_eml_get_to_field() {
let actual = nu!(
cwd: TEST_CWD,
pipeline(
r#"
open sample.eml
| get To
| get Address
| echo $it
"#
)
);
assert_eq!(actual, "username@domain.com");
let actual = nu!(
cwd: TEST_CWD,
pipeline(
r#"
open sample.eml
| get To
| get Name
| echo $it
"#
)
);
assert_eq!(actual, "");
}
// The Reply-To field in this email is "aw-confirm@ebay.com" <aw-confirm@ebay.com>, meaning both the Name and Address values are identical.
#[test]
fn from_eml_get_replyto_field() {
let actual = nu!(
cwd: TEST_CWD,
pipeline(
r#"
open sample.eml
| get Reply-To
| get Address
| echo $it
"#
)
);
assert_eq!(actual, "aw-confirm@ebay.com");
let actual = nu!(
cwd: TEST_CWD,
pipeline(
r#"
open sample.eml
| get Reply-To
| get Name
| echo $it
"#
)
);
assert_eq!(actual, "aw-confirm@ebay.com");
}
// The Reply-To field in this email is "aw-confirm@ebay.com" <aw-confirm@ebay.com>, meaning both the Name and Address values are identical.
#[test]
fn from_eml_get_subject_field() {
let actual = nu!(
cwd: TEST_CWD,
pipeline(
r#"
open sample.eml
| get Subject
| echo $it
"#
)
);
assert_eq!(actual, "Billing Issues");
}

View File

@ -1,5 +1,6 @@
mod bson;
mod csv;
mod eml;
mod html;
mod ics;
mod json;