use masterror::{AppError, DisplayMode};
#[test]
fn masterror_env_prod_selects_json_display_layout() {
unsafe {
std::env::set_var("MASTERROR_ENV", "prod");
}
assert_eq!(DisplayMode::current(), DisplayMode::Prod);
let err = AppError::not_found("missing user");
let rendered = err.to_string();
assert!(
rendered.starts_with(r#"{"kind":"NotFound""#),
"unexpected layout: {rendered}"
);
assert!(rendered.contains(r#""code":"NOT_FOUND""#));
assert!(rendered.contains(r#""message":"missing user""#));
assert!(!rendered.contains('\u{1b}'));
}