summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2019-10-20 19:49:28 +0200
committerMatthias Beyer <mail@beyermatthias.de>2019-11-03 11:30:33 +0100
commitd68797a1156c5ad228b6b4e30e89ef82d15b167a (patch)
treecd974ebeaaeee887918884557edfcc46312a9567
parenta8107ae6e07338fd829b89cf998ab3056559e6fe (diff)
Test imag-mv
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
-rw-r--r--tests/ui/src/imag_mv.rs41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/ui/src/imag_mv.rs b/tests/ui/src/imag_mv.rs
index 987eadc5..91dd78b0 100644
--- a/tests/ui/src/imag_mv.rs
+++ b/tests/ui/src/imag_mv.rs
@@ -17,3 +17,44 @@
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
//
+use std::process::Command;
+
+use assert_fs::fixture::TempDir;
+use assert_cmd::prelude::*;
+
+
+pub fn binary(tempdir: &TempDir) -> Command {
+ crate::imag::binary(tempdir, "imag-mv")
+}
+
+pub fn call(tmpdir: &TempDir, src: &str, dst: &str) {
+ let mut binary = binary(tmpdir);
+ binary.stdin(std::process::Stdio::inherit());
+ binary.arg("--ignore-ids");
+ binary.arg(src);
+ binary.arg(dst);
+
+ debug!("Command = {:?}", binary);
+
+ binary.assert().success();
+}
+
+#[test]
+fn test_after_moving_entry_is_moved() {
+ crate::setup_logging();
+ let imag_home = crate::imag::make_temphome();
+ crate::imag_init::call(&imag_home);
+ crate::imag_create::call(&imag_home, &["test"]);
+
+ call(&imag_home, "test", "moved");
+ {
+ let entry_path = crate::imag::store_path(&imag_home, &["moved"]);
+ assert!(entry_path.exists(), "Entry was not created: {:?}", entry_path);
+ assert!(entry_path.is_file() , "Entry is not a file: {:?}", entry_path);
+ }
+ {
+ let entry_path = crate::imag::store_path(&imag_home, &["test"]);
+ assert!(!entry_path.exists(), "Entry still exists: {:?}", entry_path);
+ }
+}
+