From 1072bd06c3e6e6d22e90bb80210be6e061bb2c1b Mon Sep 17 00:00:00 2001 From: Stefan Holderbach Date: Thu, 21 Sep 2023 20:12:36 +0200 Subject: [PATCH] Improve assertions in `src/tests.rs` (#10449) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # Description Mention the expected substring in: - `fn run_test_contains()` - `fn test_ide_contains()` - `fn fail_test()` # Developer-Facing Changes You can read the test failure to figure out what is going on, don't necessarily have to look up the test New look of failure ``` failures: ---- tests::test_math::broken_math stdout ---- stdout: stderr: Error: nu::parser::incomplete_math_expression × Incomplete math expression. ╭─[/tmp/.tmpz0V8nC:1:1] 1 │ 3 + · ┬ · ╰── incomplete math expression ╰──── Expected error to contain: Incomplete universe thread 'tests::test_math::broken_math' panicked at 'assertion failed: !stderr.is_empty() && stderr.contains(expected)', src/tests.rs:181:5 ``` --- src/tests.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/tests.rs b/src/tests.rs index 309a8b30c3..2b1cde37a4 100644 --- a/src/tests.rs +++ b/src/tests.rs @@ -116,6 +116,7 @@ pub fn run_test_contains(input: &str, expected: &str) -> TestResult { println!("stdout: {stdout}"); println!("stderr: {stderr}"); + println!("Expected output to contain: {expected}"); assert!(output.status.success()); assert!(stdout.contains(expected)); @@ -144,6 +145,7 @@ pub fn test_ide_contains(input: &str, ide_commands: &[&str], expected: &str) -> println!("stdout: {stdout}"); println!("stderr: {stderr}"); + println!("Expected output to contain: {expected}"); assert!(output.status.success()); @@ -174,6 +176,7 @@ pub fn fail_test(input: &str, expected: &str) -> TestResult { println!("stdout: {stdout}"); println!("stderr: {stderr}"); + println!("Expected error to contain: {expected}"); assert!(!stderr.is_empty() && stderr.contains(expected));