Recreate repository due to Git object corruption (all files preserved)

This commit is contained in:
filipriec_vm
2026-01-11 09:53:37 +01:00
commit b7eab6b22c
33 changed files with 4474 additions and 0 deletions

96
tests/key.rs Normal file
View File

@@ -0,0 +1,96 @@
use tui_orchestrator::input::{Key, KeyCode, KeyModifiers};
#[test]
fn test_key_char() {
let key = Key::char('a');
assert_eq!(key.code, KeyCode::Char('a'));
assert!(key.modifiers.is_empty());
}
#[test]
fn test_key_ctrl() {
let key = Key::ctrl('s');
assert_eq!(key.code, KeyCode::Char('s'));
assert!(key.modifiers.control);
assert!(!key.modifiers.alt);
assert!(!key.modifiers.shift);
}
#[test]
fn test_key_new() {
let key = Key::new(KeyCode::Enter, KeyModifiers::new().with_alt());
assert_eq!(key.code, KeyCode::Enter);
assert!(key.modifiers.alt);
}
#[test]
fn test_key_from_keycode() {
let key = Key::from(KeyCode::Esc);
assert_eq!(key.code, KeyCode::Esc);
assert!(key.modifiers.is_empty());
}
#[test]
fn test_key_display_char() {
let key = Key::char('x');
let display = key.display_string();
assert!(display.contains('x'));
}
#[test]
fn test_key_display_ctrl() {
let key = Key::ctrl('c');
let display = key.display_string();
assert!(display.contains("Ctrl+"));
assert!(display.contains('c'));
}
#[test]
fn test_key_display_all_modifiers() {
let key = Key::new(
KeyCode::Char('a'),
KeyModifiers::new().with_control().with_alt().with_shift(),
);
let display = key.display_string();
assert!(display.contains("Ctrl+"));
assert!(display.contains("Alt+"));
assert!(display.contains("Shift+"));
}
#[test]
fn test_key_display_special() {
let key = Key::new(KeyCode::F(5), KeyModifiers::new());
let display = key.display_string();
assert!(display.contains("F5"));
}
#[test]
fn test_key_modifiers_new() {
let mods = KeyModifiers::new();
assert!(!mods.control);
assert!(!mods.alt);
assert!(!mods.shift);
}
#[test]
fn test_key_modifiers_builders() {
let mods = KeyModifiers::new().with_control().with_shift();
assert!(mods.control);
assert!(!mods.alt);
assert!(mods.shift);
}
#[test]
fn test_key_modifiers_is_empty() {
assert!(KeyModifiers::new().is_empty());
assert!(!KeyModifiers::new().with_control().is_empty());
}
#[test]
fn test_key_equality() {
let k1 = Key::char('a');
let k2 = Key::char('a');
let k3 = Key::ctrl('a');
assert_eq!(k1, k2);
assert_ne!(k1, k3);
}