diff options
Diffstat (limited to '')
-rw-r--r-- | .travis.yml | 4 | ||||
-rw-r--r-- | tests/test_bytes.rs | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml index be9d034..9d190d4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,8 +30,8 @@ matrix: # Run tests on some extra platforms - env: TARGET=i686-unknown-linux-gnu - env: TARGET=armv7-unknown-linux-gnueabihf - - env: TARGET=powerpc-unknown-linux-gnu - - env: TARGET=powerpc64-unknown-linux-gnu + - env: RUST_TEST_THREADS=1 TARGET=powerpc-unknown-linux-gnu + - env: RUST_TEST_THREADS=1 TARGET=powerpc64-unknown-linux-gnu before_install: set -e diff --git a/tests/test_bytes.rs b/tests/test_bytes.rs index cfb5070..2e163df 100644 --- a/tests/test_bytes.rs +++ b/tests/test_bytes.rs @@ -298,6 +298,9 @@ fn extend() { } #[test] +// Only run these tests on little endian systems. CI uses qemu for testing +// little endian... and qemu doesn't really support threading all that well. +#[cfg(target_endian = "little")] fn stress() { // Tests promoting a buffer from a vec -> shared in a concurrent situation use std::sync::{Arc, Barrier}; @@ -308,7 +311,7 @@ fn stress() { for i in 0..ITERS { let data = [i as u8; 256]; - let buf = Arc::new(BytesMut::from(&data[..])); + let buf = Arc::new(Bytes::from(&data[..])); let barrier = Arc::new(Barrier::new(THREADS)); let mut joins = Vec::with_capacity(THREADS); @@ -319,7 +322,8 @@ fn stress() { joins.push(thread::spawn(move || { c.wait(); - let _buf = buf.clone(); + let buf: Bytes = (*buf).clone(); + drop(buf); })); } |