mirror of https://github.com/zkat/miette.git
Omit None label in `LabeledSpan` when serializing
This commit is contained in:
parent
1d6d5a1ad6
commit
9898b33393
|
|
@ -234,6 +234,7 @@ pub trait SourceCode: Send + Sync {
|
||||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||||
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
|
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
|
||||||
pub struct LabeledSpan {
|
pub struct LabeledSpan {
|
||||||
|
#[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))]
|
||||||
label: Option<String>,
|
label: Option<String>,
|
||||||
span: SourceSpan,
|
span: SourceSpan,
|
||||||
}
|
}
|
||||||
|
|
@ -337,7 +338,6 @@ fn test_serialize_labeled_span() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
json!(LabeledSpan::new(None, 0, 0)),
|
json!(LabeledSpan::new(None, 0, 0)),
|
||||||
json!({
|
json!({
|
||||||
"label": null,
|
|
||||||
"span": { "offset": 0, "length": 0 }
|
"span": { "offset": 0, "length": 0 }
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
@ -363,6 +363,12 @@ fn test_deserialize_labeled_span() {
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(span, LabeledSpan::new(None, 0, 0));
|
assert_eq!(span, LabeledSpan::new(None, 0, 0));
|
||||||
|
|
||||||
|
let span: LabeledSpan = serde_json::from_value(json!({
|
||||||
|
"span": { "offset": 0, "length": 0 }
|
||||||
|
}))
|
||||||
|
.unwrap();
|
||||||
|
assert_eq!(span, LabeledSpan::new(None, 0, 0));
|
||||||
|
|
||||||
let span: LabeledSpan = serde_json::from_value(json!({
|
let span: LabeledSpan = serde_json::from_value(json!({
|
||||||
"label": "label",
|
"label": "label",
|
||||||
"span": { "offset": 0, "length": 0 }
|
"span": { "offset": 0, "length": 0 }
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue