Skip to content

Commit 7d69275

Browse files
committed
tests/builders/publish: Use TarballBuilder to simplify files() fn
1 parent 4b3117b commit 7d69275

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

src/tests/builders/publish.rs

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ use crates_io::views::krate_publish as u;
22
use std::collections::BTreeMap;
33

44
use crates_io_tarball::TarballBuilder;
5-
use flate2::{write::GzEncoder, Compression};
65

76
use super::DependencyBuilder;
87

@@ -50,18 +49,13 @@ impl PublishBuilder {
5049

5150
/// Set the files in the crate's tarball.
5251
pub fn files(mut self, files: &[(&str, &[u8])]) -> Self {
53-
let mut tarball = Vec::new();
54-
{
55-
let mut ar = tar::Builder::new(GzEncoder::new(&mut tarball, Compression::default()));
56-
for (name, data) in files {
57-
let mut header = tar::Header::new_gnu();
58-
header.set_size(data.len() as u64);
59-
assert_ok!(ar.append_data(&mut header, name, *data));
60-
}
61-
assert_ok!(ar.finish());
52+
let mut builder = TarballBuilder::new(&self.krate_name, &self.version.to_string());
53+
54+
for (name, data) in files {
55+
builder = builder.add_file(name, data);
6256
}
6357

64-
self.tarball = tarball;
58+
self.tarball = builder.build();
6559
self
6660
}
6761

0 commit comments

Comments
 (0)