Rollup merge of #94566 - yanganto:show-ignore-message, r=m-ou-se
Show ignore message in console and json output - Provide ignore the message in console and JSON output - Modify the ignore message style in the log file related: #92714
This commit is contained in:
commit
1830e8fdcd
9 changed files with 33 additions and 12 deletions
|
@ -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()
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
||||
|
|
|
@ -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<()> {
|
||||
|
@ -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)))?;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -16,7 +16,7 @@ fn c() {
|
|||
}
|
||||
|
||||
#[test]
|
||||
#[ignore]
|
||||
#[ignore = "msg"]
|
||||
fn d() {
|
||||
assert!(false);
|
||||
}
|
||||
|
|
|
@ -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 }
|
||||
|
|
|
@ -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,7 +5,6 @@
|
|||
// ignore-emscripten no threads support
|
||||
// run-pass
|
||||
|
||||
|
||||
#[test]
|
||||
fn test_ok() {
|
||||
let _a = true;
|
||||
|
@ -18,9 +17,9 @@ fn test_panic() {
|
|||
}
|
||||
|
||||
#[test]
|
||||
#[ignore]
|
||||
#[ignore = "msg"]
|
||||
fn test_no_run() {
|
||||
loop{
|
||||
loop {
|
||||
println!("Hello, world");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue