diff options
| author | Steven Fackler <sfackler@gmail.com> | 2016-07-19 10:50:52 +0200 |
|---|---|---|
| committer | Steven Fackler <sfackler@gmail.com> | 2016-11-26 10:07:39 -0800 |
| commit | 5377b5e9c4270222cbbca99dae45715dd9d87d1c (patch) | |
| tree | 076978568963c1cd3ca00e54b8a6f52dbd20fbea /src/libcoretest | |
| parent | a31ad75bdedab55ca290332edda9acbd2d5a0157 (diff) | |
| download | rust-5377b5e9c4270222cbbca99dae45715dd9d87d1c.tar.gz rust-5377b5e9c4270222cbbca99dae45715dd9d87d1c.zip | |
Overload get{,_mut}{,_unchecked}
Diffstat (limited to 'src/libcoretest')
| -rw-r--r-- | src/libcoretest/slice.rs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/libcoretest/slice.rs b/src/libcoretest/slice.rs index f82ab44adad..ad39e6b081b 100644 --- a/src/libcoretest/slice.rs +++ b/src/libcoretest/slice.rs @@ -180,3 +180,47 @@ fn test_windows_last() { let c2 = v2.windows(2); assert_eq!(c2.last().unwrap()[0], 3); } + +#[test] +fn get_range() { + let v: &[i32] = &[0, 1, 2, 3, 4, 5]; + assert_eq!(v.get(..), Some(&[0, 1, 2, 3, 4, 5][..])); + assert_eq!(v.get(..2), Some(&[0, 1][..])); + assert_eq!(v.get(2..), Some(&[2, 3, 4, 5][..])); + assert_eq!(v.get(1..4), Some(&[1, 2, 3][..])); + assert_eq!(v.get(7..), None); + assert_eq!(v.get(7..10), None); +} + +#[test] +fn get_mut_range() { + let mut v: &mut [i32] = &mut [0, 1, 2, 3, 4, 5]; + assert_eq!(v.get_mut(..), Some(&mut [0, 1, 2, 3, 4, 5][..])); + assert_eq!(v.get_mut(..2), Some(&mut [0, 1][..])); + assert_eq!(v.get_mut(2..), Some(&mut [2, 3, 4, 5][..])); + assert_eq!(v.get_mut(1..4), Some(&mut [1, 2, 3][..])); + assert_eq!(v.get_mut(7..), None); + assert_eq!(v.get_mut(7..10), None); +} + +#[test] +fn get_unchecked_range() { + unsafe { + let v: &[i32] = &[0, 1, 2, 3, 4, 5]; + assert_eq!(v.get_unchecked(..), &[0, 1, 2, 3, 4, 5][..]); + assert_eq!(v.get_unchecked(..2), &[0, 1][..]); + assert_eq!(v.get_unchecked(2..), &[2, 3, 4, 5][..]); + assert_eq!(v.get_unchecked(1..4), &[1, 2, 3][..]); + } +} + +#[test] +fn get_unchecked_mut_range() { + unsafe { + let v: &mut [i32] = &mut [0, 1, 2, 3, 4, 5]; + assert_eq!(v.get_unchecked_mut(..), &mut [0, 1, 2, 3, 4, 5][..]); + assert_eq!(v.get_unchecked_mut(..2), &mut [0, 1][..]); + assert_eq!(v.get_unchecked_mut(2..), &mut[2, 3, 4, 5][..]); + assert_eq!(v.get_unchecked_mut(1..4), &mut [1, 2, 3][..]); + } +} |
