58 lines
1.7 KiB
Rust
58 lines
1.7 KiB
Rust
#![allow(clippy::unwrap_used)]
|
|
|
|
use crate::test::util::new_empty_model;
|
|
use crate::UserModel;
|
|
|
|
#[test]
|
|
fn basic_tests() {
|
|
let model = new_empty_model();
|
|
let mut model = UserModel::from_model(model);
|
|
|
|
// add three more sheets
|
|
model.new_sheet().unwrap();
|
|
model.new_sheet().unwrap();
|
|
model.new_sheet().unwrap();
|
|
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.len(), 4);
|
|
for sheet in &info {
|
|
assert_eq!(sheet.state, "visible".to_string());
|
|
}
|
|
|
|
model.set_selected_sheet(2).unwrap();
|
|
assert_eq!(info.get(2).unwrap().name, "Sheet3".to_string());
|
|
|
|
model.hide_sheet(2).unwrap();
|
|
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(model.get_selected_sheet(), 3);
|
|
assert_eq!(info.get(2).unwrap().state, "hidden".to_string());
|
|
|
|
model.undo().unwrap();
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.get(2).unwrap().state, "visible".to_string());
|
|
model.redo().unwrap();
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.get(2).unwrap().state, "hidden".to_string());
|
|
|
|
model.set_selected_sheet(3).unwrap();
|
|
model.hide_sheet(3).unwrap();
|
|
assert_eq!(model.get_selected_sheet(), 0);
|
|
|
|
model.unhide_sheet(2).unwrap();
|
|
model.unhide_sheet(3).unwrap();
|
|
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.len(), 4);
|
|
for sheet in &info {
|
|
assert_eq!(sheet.state, "visible".to_string());
|
|
}
|
|
|
|
model.undo().unwrap();
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.get(3).unwrap().state, "hidden".to_string());
|
|
model.redo().unwrap();
|
|
let info = model.get_worksheets_properties();
|
|
assert_eq!(info.get(3).unwrap().state, "visible".to_string());
|
|
}
|