diff options
author | 2021-07-05 16:46:17 +0200 | |
---|---|---|
committer | 2021-07-05 16:46:17 +0200 | |
commit | baaf12d22a844350998d2f60ab3bc78df12ab29a (patch) | |
tree | 3e9e65d01cfe44d3e9723060bfc94d19571d02a9 /tests/test_bytes.rs | |
parent | ed1d24e57079a86c6201b5fd6be6f789265f0e6a (diff) | |
download | bytes-baaf12d22a844350998d2f60ab3bc78df12ab29a.tar.gz bytes-baaf12d22a844350998d2f60ab3bc78df12ab29a.tar.zst bytes-baaf12d22a844350998d2f60ab3bc78df12ab29a.zip |
Keep capacity when unsplit on empty other buf (#502)
Diffstat (limited to 'tests/test_bytes.rs')
-rw-r--r-- | tests/test_bytes.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/test_bytes.rs b/tests/test_bytes.rs index b9e6ce4..2d22fdd 100644 --- a/tests/test_bytes.rs +++ b/tests/test_bytes.rs @@ -785,6 +785,31 @@ fn bytes_mut_unsplit_empty_self() { } #[test] +fn bytes_mut_unsplit_other_keeps_capacity() { + let mut buf = BytesMut::with_capacity(64); + buf.extend_from_slice(b"aabb"); + + // non empty other created "from" buf + let mut other = buf.split_off(buf.len()); + other.extend_from_slice(b"ccddee"); + buf.unsplit(other); + + assert_eq!(buf.capacity(), 64); +} + +#[test] +fn bytes_mut_unsplit_empty_other_keeps_capacity() { + let mut buf = BytesMut::with_capacity(64); + buf.extend_from_slice(b"aabbccddee"); + + // empty other created "from" buf + let other = buf.split_off(buf.len()); + buf.unsplit(other); + + assert_eq!(buf.capacity(), 64); +} + +#[test] fn bytes_mut_unsplit_arc_different() { let mut buf = BytesMut::with_capacity(64); buf.extend_from_slice(b"aaaabbbbeeee"); |