about summary refs log tree commit diff
path: root/src/libcore/tests
diff options
context:
space:
mode:
authorAdrian Friedli <adi@koalatux.ch>2019-06-08 22:30:45 +0200
committerAdrian Friedli <adi@koalatux.ch>2019-06-08 22:30:45 +0200
commit26d4c8f01c07fdb3b0c0354dd9b509c955a87e9c (patch)
tree6f136ea10a2e377a9b1210343768a45dc11d3d50 /src/libcore/tests
parent5c45343f11fbf93cf4e15568aee3ff3f2f287466 (diff)
downloadrust-26d4c8f01c07fdb3b0c0354dd9b509c955a87e9c.tar.gz
rust-26d4c8f01c07fdb3b0c0354dd9b509c955a87e9c.zip
implement nth_back for Range
Diffstat (limited to 'src/libcore/tests')
-rw-r--r--src/libcore/tests/iter.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/libcore/tests/iter.rs b/src/libcore/tests/iter.rs
index bedb9e75612..171a33695bc 100644
--- a/src/libcore/tests/iter.rs
+++ b/src/libcore/tests/iter.rs
@@ -1658,6 +1658,23 @@ fn test_range_nth() {
 }
 
 #[test]
+fn test_range_nth_back() {
+    assert_eq!((10..15).nth_back(0), Some(14));
+    assert_eq!((10..15).nth_back(1), Some(13));
+    assert_eq!((10..15).nth_back(4), Some(10));
+    assert_eq!((10..15).nth_back(5), None);
+    assert_eq!((-120..80_i8).nth_back(199), Some(-120));
+
+    let mut r = 10..20;
+    assert_eq!(r.nth_back(2), Some(17));
+    assert_eq!(r, 10..17);
+    assert_eq!(r.nth_back(2), Some(14));
+    assert_eq!(r, 10..14);
+    assert_eq!(r.nth_back(10), None);
+    assert_eq!(r, 10..10);
+}
+
+#[test]
 fn test_range_from_nth() {
     assert_eq!((10..).nth(0), Some(10));
     assert_eq!((10..).nth(1), Some(11));