about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlexis Bourget <alexis.bourget@gmail.com>2020-10-17 18:47:58 +0200
committerAlexis Bourget <alexis.bourget@gmail.com>2020-10-17 18:47:58 +0200
commit85afbd8a15a7e37b35a0653693bd6acf3138f301 (patch)
tree733789fe8d74ea34552f3a1e64b9c24a38e07752
parent4af560ecefe7c092f9584e20e43800b52bee4795 (diff)
downloadrust-85afbd8a15a7e37b35a0653693bd6acf3138f301.tar.gz
rust-85afbd8a15a7e37b35a0653693bd6acf3138f301.zip
Rebase conflicts
-rw-r--r--library/alloc/tests/vec_deque.rs30
-rw-r--r--src/test/ui/zero-sized/zero-sized-vec-deque-push.rs32
2 files changed, 30 insertions, 32 deletions
diff --git a/library/alloc/tests/vec_deque.rs b/library/alloc/tests/vec_deque.rs
index 05cb3a2c03d..705f0d62fbb 100644
--- a/library/alloc/tests/vec_deque.rs
+++ b/library/alloc/tests/vec_deque.rs
@@ -1698,3 +1698,33 @@ fn test_binary_search_by_key() {
     assert_eq!(deque.binary_search_by_key(&3, |&(v,)| v), Ok(2));
     assert_eq!(deque.binary_search_by_key(&4, |&(v,)| v), Err(3));
 }
+
+#[test]
+fn test_zero_sized_push() {
+    const N: usize = 8;
+
+    // Zero sized type
+    struct Zst;
+
+    // Test that for all possible sequences of push_front / push_back,
+    // we end up with a deque of the correct size
+
+    for len in 0..N {
+        let mut tester = VecDeque::with_capacity(len);
+        assert_eq!(tester.len(), 0);
+        assert!(tester.capacity() >= len);
+        for case in 0..(1 << len) {
+            assert_eq!(tester.len(), 0);
+            for bit in 0..len {
+                if case & (1 << bit) != 0 {
+                    tester.push_front(Zst);
+                } else {
+                    tester.push_back(Zst);
+                }
+            }
+            assert_eq!(tester.len(), len);
+            assert_eq!(tester.iter().count(), len);
+            tester.clear();
+        }
+    }
+}
diff --git a/src/test/ui/zero-sized/zero-sized-vec-deque-push.rs b/src/test/ui/zero-sized/zero-sized-vec-deque-push.rs
deleted file mode 100644
index c541208703b..00000000000
--- a/src/test/ui/zero-sized/zero-sized-vec-deque-push.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-// run-pass
-use std::collections::VecDeque;
-use std::iter::Iterator;
-
-fn main() {
-    const N: usize = 8;
-
-    // Zero sized type
-    struct Zst;
-
-    // Test that for all possible sequences of push_front / push_back,
-    // we end up with a deque of the correct size
-
-    for len in 0..N {
-        let mut tester = VecDeque::with_capacity(len);
-        assert_eq!(tester.len(), 0);
-        assert!(tester.capacity() >= len);
-        for case in 0..(1 << len) {
-            assert_eq!(tester.len(), 0);
-            for bit in 0..len {
-                if case & (1 << bit) != 0 {
-                    tester.push_front(Zst);
-                } else {
-                    tester.push_back(Zst);
-                }
-            }
-            assert_eq!(tester.len(), len);
-            assert_eq!(tester.iter().count(), len);
-            tester.clear();
-        }
-    }
-}