use envseal::error::Error;
use std::error::Error as StdError;
#[test]
fn io_error_source_chain() {
let io_err = std::io::Error::new(std::io::ErrorKind::PermissionDenied, "denied");
let err = Error::StorageIo(io_err);
assert!(
err.source().is_some(),
"Fix: StorageIo must expose source io::Error"
);
let io_err2 = std::io::Error::new(std::io::ErrorKind::NotFound, "missing");
let err2 = Error::ExecFailed(io_err2);
assert!(
err2.source().is_some(),
"Fix: ExecFailed must expose source io::Error"
);
let err3 = Error::UserDenied;
assert!(err3.source().is_none());
}