Mercurial > public > mercurial-scm > hg
diff rust/hg-core/src/revlog/nodemap.rs @ 50983:eccf7dc7c91e stable
revlog: make the rust test for node hex prefix resolution exercise the nodemap
author | Arseniy Alekseyev <aalekseyev@janestreet.com> |
---|---|
date | Thu, 14 Sep 2023 10:52:09 +0100 |
parents | 3894763d92f8 |
children | 12c308c55e53 |
line wrap: on
line diff
--- a/rust/hg-core/src/revlog/nodemap.rs Wed Sep 13 18:28:51 2023 +0100 +++ b/rust/hg-core/src/revlog/nodemap.rs Thu Sep 14 10:52:09 2023 +0100 @@ -680,7 +680,7 @@ } #[cfg(test)] -mod tests { +pub mod tests { use super::NodeMapError::*; use super::*; use crate::revlog::node::{hex_pad_right, Node}; @@ -844,28 +844,35 @@ Ok(()) } - struct TestNtIndex { - index: TestIndex, - nt: NodeTree, + pub struct TestNtIndex { + pub index: TestIndex, + pub nt: NodeTree, } impl TestNtIndex { - fn new() -> Self { + pub fn new() -> Self { TestNtIndex { index: HashMap::new(), nt: NodeTree::default(), } } - fn insert( + pub fn insert_node( + &mut self, + rev: Revision, + node: Node, + ) -> Result<(), NodeMapError> { + self.index.insert(rev, node); + self.nt.insert(&self.index, &node, rev)?; + Ok(()) + } + + pub fn insert( &mut self, rev: Revision, hex: &str, ) -> Result<(), NodeMapError> { - let node = pad_node(hex); - self.index.insert(rev, node); - self.nt.insert(&self.index, &node, rev)?; - Ok(()) + return self.insert_node(rev, pad_node(hex)); } fn find_hex(