mirror of
https://github.com/sharkdp/hyperfine.git
synced 2026-10-28 08:08:58 +00:00
Snapshot reference comparison output
This commit is contained in:
1 parent
463a889638
commit
92330ce75d
1 file changed
+23
-23
+23
-23
@@ -707,6 +707,7 @@ fn shows_benchmark_comparison_relative_to_reference() {
|
||||
|
||||
#[test]
|
||||
fn command_sorted_comparison_and_markup_identify_reference() {
|
||||
let _settings = snapshot_settings().bind_to_scope();
|
||||
let directory = tempfile::tempdir().unwrap();
|
||||
let export_path = directory.path().join("results.md");
|
||||
let output = hyperfine_debug()
|
||||
@@ -727,15 +728,12 @@ fn command_sorted_comparison_and_markup_identify_reference() {
|
||||
assert!(output.status.success(), "{:?}", output);
|
||||
let stdout = String::from_utf8(output.stdout).unwrap();
|
||||
let comparison = stdout.split_once("Relative speed comparison\n").unwrap().1;
|
||||
for (name, factor) in [
|
||||
("baseline (reference)", "1.00"),
|
||||
("sleep 1 (faster)", "2.00"),
|
||||
("sleep 2 (same speed)", "1.00"),
|
||||
("sleep 3 (slower)", "1.50"),
|
||||
] {
|
||||
let row = comparison.lines().find(|line| line.contains(name)).unwrap();
|
||||
assert!(row.trim_start().starts_with(factor), "{}", row);
|
||||
}
|
||||
insta::assert_snapshot!(comparison, @r"
|
||||
1.00 baseline (reference)
|
||||
2.00 sleep 1 (faster)
|
||||
1.00 sleep 2 (same speed)
|
||||
1.50 sleep 3 (slower)
|
||||
");
|
||||
let markdown = std::fs::read_to_string(export_path).unwrap();
|
||||
for (command, relative) in [
|
||||
("baseline", "1.00 (reference)"),
|
||||
@@ -1011,7 +1009,8 @@ fn intermediate_markdown_waits_for_selected_reference() {
|
||||
|
||||
#[test]
|
||||
fn markdown_export_uses_selected_parameterized_reference() {
|
||||
let output = hyperfine_debug()
|
||||
let _settings = snapshot_settings().bind_to_scope();
|
||||
assert_cmd_snapshot!(hyperfine_debug()
|
||||
.args([
|
||||
"--style=none",
|
||||
"--runs=1",
|
||||
@@ -1025,19 +1024,20 @@ fn markdown_export_uses_selected_parameterized_reference() {
|
||||
"--reference",
|
||||
"case-2",
|
||||
"sleep {x}",
|
||||
])
|
||||
.output()
|
||||
.unwrap();
|
||||
assert!(output.status.success(), "{:?}", output);
|
||||
let stdout = String::from_utf8(output.stdout).unwrap();
|
||||
for (command, relative) in [
|
||||
("case-1", "2.00 (faster)"),
|
||||
("case-2", "1.00 (reference)"),
|
||||
("case-3", "1.50 (slower)"),
|
||||
] {
|
||||
let row = stdout.lines().find(|line| line.contains(command)).unwrap();
|
||||
assert!(row.ends_with(&format!("| {relative} |")), "{}", row);
|
||||
}
|
||||
]), @r"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
|
||||
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|
||||
|:---|---:|---:|---:|---:|
|
||||
| `case-1` | 1.000 | 1.000 | 1.000 | 2.00 (faster) |
|
||||
| `case-2` | 2.000 | 2.000 | 2.000 | 1.00 (reference) |
|
||||
| `case-3` | 3.000 | 3.000 | 3.000 | 1.50 (slower) |
|
||||
|
||||
|
||||
----- stderr -----
|
||||
");
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in new issue
Block a user