From 3d50dda7f80fd6d77aac925ec6733b5d7dbafc59 Mon Sep 17 00:00:00 2001 From: Jeremy Wall Date: Tue, 2 Aug 2022 17:41:21 -0400 Subject: [PATCH] more reliable properties about node size --- src/proptest.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/proptest.rs b/src/proptest.rs index 62fd453..00222c4 100644 --- a/src/proptest.rs +++ b/src/proptest.rs @@ -38,9 +38,11 @@ proptest! { let mut dag = DAG::::new(); let parent_count = parent_idxs.len(); let mut dependents = BTreeMap::new(); + let mut node_set = BTreeSet::new(); for (idx, n) in nodes.iter().cloned().enumerate() { if !parent_idxs.contains(&idx) { let node_id = dag.add_node(n, BTreeSet::new()).unwrap(); + node_set.insert(node_id.clone()); let parent = idx % parent_count; if dependents.contains_key(&parent) { dependents.get_mut(&parent).map(|v: &mut BTreeSet<[u8; 8]>| v.insert(node_id)); @@ -50,9 +52,10 @@ proptest! { } } for (pidx, dep_ids) in dependents { - dag.add_node(nodes[pidx].clone(), dep_ids).unwrap(); + let node_id = dag.add_node(nodes[pidx].clone(), dep_ids).unwrap(); + node_set.insert(node_id.clone()); } assert!(dag.get_roots().len() <= parent_count); - assert!(dag.get_nodes().len() <= nodes.len()); + assert!(dag.get_nodes().len() == node_set.len()); } }