### Question:
FindNeighborsPacketData implements PacketData { public static FindNeighborsPacketData readFrom(final RLPInput in) { in.enterList(); final Bytes target = in.readBytes(); final long expiration = in.readLongScalar(); in.leaveListLenient(); return new FindNeighborsPacketData(target, expiration); } private  FindNeighborsPacketData(final Bytes target, final long expiration); static FindNeighborsPacketData create(final Bytes target); @Override void writeTo(final RLPOutput out); static FindNeighborsPacketData readFrom(final RLPInput in); long getExpiration(); Bytes getTarget(); @Override String toString();  }### Answer:
@Test public void readFrom() { final long time = System.currentTimeMillis(); final Bytes target = Peer.randomId(); BytesValueRLPOutput out = new BytesValueRLPOutput(); out.startList(); out.writeBytes(target); out.writeLongScalar(time); out.endList(); final Bytes encoded = out.encoded(); final FindNeighborsPacketData deserialized = FindNeighborsPacketData.readFrom(RLP.input(encoded)); assertThat(deserialized.getTarget()).isEqualTo(target); assertThat(deserialized.getExpiration()).isEqualTo(time); }