Merge pull request #2902 from ehuss/fix-missing-format
Fix error message for config.get deserialization error
This commit is contained in:
commit
860e8d109e
1 changed files with 15 additions and 1 deletions
|
|
@ -204,7 +204,7 @@ impl Config {
|
||||||
value
|
value
|
||||||
.clone()
|
.clone()
|
||||||
.try_into()
|
.try_into()
|
||||||
.with_context(|| "Failed to deserialize `{name}`")
|
.with_context(|| format!("Failed to deserialize `{name}`"))
|
||||||
})
|
})
|
||||||
.transpose()
|
.transpose()
|
||||||
}
|
}
|
||||||
|
|
@ -1147,4 +1147,18 @@ mod tests {
|
||||||
assert_eq!(json!(TextDirection::RightToLeft), json!("rtl"));
|
assert_eq!(json!(TextDirection::RightToLeft), json!("rtl"));
|
||||||
assert_eq!(json!(TextDirection::LeftToRight), json!("ltr"));
|
assert_eq!(json!(TextDirection::LeftToRight), json!("ltr"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn get_deserialize_error() {
|
||||||
|
let src = r#"
|
||||||
|
[preprocessor.foo]
|
||||||
|
x = 123
|
||||||
|
"#;
|
||||||
|
let cfg = Config::from_str(src).unwrap();
|
||||||
|
let err = cfg.get::<String>("preprocessor.foo.x").unwrap_err();
|
||||||
|
assert_eq!(
|
||||||
|
err.to_string(),
|
||||||
|
"Failed to deserialize `preprocessor.foo.x`"
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue