|
1 | | -use std::alloc::{Layout, alloc, alloc_zeroed, dealloc, handle_alloc_error}; |
2 | | -use std::fmt::Debug; |
3 | | -use std::marker::PhantomData; |
4 | | -use std::mem::{ManuallyDrop, MaybeUninit, align_of}; |
5 | | -use std::ops::{Deref, DerefMut}; |
6 | | -use std::ptr::NonNull; |
| 1 | +use alloc::alloc::{alloc, alloc_zeroed, dealloc, handle_alloc_error}; |
| 2 | + |
| 3 | +use core::alloc::Layout; |
| 4 | +use core::fmt::{self, Debug}; |
| 5 | +use core::marker::PhantomData; |
| 6 | +use core::mem::{ManuallyDrop, MaybeUninit}; |
| 7 | +use core::ops::{Deref, DerefMut}; |
| 8 | +use core::ptr::NonNull; |
7 | 9 |
|
8 | 10 | use crate::pixel::Pixel; |
9 | 11 |
|
@@ -148,7 +150,7 @@ impl<T: PartialEq<U>, U> PartialEq<AlignedData<U>> for AlignedData<T> { |
148 | 150 | impl<T: Eq> Eq for AlignedData<T> {} |
149 | 151 |
|
150 | 152 | impl<T: Debug> Debug for AlignedData<T> { |
151 | | - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { |
| 153 | + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { |
152 | 154 | if self.len() > 5 { |
153 | 155 | f.debug_list().entries(&self[..5]).finish_non_exhaustive() |
154 | 156 | } else { |
@@ -209,6 +211,8 @@ impl<T> Drop for AlignedData<T> { |
209 | 211 | mod tests { |
210 | 212 | use super::*; |
211 | 213 |
|
| 214 | + use alloc::{format, string::String, vec::Vec}; |
| 215 | + |
212 | 216 | #[test] |
213 | 217 | fn empty() { |
214 | 218 | AlignedData::<u8>::new(0); |
@@ -295,19 +299,24 @@ mod tests { |
295 | 299 |
|
296 | 300 | // SAFETY: Initialized above. |
297 | 301 | let data = unsafe { data.assume_init() }; |
298 | | - println!("{:?}", &data[100..140]); |
| 302 | + for (idx, x) in data[100..140].iter().enumerate() { |
| 303 | + let idx = 100 + idx; |
| 304 | + assert_eq!(*x, (idx % 42) as u8); |
| 305 | + } |
299 | 306 | } |
300 | 307 |
|
301 | 308 | #[test] |
302 | 309 | fn uninit_with_drop() { |
303 | 310 | let mut data = AlignedData::<String>::new_uninit(3); |
304 | | - data[0].write("Hello World".into()); |
| 311 | + data[0].write(String::from("Hello World")); |
305 | 312 | data[1].write(String::new()); |
306 | | - data[2].write("This is a test".into()); |
| 313 | + data[2].write(String::from("This is a test")); |
307 | 314 |
|
308 | 315 | // SAFETY: Initialized above. |
309 | 316 | let data = unsafe { data.assume_init() }; |
310 | | - println!("{:?}", &*data); |
| 317 | + assert_eq!(data[0], String::from("Hello World")); |
| 318 | + assert_eq!(data[1], String::new()); |
| 319 | + assert_eq!(data[2], String::from("This is a test")); |
311 | 320 | } |
312 | 321 |
|
313 | 322 | #[test] |
@@ -374,14 +383,16 @@ mod tests { |
374 | 383 | #[test] |
375 | 384 | fn clone() { |
376 | 385 | let mut data = AlignedData::<String>::new_uninit(3); |
377 | | - data[0].write("Hello World".into()); |
| 386 | + data[0].write(String::from("Hello World")); |
378 | 387 | data[1].write(String::new()); |
379 | | - data[2].write("This is a test".into()); |
| 388 | + data[2].write(String::from("This is a test")); |
380 | 389 |
|
381 | 390 | // SAFETY: Initialized above. |
382 | 391 | let data = unsafe { data.assume_init() }; |
383 | 392 | let data2 = data.clone(); |
384 | 393 | drop(data); |
385 | | - println!("{:?}", &*data2); |
| 394 | + assert_eq!(data2[0], String::from("Hello World")); |
| 395 | + assert_eq!(data2[1], String::new()); |
| 396 | + assert_eq!(data2[2], String::from("This is a test")); |
386 | 397 | } |
387 | 398 | } |
0 commit comments