diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2019-10-20 14:47:44 +0200 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2019-11-03 11:30:33 +0100 |
commit | 00d6e78c5d1342a33ddeca6feb0fd2d2d0a3cde7 (patch) | |
tree | 544ef73f4b2abb70a8df6a578c221afe68d9116a | |
parent | cf4298b9daf180256900d3e5ae61a66b8d9466ff (diff) |
Rewrite imag header version output test
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
-rw-r--r-- | tests/ui/src/imag_header.rs | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/tests/ui/src/imag_header.rs b/tests/ui/src/imag_header.rs index 28d95227..5f539afb 100644 --- a/tests/ui/src/imag_header.rs +++ b/tests/ui/src/imag_header.rs @@ -18,10 +18,10 @@ // use std::process::Command; +use std::str::FromStr; use assert_cmd::prelude::*; use assert_fs::fixture::TempDir; -use predicates::prelude::*; pub fn binary(tempdir: &TempDir) -> Command { crate::imag::binary(tempdir, "imag-header") @@ -56,16 +56,25 @@ fn test_imag_version_as_semver_string() { crate::imag_init::call(&imag_home); crate::imag_create::call(&imag_home, &["test"]); - let imag_version = version::version!(); + let output = call(&imag_home, &["--ignore-ids", "test", "read", "imag.version"]); + let version = version::version!(); + let imag_version = format!("\"{}\"", version); + debug!("output = {:?}", output); + assert_eq!(output.len(), 1); + assert_eq!(output[0], imag_version); - let mut bin = binary(&imag_home); - bin.arg("test"); - bin.arg("string"); - bin.arg("imag.version"); + let version = semver::Version::from_str(&version).unwrap(); + let parsed = { + let output_version = output[0].replace("\"", ""); + semver::Version::from_str(&output_version) + }; + + assert!(parsed.is_ok()); + let parsed = parsed.unwrap(); - let expected_output_str = format!("test - {}", imag_version); - bin.assert() - .stdout(predicate::eq(expected_output_str.as_bytes())) - .success(); + assert_eq!(parsed.major, version.major); + assert_eq!(parsed.minor, version.minor); + assert_eq!(parsed.patch, version.patch); + assert_eq!(parsed.pre, version.pre); } |