use super::{arb_ops, run};
use proptest::prelude::*;
proptest! {
#[test]
fn prop_restrict_commutes_with_merge(
ops in arb_ops(), roster in prop::collection::vec(0u32..5, 0..5),
) {
let (live, _) = run(&ops);
let (a, b) = (&live[0], &live[2]);
prop_assert_eq!(
a.merge(b).restrict(roster.iter().copied()),
a.restrict(roster.iter().copied())
.merge(&b.restrict(roster.iter().copied()))
);
}
}