diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/device.rs | 30 | 
1 files changed, 30 insertions, 0 deletions
| diff --git a/tests/device.rs b/tests/device.rs index 306b33f..969a7df 100644 --- a/tests/device.rs +++ b/tests/device.rs @@ -402,6 +402,36 @@ fn lock(device: Storage) {  }  #[test_device] +fn set_encrypted_volume_mode(device: Storage) { +    // This test case does not check the device status as the command only works with firmware +    // version 0.49.  For later versions, it does not do anything and always returns Ok(()). + +    assert_ok!( +        (), +        device.set_encrypted_volume_mode(ADMIN_PASSWORD, VolumeMode::ReadOnly) +    ); + +    // TODO: re-enable once the password is checked in the firmware +    // assert_cmd_err!( +    //     CommandError::WrongPassword, +    //     device.set_encrypted_volume_mode(USER_PASSWORD, VolumeMode::ReadOnly) +    // ); + +    assert_ok!( +        (), +        device.set_encrypted_volume_mode(ADMIN_PASSWORD, VolumeMode::ReadOnly) +    ); +    assert_ok!( +        (), +        device.set_encrypted_volume_mode(ADMIN_PASSWORD, VolumeMode::ReadWrite) +    ); +    assert_ok!( +        (), +        device.set_encrypted_volume_mode(ADMIN_PASSWORD, VolumeMode::ReadOnly) +    ); +} + +#[test_device]  fn set_unencrypted_volume_mode(device: Storage) {      fn assert_mode(device: &Storage, mode: VolumeMode) {          let status = unwrap_ok!(device.get_status()); | 
