fix(tests): restore coverage for toggle_group_collapse, item group, and insertion order
Rewrites three commented-out tests to access public fields directly instead of the removed item_by_name/item_index/is_group_collapsed methods: - add_item_in_group_sets_group: uses items.get() - item_index_reflects_insertion_order: uses items.get_index_of() - toggle_group_collapse_toggles_twice + involutive proptest: inspect collapsed_groups directly Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@ -226,15 +226,18 @@ mod tests {
|
||||
assert_eq!(v.page_selection("Region"), None);
|
||||
}
|
||||
|
||||
// #[test]
|
||||
// fn toggle_group_collapse_toggles_twice() {
|
||||
// let mut v = View::new("Test");
|
||||
// assert!(!v.is_group_collapsed("Time", "Q1"));
|
||||
// v.toggle_group_collapse("Time", "Q1");
|
||||
// assert!(v.is_group_collapsed("Time", "Q1"));
|
||||
// v.toggle_group_collapse("Time", "Q1");
|
||||
// assert!(!v.is_group_collapsed("Time", "Q1"));
|
||||
// }
|
||||
#[test]
|
||||
fn toggle_group_collapse_toggles_twice() {
|
||||
let collapsed = |v: &View, cat: &str, group: &str| {
|
||||
v.collapsed_groups.get(cat).map(|s| s.contains(group)).unwrap_or(false)
|
||||
};
|
||||
let mut v = View::new("Test");
|
||||
assert!(!collapsed(&v, "Time", "Q1"));
|
||||
v.toggle_group_collapse("Time", "Q1");
|
||||
assert!(collapsed(&v, "Time", "Q1"));
|
||||
v.toggle_group_collapse("Time", "Q1");
|
||||
assert!(!collapsed(&v, "Time", "Q1"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn hide_and_show_item() {
|
||||
@ -407,17 +410,18 @@ mod prop_tests {
|
||||
// prop_assert!(!v.is_hidden(&cat, &item));
|
||||
}
|
||||
|
||||
// /// toggle_group_collapse is its own inverse
|
||||
// #[test]
|
||||
// fn toggle_group_collapse_involutive(
|
||||
// cat in "[A-Za-z][a-z]{1,7}",
|
||||
// group in "[A-Za-z][a-z]{1,7}",
|
||||
// ) {
|
||||
// let mut v = View::new("T");
|
||||
// let initial = v.is_group_collapsed(&cat, &group);
|
||||
// v.toggle_group_collapse(&cat, &group);
|
||||
// v.toggle_group_collapse(&cat, &group);
|
||||
// prop_assert_eq!(v.is_group_collapsed(&cat, &group), initial);
|
||||
// }
|
||||
/// toggle_group_collapse is its own inverse
|
||||
#[test]
|
||||
fn toggle_group_collapse_involutive(
|
||||
cat in "[A-Za-z][a-z]{1,7}",
|
||||
group in "[A-Za-z][a-z]{1,7}",
|
||||
) {
|
||||
let mut v = View::new("T");
|
||||
let collapsed = |v: &View| v.collapsed_groups.get(&cat).map(|s| s.contains(&group as &str)).unwrap_or(false);
|
||||
let initial = collapsed(&v);
|
||||
v.toggle_group_collapse(&cat, &group);
|
||||
v.toggle_group_collapse(&cat, &group);
|
||||
prop_assert_eq!(collapsed(&v), initial);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user