message: Retain tests aginst `000...000` data
diff: @@ -145,8 +145,7 @@ mod test {
  #[proptest]
  fn generates_valid_proof(test_data: TestDataSize) {
  - let data = prepare_bytes(test_data.0);
  -
  + for data in [prepare_bytes(test_data.0), vec![0u8; test_data.0]] {
  let number_of_chunks: u64 = data
  .chunks(ChunkWithProof::CHUNK_SIZE_BYTES)
  .len()
  @@ -158,13 +157,14 @@ mod test {
  .map(|chunk_index| { ChunkWithProof::new(data.as_slice(), chunk_index).unwrap() })
  .all(|chunk_with_proof| chunk_with_proof.verify()));
  }
  + }
  #[proptest]
  fn validate_chunks_against_hash_merkle_tree(test_data: TestDataSizeAtLeastTwoChunks) {
  // This test requires at least two chunks
  assert!(test_data.0 >= ChunkWithProof::CHUNK_SIZE_BYTES * 2);
  - let data = prepare_bytes(test_data.0);
  + for data in [prepare_bytes(test_data.0), vec![0u8; test_data.0]] {
  let expected_root = Digest::hash_merkle_tree(
  data.chunks(ChunkWithProof::CHUNK_SIZE_BYTES)
  .map(Digest::hash),
  @@ -183,11 +183,11 @@ mod test {
  assert_eq!(proof_0.root_hash(), expected_root);
  assert_eq!(proof_1.root_hash(), expected_root);
  }
  + }
  #[proptest]
  fn verifies_chunk_with_proofs(test_data: TestDataSize) {
  - let data = prepare_bytes(test_data.0);
  -
  + for data in [prepare_bytes(test_data.0), vec![0u8; test_data.0]] {
  impl ChunkWithProof {
  fn replace_first_proof(self) -> Self {
  let mut rng = rand::thread_rng();
  @@ -209,26 +209,29 @@ mod test {
  let chunk_with_incorrect_proof = chunk_with_proof.replace_first_proof();
  assert!(!chunk_with_incorrect_proof.verify());
  }
  + }
  #[proptest]
  fn serde_deserialization_of_malformed_chunk_should_work(test_data: TestDataSize) {
  - let data = prepare_bytes(test_data.0);
  + for data in [prepare_bytes(test_data.0), vec![0u8; test_data.0]] {
  let chunk_with_proof = ChunkWithProof::new(data.as_slice(), 0).unwrap();
  let json = serde_json::to_string(&chunk_with_proof).unwrap();
  assert_eq!(
  chunk_with_proof,
  - serde_json::from_str::<ChunkWithProof>(&json).expect("should deserialize correctly")
  + serde_json::from_str::<ChunkWithProof>(&json)
  + .expect("should deserialize correctly")
  );
  let chunk_with_incorrect_proof = chunk_with_proof.replace_first_proof();
  let json = serde_json::to_string(&chunk_with_incorrect_proof).unwrap();
  - serde_json::from_str::<ChunkWithProof>(&json).expect("should deserialize correctly")
  + serde_json::from_str::<ChunkWithProof>(&json).expect("should deserialize correctly");
  + }
  }
  #[proptest]
  fn bytesrepr_deserialization_of_malformed_chunk_should_work(test_data: TestDataSize) {
  - let data = prepare_bytes(test_data.0);
  + for data in [prepare_bytes(test_data.0), vec![0u8; test_data.0]] {
  let chunk_with_proof = ChunkWithProof::new(data.as_slice(), 0).unwrap();
  let bytes = chunk_with_proof
  @@ -245,7 +248,8 @@ mod test {
  .to_bytes()
  .expect("should serialize correctly");
  - ChunkWithProof::from_bytes(&bytes).expect("should deserialize correctly")
  + ChunkWithProof::from_bytes(&bytes).expect("should deserialize correctly");
  + }
  }
  #[test]
  