### Question:
EventMessage implements Metadata.Entry { @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(schemeIdUri); dest.writeString(value); dest.writeLong(durationMs); dest.writeLong(id); dest.writeByteArray(messageData); } EventMessage(
      String schemeIdUri, String value, long durationMs, long id, byte[] messageData);   EventMessage(Parcel in); @Override int hashCode(); @Override boolean equals(@Nullable Object obj); @Override String toString(); @Override int describeContents(); @Override void writeToParcel(Parcel dest, int flags); final String schemeIdUri; final String value; final long durationMs; final long id; final byte[] messageData; static final Parcelable.Creator<EventMessage> CREATOR; }### Answer:
@Test public void testEventMessageParcelable() { EventMessage eventMessage = new EventMessage("urn:test", "123", 3000, 1000403, new byte[] {0, 1, 2, 3, 4}); Parcel parcel = Parcel.obtain(); eventMessage.writeToParcel(parcel, 0); parcel.setDataPosition(0); EventMessage fromParcelEventMessage = EventMessage.CREATOR.createFromParcel(parcel); assertThat(fromParcelEventMessage).isEqualTo(eventMessage); }