#![allow(clippy::unwrap_used)] use crate::UserModel; #[test] fn basic_rename() { let mut model = UserModel::new_empty("model", "en", "UTC").unwrap(); model.rename_sheet(0, "NewSheet").unwrap(); assert_eq!(model.get_worksheets_properties()[0].name, "NewSheet"); } #[test] fn rename_with_same_name() { let mut model = UserModel::new_empty("model", "en", "UTC").unwrap(); model.rename_sheet(0, "Sheet1").unwrap(); assert_eq!(model.get_worksheets_properties()[0].name, "Sheet1"); } #[test] fn undo_redo() { let mut model = UserModel::new_empty("model", "en", "UTC").unwrap(); model.rename_sheet(0, "NewSheet").unwrap(); model.undo().unwrap(); assert_eq!(model.get_worksheets_properties()[0].name, "Sheet1"); model.redo().unwrap(); assert_eq!(model.get_worksheets_properties()[0].name, "NewSheet"); let send_queue = model.flush_send_queue(); let mut model2 = UserModel::new_empty("model", "en", "UTC").unwrap(); model2.apply_external_diffs(&send_queue).unwrap(); assert_eq!(model.get_worksheets_properties()[0].name, "NewSheet"); } #[test] fn errors() { let mut model = UserModel::new_empty("model", "en", "UTC").unwrap(); assert_eq!( model.rename_sheet(0, ""), Err("Invalid name for a sheet: ''.".to_string()) ); assert_eq!( model.rename_sheet(1, "Hello"), Err("Invalid sheet index".to_string()) ); }