@Test
public void testPeekId3Data_returnId3Tag_ifId3TagPresent()
    throws IOException, InterruptedException {

  Id3Peeker id3Peeker = new Id3Peeker();
  byte[] rawId3 =
      Id3DecoderTest.buildSingleFrameTag(
          "APIC",
          new byte[] {
            3, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 0, 16, 72, 101, 108, 108, 111, 32,
            87, 111, 114, 108, 100, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
          });
  FakeExtractorInput input = new FakeExtractorInput.Builder().setData(rawId3).build();
  Metadata metadata = id3Peeker.peekId3Data(input, /* id3FramePredicate= */ null);
  assertThat(metadata.length()).isEqualTo(1);
  ApicFrame apicFrame = (ApicFrame) metadata.get(0);
  assertThat(apicFrame.mimeType).isEqualTo("image/jpeg");
  assertThat(apicFrame.pictureType).isEqualTo(16);
  assertThat(apicFrame.description).isEqualTo("Hello World");
  assertThat(apicFrame.pictureData).hasLength(10);
  assertThat(apicFrame.pictureData).isEqualTo(new byte[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0});
}