chore: more command parsing tests

This commit is contained in:
Jeremy Wall 2024-11-30 18:15:42 -05:00
parent 184721dc21
commit 6884aa0501

View File

@ -132,4 +132,59 @@ fn test_quit_cmd() {
assert_eq!(cmd, Cmd::Quit); assert_eq!(cmd, Cmd::Quit);
} }
#[test]
fn test_cmd_new_sheet_with_name() {
let input = "new-sheet test";
let result = parse(input);
assert!(result.is_ok());
let output = result.unwrap();
assert!(output.is_some());
let cmd = output.unwrap();
assert_eq!(cmd, Cmd::NewSheet(Some("test")));
}
#[test]
fn test_cmd_new_sheet_no_name() {
let input = "new-sheet";
let result = parse(input);
assert!(result.is_ok());
let output = result.unwrap();
assert!(output.is_some());
let cmd = output.unwrap();
assert_eq!(cmd, Cmd::NewSheet(None));
}
#[test]
fn test_cmd_select_sheet_with_name() {
let input = "select-sheet test";
let result = parse(input);
assert!(result.is_ok());
let output = result.unwrap();
assert!(output.is_some());
let cmd = output.unwrap();
assert_eq!(cmd, Cmd::SelectSheet("test"));
}
#[test]
fn test_cmd_rename_sheet_with_name() {
let input = "rename-sheet test";
let result = parse(input);
assert!(result.is_ok());
let output = result.unwrap();
assert!(output.is_some());
let cmd = output.unwrap();
assert_eq!(cmd, Cmd::RenameSheet(None, "test"));
}
#[test]
fn test_cmd_rename_sheet_with_idx_and_name() {
let input = "rename-sheet 0 test";
let result = parse(input);
assert!(result.is_ok());
let output = result.unwrap();
assert!(output.is_some());
let cmd = output.unwrap();
assert_eq!(cmd, Cmd::RenameSheet(Some(0), "test"));
}
// TODO(zaphar): Interaction testing for input. // TODO(zaphar): Interaction testing for input.