diff options
author | Daniel Mueller <deso@posteo.net> | 2019-01-20 13:56:48 -0800 |
---|---|---|
committer | Daniel Mueller <deso@posteo.net> | 2019-01-20 13:56:48 -0800 |
commit | 37f7800766fe12af43d0cdba13aea9545cbe7755 (patch) | |
tree | ea621deaf425db10494cb8af59ac3a8806c52e8b /nitrocli/src/tests/storage.rs | |
parent | c3f1761ae147e562ec3565c7ba8a9cb1834759c2 (diff) | |
download | nitrocli-37f7800766fe12af43d0cdba13aea9545cbe7755.tar.gz nitrocli-37f7800766fe12af43d0cdba13aea9545cbe7755.tar.bz2 |
Add test for storage hidden subcommand
This change adds a test for the creation, opening, and closing of a
hidden subvolume. In order to support that in a non-interactive fashion,
we introduce and honor the NITROCLI_PASSWORD environment variable, that
prevents an interactive password query.
Diffstat (limited to 'nitrocli/src/tests/storage.rs')
-rw-r--r-- | nitrocli/src/tests/storage.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/nitrocli/src/tests/storage.rs b/nitrocli/src/tests/storage.rs index d017f34..be933ca 100644 --- a/nitrocli/src/tests/storage.rs +++ b/nitrocli/src/tests/storage.rs @@ -91,3 +91,27 @@ fn encrypted_open_close(device: nitrokey::Storage) -> crate::Result<()> { Ok(()) } + +#[test_device] +fn hidden_create_open_close(device: nitrokey::Storage) -> crate::Result<()> { + let mut ncli = Nitrocli::with_dev(device); + let out = ncli.handle(&["storage", "hidden", "create", "0", "50", "100"])?; + assert!(out.is_empty()); + + let out = ncli.handle(&["storage", "hidden", "open"])?; + assert!(out.is_empty()); + + let device = nitrokey::Storage::connect()?; + assert!(!device.get_status()?.encrypted_volume.active); + assert!(device.get_status()?.hidden_volume.active); + drop(device); + + let out = ncli.handle(&["storage", "hidden", "close"])?; + assert!(out.is_empty()); + + let device = nitrokey::Storage::connect()?; + assert!(!device.get_status()?.encrypted_volume.active); + assert!(!device.get_status()?.hidden_volume.active); + + Ok(()) +} |