From c4c7f747c79ed13b64a155a1b4765e26de01d2c5 Mon Sep 17 00:00:00 2001 From: aiongg Date: Thu, 22 Oct 2026 03:54:39 +0000 Subject: [PATCH] Integration: keytip NR test gives the sheet data so the Insert Chart dialog opens --- crates/ui-egui/tests/keytips_generated.rs | 6 ++++++ xtask/src/keytips.rs | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/crates/ui-egui/tests/keytips_generated.rs b/crates/ui-egui/tests/keytips_generated.rs index 4bfe5717f..fe70a5c9a 100644 --- a/crates/ui-egui/tests/keytips_generated.rs +++ b/crates/ui-egui/tests/keytips_generated.rs @@ -1283,6 +1283,12 @@ fn keytip_nq_() { #[test] fn keytip_nr_() { let mut h = harness(blank()); + // The dialog previews chart types for the selected data, so the sheet needs some. + h.state_mut() + .session + .execute("range.setValues", serde_json::json!({"range": "A1", "values": [["Fruit", "Sales"], ["Apples", 5], ["Pears", 3]]})) + .unwrap(); + h.state_mut().session.execute("selection.set", serde_json::json!({"range": "A1:B3"})).unwrap(); sequence(&mut h, "NR", false); assert_eq!(h.state().dialog.as_ref().map(|d| d.name.as_str()), Some("recommendedCharts"), "NR must open the recommendedCharts dialog"); } diff --git a/xtask/src/keytips.rs b/xtask/src/keytips.rs index 8ed7b3cb0..63b1554a0 100644 --- a/xtask/src/keytips.rs +++ b/xtask/src/keytips.rs @@ -281,7 +281,7 @@ fn render_tests(entries: &[Entry], probe: &Probe) -> String { "command" if UI_DIALOG_COMMANDS.iter().any(|(c, _)| *c == e.target) => { let dialog = UI_DIALOG_COMMANDS.iter().find(|(c, _)| *c == e.target).map_or("", |(_, d)| d); format!( - "sequence(&mut h, {seq:?}, false);\n assert_eq!(h.state().dialog.as_ref().map(|d| d.name.as_str()), Some({dialog:?}), \"{seq} must open the {dialog} dialog\");", + "// The dialog previews chart types for the selected data, so the sheet needs some.\n h.state_mut().session.execute(\"range.setValues\", serde_json::json!({{\"range\": \"A1\", \"values\": [[\"Fruit\", \"Sales\"], [\"Apples\", 5], [\"Pears\", 3]]}})).unwrap();\n h.state_mut().session.execute(\"selection.set\", serde_json::json!({{\"range\": \"A1:B3\"}})).unwrap();\n sequence(&mut h, {seq:?}, false);\n assert_eq!(h.state().dialog.as_ref().map(|d| d.name.as_str()), Some({dialog:?}), \"{seq} must open the {dialog} dialog\");", seq = e.seq, ) }