Skip to content

Commit f17aa40

Browse files
committed
fix(json): Allow elapsed_s to be optional in schema
1 parent a31edc3 commit f17aa40

2 files changed

Lines changed: 15 additions & 3 deletions

File tree

crates/libtest-json/src/event.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ pub enum Event {
2020
run: bool,
2121
},
2222
DiscoverComplete {
23+
#[cfg_attr(
24+
feature = "serde",
25+
serde(default, skip_serializing_if = "Option::is_none")
26+
)]
2327
elapsed_s: Option<Elapsed>,
2428
},
2529
SuiteStart,
@@ -44,9 +48,17 @@ pub enum Event {
4448
serde(default, skip_serializing_if = "Option::is_none")
4549
)]
4650
message: Option<String>,
51+
#[cfg_attr(
52+
feature = "serde",
53+
serde(default, skip_serializing_if = "Option::is_none")
54+
)]
4755
elapsed_s: Option<Elapsed>,
4856
},
4957
SuiteComplete {
58+
#[cfg_attr(
59+
feature = "serde",
60+
serde(default, skip_serializing_if = "Option::is_none")
61+
)]
5062
elapsed_s: Option<Elapsed>,
5163
},
5264
}

crates/libtest-json/tests/roundtrip.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ fn discover_case() {
4747
fn discover_complete() {
4848
t(
4949
libtest_json::Event::DiscoverComplete { elapsed_s: None },
50-
str![[r#"{"event":"discover-complete","elapsed_s":null}"#]],
50+
str![[r#"{"event":"discover-complete"}"#]],
5151
);
5252

5353
t(
@@ -86,7 +86,7 @@ fn case_complete() {
8686
message: None,
8787
elapsed_s: None,
8888
},
89-
str![[r#"{"event":"case-complete","name":"Hello\tworld!","elapsed_s":null}"#]],
89+
str![[r#"{"event":"case-complete","name":"Hello\tworld!"}"#]],
9090
);
9191

9292
t(
@@ -107,7 +107,7 @@ fn case_complete() {
107107
fn suite_complete() {
108108
t(
109109
libtest_json::Event::SuiteComplete { elapsed_s: None },
110-
str![[r#"{"event":"suite-complete","elapsed_s":null}"#]],
110+
str![[r#"{"event":"suite-complete"}"#]],
111111
);
112112

113113
t(

0 commit comments

Comments
 (0)