message: update Coin's quickcheck properties
diff: @@ -192,28 +192,10 @@ pub fn sum_coins<I>(coin_iter: I) -> Result<Coin>
  coin_iter.fold(Coin::new(0), |acc, ref c| acc.and_then(|v| v + *c))
  }
  -#[cfg(test)]
  -impl ::quickcheck::Arbitrary for Coin {
  - fn arbitrary<G: ::quickcheck::Gen>(g: &mut G) -> Self {
  - let mut coin = Coin::zero();
  - while {
  - let v = <u64 as ::quickcheck::Arbitrary>::arbitrary(g);
  - if let Ok(r) = Coin::new(v) {
  - coin = r;
  - false
  - } else {
  - true
  - }
  - } {}
  - coin
  - }
  -}
  -
  #[cfg(test)]
  mod test {
  -
  - mod properties {
  - use super::super::*;
  + use super::*;
  + use super::super::util::arbitrary::Wrapper;
  quickcheck!{
  // test a given u32 is always a valid value for a `Coin`
  @@ -222,13 +204,12 @@ mod test {
  }
  // test the cbor serialization/deserialization
  - fn coin_cbor_serialization(coin: Coin) -> bool {
  + fn coin_cbor_serialization(coin: Wrapper<Coin>) -> bool {
  use cbor_event::de::RawCbor;
  - let bytes = cbor!(coin).unwrap();
  + let bytes = cbor!(*coin).unwrap();
  let coin2 = RawCbor::from(&bytes).deserialize_complete().unwrap();
  - coin == coin2
  - }
  + *coin == coin2
  }
  }
  }
  