소스 검색

Add Vec<Box<T>> test

ticki 9 년 전
부모
커밋
b68418f6f9
1개의 변경된 파일25개의 추가작업 그리고 0개의 파일을 삭제
  1. 25 0
      tests/vec_box.rs

+ 25 - 0
tests/vec_box.rs

@@ -0,0 +1,25 @@
+extern crate ralloc;
+
+#[test]
+fn test() {
+    let mut vec = Vec::new();
+
+    for i in 0..0xFFFF {
+        vec.push(Box::new(i));
+    }
+
+    assert_eq!(*vec[0xDEAD], 0xDEAD);
+    assert_eq!(*vec[0xBEAF], 0xBEAF);
+    assert_eq!(*vec[0xABCD], 0xABCD);
+    assert_eq!(*vec[0xFFAB], 0xFFAB);
+    assert_eq!(*vec[0xAAAA], 0xAAAA);
+
+    for i in 0xFFFF..0 {
+        assert_eq!(*vec.pop().unwrap(), i);
+    }
+
+    for i in 0..0xFFFF {
+        *vec[i] = 0;
+        assert_eq!(*vec[i], 0);
+    }
+}