diff options
| author | Dylan DPC <dylan.dpc@gmail.com> | 2020-12-25 03:39:51 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-25 03:39:51 +0100 |
| commit | 7c7812dfd3c3cd7c117e29a1fc90b3801b206621 (patch) | |
| tree | d0e760ac2dc475092c7867befd054f292862b74f | |
| parent | 3cf289bd5f9b30d7b50f66ac6280f043272c9775 (diff) | |
| parent | 9e618bacf2c060d19d7dfbdb04c332b81cf56839 (diff) | |
| download | rust-7c7812dfd3c3cd7c117e29a1fc90b3801b206621.tar.gz rust-7c7812dfd3c3cd7c117e29a1fc90b3801b206621.zip | |
Rollup merge of #80352 - ssomers:btree_test_diagnostics, r=Mark-Simulacrum
BTreeMap: make test cases more explicit on failure r? `@Mark-Simulacrum`
| -rw-r--r-- | library/alloc/src/collections/btree/map/tests.rs | 2 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/node/tests.rs | 12 |
2 files changed, 9 insertions, 5 deletions
diff --git a/library/alloc/src/collections/btree/map/tests.rs b/library/alloc/src/collections/btree/map/tests.rs index 97df8ea07d2..c857d4317e4 100644 --- a/library/alloc/src/collections/btree/map/tests.rs +++ b/library/alloc/src/collections/btree/map/tests.rs @@ -115,7 +115,7 @@ impl<K, V> BTreeMap<K, V> { impl<'a, K: 'a, V: 'a> NodeRef<marker::Immut<'a>, K, V, marker::LeafOrInternal> { fn assert_min_len(self, min_len: usize) { - assert!(self.len() >= min_len, "{} < {}", self.len(), min_len); + assert!(self.len() >= min_len, "node len {} < {}", self.len(), min_len); if let node::ForceResult::Internal(node) = self.force() { for idx in 0..=node.len() { let edge = unsafe { Handle::new_edge(node, idx) }; diff --git a/library/alloc/src/collections/btree/node/tests.rs b/library/alloc/src/collections/btree/node/tests.rs index 6886962106b..7fe8ff743c0 100644 --- a/library/alloc/src/collections/btree/node/tests.rs +++ b/library/alloc/src/collections/btree/node/tests.rs @@ -30,11 +30,15 @@ impl<'a, K: 'a, V: 'a> NodeRef<marker::Immut<'a>, K, V, marker::LeafOrInternal> let depth = self.height(); let indent = " ".repeat(depth); result += &format!("\n{}", indent); - for idx in 0..leaf.len() { - if idx > 0 { - result += ", "; + if leaf.len() == 0 { + result += "(empty node)"; + } else { + for idx in 0..leaf.len() { + if idx > 0 { + result += ", "; + } + result += &format!("{:?}", unsafe { leaf.key_at(idx) }); } - result += &format!("{:?}", unsafe { leaf.key_at(idx) }); } } navigate::Position::Internal(_) => {} |
