diff options
| author | Benoît du Garreau <bdgdlm@outlook.com> | 2021-06-10 19:09:04 +0200 |
|---|---|---|
| committer | Benoît du Garreau <bdgdlm@outlook.com> | 2021-06-10 19:16:55 +0200 |
| commit | 2cbd5d1df54400b8bd718b7e0dadc4c38c6f9932 (patch) | |
| tree | a7c9656ab869d5514c93b72061e7ee930a7d9c4b /library/std/src/io/tests.rs | |
| parent | 0279cb11ed98bdc589c66572477fd27f1dd3e0ac (diff) | |
| download | rust-2cbd5d1df54400b8bd718b7e0dadc4c38c6f9932.tar.gz rust-2cbd5d1df54400b8bd718b7e0dadc4c38c6f9932.zip | |
Specialize `io::Bytes::size_hint` for more types
Diffstat (limited to 'library/std/src/io/tests.rs')
| -rw-r--r-- | library/std/src/io/tests.rs | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/library/std/src/io/tests.rs b/library/std/src/io/tests.rs index 2b14e161503..a483847fb26 100644 --- a/library/std/src/io/tests.rs +++ b/library/std/src/io/tests.rs @@ -225,6 +225,24 @@ fn empty_size_hint() { } #[test] +fn slice_size_hint() { + let size_hint = (&[1, 2, 3]).bytes().size_hint(); + assert_eq!(size_hint, (3, Some(3))); +} + +#[test] +fn take_size_hint() { + let size_hint = (&[1, 2, 3]).take(2).bytes().size_hint(); + assert_eq!(size_hint, (2, Some(2))); + + let size_hint = (&[1, 2, 3]).take(4).bytes().size_hint(); + assert_eq!(size_hint, (3, Some(3))); + + let size_hint = io::repeat(0).take(3).bytes().size_hint(); + assert_eq!(size_hint, (3, Some(3))); +} + +#[test] fn chain_empty_size_hint() { let chain = io::empty().chain(io::empty()); let size_hint = chain.bytes().size_hint(); @@ -242,7 +260,7 @@ fn chain_size_hint() { let chain = buf_reader_1.chain(buf_reader_2); let size_hint = chain.bytes().size_hint(); - assert_eq!(size_hint, (testdata.len(), None)); + assert_eq!(size_hint, (testdata.len(), Some(testdata.len()))); } #[test] |
