extern crate quickcheck; use quickcheck::{TestResult, quickcheck}; fn reverse(xs: &[T]) -> Vec { let mut rev = vec!(); for x in xs { rev.insert(0, x.clone()) } rev } fn main() { fn prop(xs: Vec) -> TestResult { if xs.len() != 1 { return TestResult::discard() } TestResult::from_bool(xs == reverse(&*xs)) } quickcheck(prop as fn(Vec) -> TestResult); }