@@ -0,0 +1,1552 @@
+package com.op1.aiff;%0A%0Aimport com.op1.iff.IffReader;%0Aimport com.op1.iff.IffWriter;%0Aimport org.junit.Rule;%0Aimport org.junit.Test;%0Aimport org.junit.rules.TemporaryFolder;%0A%0Aimport java.io.*;%0A%0Aimport static org.junit.Assert.*;%0A%0Apublic class AiffReaderWriterTest %7B%0A%0A    @Rule%0A    public TemporaryFolder temporaryFolder = new TemporaryFolder();%0A%0A    private static final String ALBUM_FILE = %22Scrap30.aif%22;%0A%0A    @Test%0A    public void read_and_write_album_file_produces_same_file() throws Exception %7B%0A        doReadWriteTest(ALBUM_FILE);%0A    %7D%0A%0A    private void doReadWriteTest(String file) throws IOException %7B%0A%0A        // given%0A        final InputStream inputStream = AiffReaderWriterTest.class.getClassLoader().getResourceAsStream(file);%0A        final DataInputStream dataInputStream = new DataInputStream(inputStream);%0A        final IffReader iffReader = new IffReader(dataInputStream);%0A        final AiffReader aiffReader = new AiffReader(iffReader);%0A        final File writeFile = temporaryFolder.newFile(%22writeFile.aif%22);%0A        System.out.println(writeFile.getAbsolutePath());%0A        final FileOutputStream fileOutputStream = new FileOutputStream(writeFile);%0A        final DataOutputStream dataOutputStream = new DataOutputStream(fileOutputStream);%0A        final IffWriter iffWriter = new IffWriter(dataOutputStream);%0A        final AiffWriter aiffWriter = new AiffWriter(iffWriter);%0A%0A        // when%0A        final Aiff aiff = aiffReader.readAiff();%0A        aiffWriter.writeAiff(aiff);%0A%0A        // then%0A        assertTrue(writeFile.exists());%0A    %7D%0A%7D%0A

Create AiffReaderWriterTest.java