A shim crate to easily test code with loom
.
// std or loom, chosen at compile time by crate feature.
use loomy::{thread, cell::UnsafeCell};
struct Foo {
cell: UnsafeCell<...>,
}
#[test]
fn test_example() {
// When using `std`, `loomy::model` only invokes the closure and nothing
// more.
loomy::model(|| {
// ...
thread::spawn(|| {
// ...
});
// ...
});
}
Run tests with std
:
$ cargo test
Run tests with loom
:
$ cargo test --features loomy/enable