Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion library/test/src/console.rs
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ impl ConsoleTestState {
TestResult::TrIgnored => {
#[cfg(not(bootstrap))]
if let Some(msg) = ignore_message {
format!("ignored, {msg}")
format!("ignored: {msg}")
} else {
"ignored".to_owned()
}
Expand Down
13 changes: 13 additions & 0 deletions library/test/src/formatters/json.rs
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,19 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
),

TestResult::TrIgnored => {
#[cfg(not(bootstrap))]
return self.write_event(
"test",
desc.name.as_slice(),
"ignored",
exec_time,
stdout,
desc.ignore_message
.map(|msg| format!(r#""message": "{}""#, EscapedString(msg)))
.as_deref(),
);

#[cfg(bootstrap)]
self.write_event("test", desc.name.as_slice(), "ignored", exec_time, stdout, None)
}

Expand Down
17 changes: 13 additions & 4 deletions library/test/src/formatters/pretty.rs
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,12 @@ impl<T: Write> PrettyFormatter<T> {
self.write_short_result("FAILED", term::color::RED)
}

pub fn write_ignored(&mut self) -> io::Result<()> {
self.write_short_result("ignored", term::color::YELLOW)
pub fn write_ignored(&mut self, message: Option<&'static str>) -> io::Result<()> {
if let Some(message) = message {
self.write_short_result(&format!("ignored, {}", message), term::color::YELLOW)
} else {
self.write_short_result("ignored", term::color::YELLOW)
}
}

pub fn write_time_failed(&mut self) -> io::Result<()> {
Expand All @@ -62,7 +66,7 @@ impl<T: Write> PrettyFormatter<T> {
result: &str,
color: term::color::Color,
) -> io::Result<()> {
self.write_pretty(result, color)
self.write_pretty(result.as_ref(), color)
}

pub fn write_pretty(&mut self, word: &str, color: term::color::Color) -> io::Result<()> {
Expand Down Expand Up @@ -214,7 +218,12 @@ impl<T: Write> OutputFormatter for PrettyFormatter<T> {
match *result {
TestResult::TrOk => self.write_ok()?,
TestResult::TrFailed | TestResult::TrFailedMsg(_) => self.write_failed()?,
TestResult::TrIgnored => self.write_ignored()?,
TestResult::TrIgnored => {
#[cfg(not(bootstrap))]
self.write_ignored(desc.ignore_message)?;
#[cfg(bootstrap)]
self.write_ignored(None)?;
}
TestResult::TrBench(ref bs) => {
self.write_bench()?;
self.write_plain(&format!(": {}", fmt_bench_samples(bs)))?;
Expand Down
2 changes: 1 addition & 1 deletion src/test/run-make-fulldeps/libtest-json/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
OUTPUT_FILE_DEFAULT := $(TMPDIR)/libtest-json-output-default.json
OUTPUT_FILE_STDOUT_SUCCESS := $(TMPDIR)/libtest-json-output-stdout-success.json

all:
all: f.rs validate_json.py output-default.json output-stdout-success.json
$(RUSTC) --test f.rs
RUST_BACKTRACE=0 $(call RUN,f) -Z unstable-options --test-threads=1 --format=json > $(OUTPUT_FILE_DEFAULT) || true
RUST_BACKTRACE=0 $(call RUN,f) -Z unstable-options --test-threads=1 --format=json --show-output > $(OUTPUT_FILE_STDOUT_SUCCESS) || true
Expand Down
2 changes: 1 addition & 1 deletion src/test/run-make-fulldeps/libtest-json/f.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ fn c() {
}

#[test]
#[ignore]
#[ignore = "msg"]
fn d() {
assert!(false);
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
{ "type": "test", "event": "started", "name": "c" }
{ "type": "test", "name": "c", "event": "ok" }
{ "type": "test", "event": "started", "name": "d" }
{ "type": "test", "name": "d", "event": "ignored" }
{ "type": "test", "name": "d", "event": "ignored", "message": "msg" }
{ "type": "suite", "event": "failed", "passed": 2, "failed": 1, "ignored": 1, "measured": 0, "filtered_out": 0, "exec_time": $TIME }
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
{ "type": "test", "event": "started", "name": "c" }
{ "type": "test", "name": "c", "event": "ok", "stdout": "thread 'main' panicked at 'assertion failed: false', f.rs:15:5\n" }
{ "type": "test", "event": "started", "name": "d" }
{ "type": "test", "name": "d", "event": "ignored" }
{ "type": "test", "name": "d", "event": "ignored", "message": "msg" }
{ "type": "suite", "event": "failed", "passed": 2, "failed": 1, "ignored": 1, "measured": 0, "filtered_out": 0, "exec_time": $TIME }
5 changes: 2 additions & 3 deletions src/test/ui/test-attrs/test-type.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
// ignore-emscripten no threads support
// run-pass


#[test]
fn test_ok() {
let _a = true;
Expand All @@ -18,9 +17,9 @@ fn test_panic() {
}

#[test]
#[ignore]
#[ignore = "msg"]
fn test_no_run() {
loop{
loop {
println!("Hello, world");
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/test-attrs/test-type.run.stdout
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

running 3 tests
test test_no_run ... ignored
test test_no_run ... ignored, msg
test test_ok ... ok
test test_panic - should panic ... ok

Expand Down