1pub const MAX_PASTE_SIZE: usize = 300 * 1024;
7
8#[derive(Debug, Clone, PartialEq, Default)]
10pub enum TuiState {
11 #[default]
12 Idle,
13 Thinking,
14}
15
16#[derive(Debug, Clone, Default)]
18pub struct FileAutocompleteState {
19 pub is_active: bool,
21 pub query: String,
23 pub trigger_pos: usize,
25 pub matches: Vec<limit_tui::components::FileMatchData>,
27 pub selected_index: usize,
29}
30
31#[cfg(test)]
32mod tests {
33 use super::*;
34
35 #[test]
36 fn test_tui_state_default() {
37 let state = TuiState::default();
38 assert_eq!(state, TuiState::Idle);
39 }
40
41 #[test]
42 fn test_file_autocomplete_default() {
43 let state = FileAutocompleteState::default();
44 assert!(!state.is_active);
45 assert_eq!(state.query, "");
46 assert_eq!(state.trigger_pos, 0);
47 assert_eq!(state.matches.len(), 0);
48 assert_eq!(state.selected_index, 0);
49 }
50
51 #[test]
52 fn test_max_paste_size() {
53 assert_eq!(MAX_PASTE_SIZE, 300 * 1024);
54 }
55}