diff options
author | Florian Klink <flokli@flokli.de> | 2023-06-09T07·28+0300 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2023-06-12T10·15+0000 |
commit | 6f85dbfc06c4fa96deb968cfeb7e98ba36e95043 (patch) | |
tree | 9dd303d69ae3de19bfe2244d8547c639e4e95995 /tvix/store/src/tests | |
parent | 8d05c0ceaa9bddb7fdaab436730f093eb16374a2 (diff) |
feat(tvix/store/pathinfosvc): add calculate_nar method r/6271
Putting this in the PathInfoService trait makes much more sense, we can have direct control over where/how to cache the results in the implementation. This now requires each PathInfoService to hold pointers to BlobService and DirectoryService. Change-Id: I4faae780d43eae4beeb57bd5e190e6d1a5d3314e Reviewed-on: https://cl.tvl.fyi/c/depot/+/8724 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su>
Diffstat (limited to 'tvix/store/src/tests')
-rw-r--r-- | tvix/store/src/tests/nar_renderer.rs | 14 | ||||
-rw-r--r-- | tvix/store/src/tests/utils.rs | 7 |
2 files changed, 12 insertions, 9 deletions
diff --git a/tvix/store/src/tests/nar_renderer.rs b/tvix/store/src/tests/nar_renderer.rs index 48c07e53c93e..20cca1e77848 100644 --- a/tvix/store/src/tests/nar_renderer.rs +++ b/tvix/store/src/tests/nar_renderer.rs @@ -1,6 +1,6 @@ use crate::directoryservice::DirectoryService; use crate::nar::calculate_size_and_sha256; -use crate::nar::writer_nar; +use crate::nar::write_nar; use crate::proto::DirectoryNode; use crate::proto::FileNode; use crate::proto::SymlinkNode; @@ -13,7 +13,7 @@ use std::io; fn single_symlink() { let mut buf: Vec<u8> = vec![]; - writer_nar( + write_nar( &mut buf, &crate::proto::node::Node::Symlink(SymlinkNode { name: "doesntmatter".to_string(), @@ -33,7 +33,7 @@ fn single_symlink() { fn single_file_missing_blob() { let mut buf: Vec<u8> = vec![]; - let e = writer_nar( + let e = write_nar( &mut buf, &crate::proto::node::Node::File(FileNode { name: "doesntmatter".to_string(), @@ -74,7 +74,7 @@ fn single_file_wrong_blob_size() { { let mut buf: Vec<u8> = vec![]; - let e = writer_nar( + let e = write_nar( &mut buf, &crate::proto::node::Node::File(FileNode { name: "doesntmatter".to_string(), @@ -99,7 +99,7 @@ fn single_file_wrong_blob_size() { { let mut buf: Vec<u8> = vec![]; - let e = writer_nar( + let e = write_nar( &mut buf, &crate::proto::node::Node::File(FileNode { name: "doesntmatter".to_string(), @@ -136,7 +136,7 @@ fn single_file() { let mut buf: Vec<u8> = vec![]; - writer_nar( + write_nar( &mut buf, &crate::proto::node::Node::File(FileNode { name: "doesntmatter".to_string(), @@ -174,7 +174,7 @@ fn test_complicated() { let mut buf: Vec<u8> = vec![]; - writer_nar( + write_nar( &mut buf, &crate::proto::node::Node::Directory(DirectoryNode { name: "doesntmatter".to_string(), diff --git a/tvix/store/src/tests/utils.rs b/tvix/store/src/tests/utils.rs index ec379bddcf77..6905fe56b5d7 100644 --- a/tvix/store/src/tests/utils.rs +++ b/tvix/store/src/tests/utils.rs @@ -12,6 +12,9 @@ pub fn gen_directory_service() -> impl DirectoryService + Send + Sync + Clone + MemoryDirectoryService::default() } -pub fn gen_pathinfo_service() -> impl PathInfoService { - MemoryPathInfoService::default() +pub fn gen_pathinfo_service<DS: DirectoryService + Clone>( + blob_service: Box<dyn BlobService>, + directory_service: DS, +) -> impl PathInfoService { + MemoryPathInfoService::new(blob_service, directory_service) } |