From bdb5222eec9109f4a337ab79d12c3f3ee3cd7a4b Mon Sep 17 00:00:00 2001 From: Can Celik Date: Fri, 7 Aug 2026 20:59:32 +0300 Subject: fix(config): report unknown theme names (#2488) refs #2452 --- tests/cli/workspace.rs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'tests') diff --git a/tests/cli/workspace.rs b/tests/cli/workspace.rs index 8c435b2d..4153f3b2 100644 --- a/tests/cli/workspace.rs +++ b/tests/cli/workspace.rs @@ -496,6 +496,33 @@ new_tabb = "ctrl+t" cleanup_test_base(&base); } +#[test] +fn config_check_reports_unknown_theme_names() { + let base = unique_test_dir(); + let config_home = base.join("config"); + let runtime_dir = base.join("runtime"); + let config_dir = config_home.join(app_dir_name()); + fs::create_dir_all(&config_dir).unwrap(); + fs::write( + config_dir.join("config.toml"), + "[theme]\nname = \"catppucin\"\n", + ) + .unwrap(); + + let checked = run_named_cli(&config_home, &runtime_dir, &["config", "check"]); + + assert_eq!(checked.status.code(), Some(1)); + let stdout = String::from_utf8_lossy(&checked.stdout); + assert!(stdout.contains("config: issues found"), "{stdout}"); + assert!( + stdout.contains("unknown theme name theme.name = \"catppucin\"; using \"catppuccin\""), + "{stdout}" + ); + assert!(stdout.contains("valid themes: catppuccin"), "{stdout}"); + + cleanup_test_base(&base); +} + #[test] fn config_check_reports_unreadable_config_path() { let base = unique_test_dir(); -- cgit v1.2.3