Skip to content

Commit

Permalink
Rollup merge of #77890 - gilescope:welformed-json-output-from-libtest…
Browse files Browse the repository at this point in the history
…, r=KodrAus

Fixing escaping to ensure generation of welformed json.

doc tests' json name have a filename in them. When json test output is asked for on windows currently produces invalid json.
Tracking issue for json test output: #49359
  • Loading branch information
JohnTitor committed Oct 23, 2020
2 parents da3e41e + 0c32e81 commit 4859786
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions library/test/src/formatters/json.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,12 @@ impl<T: Write> JsonFormatter<T> {
stdout: Option<Cow<'_, str>>,
extra: Option<&str>,
) -> io::Result<()> {
// A doc test's name includes a filename which must be escaped for correct json.
self.write_message(&*format!(
r#"{{ "type": "{}", "name": "{}", "event": "{}""#,
ty, name, evt
ty,
EscapedString(name),
evt
))?;
if let Some(exec_time) = exec_time {
self.write_message(&*format!(r#", "exec_time": "{}""#, exec_time))?;
Expand All @@ -67,7 +70,7 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
fn write_test_start(&mut self, desc: &TestDesc) -> io::Result<()> {
self.writeln_message(&*format!(
r#"{{ "type": "test", "event": "started", "name": "{}" }}"#,
desc.name
EscapedString(desc.name.as_slice())
))
}

Expand Down Expand Up @@ -140,7 +143,10 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
\"name\": \"{}\", \
\"median\": {}, \
\"deviation\": {}{} }}",
desc.name, median, deviation, mbps
EscapedString(desc.name.as_slice()),
median,
deviation,
mbps
);

self.writeln_message(&*line)
Expand All @@ -151,7 +157,7 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
fn write_timeout(&mut self, desc: &TestDesc) -> io::Result<()> {
self.writeln_message(&*format!(
r#"{{ "type": "test", "event": "timeout", "name": "{}" }}"#,
desc.name
EscapedString(desc.name.as_slice())
))
}

Expand Down

0 comments on commit 4859786

Please sign in to comment.