diff -r 63982243369c -r 0d277415ed02 emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/ZipCompatibilityTest.java --- a/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/ZipCompatibilityTest.java Wed Feb 06 15:22:57 2013 +0100 +++ b/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/ZipCompatibilityTest.java Thu Feb 07 12:58:12 2013 +0100 @@ -17,15 +17,8 @@ */ package org.apidesign.bck2brwsr.compact.tck; -import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.Objects; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; import org.apidesign.bck2brwsr.vmtest.Compare; import org.apidesign.bck2brwsr.vmtest.VMTest; import org.testng.annotations.Factory; @@ -38,7 +31,7 @@ @Compare public String testDemoStaticCalculator() throws IOException { InputStream is = getClass().getResourceAsStream("demo.static.calculator-0.3-SNAPSHOT.jar"); - Archive zip = Archive.createZip(is); + ZipArchive zip = ZipArchive.createZip(is); return zip.toString(); } @@ -46,115 +39,4 @@ public static Object[] create() { return VMTest.create(ZipCompatibilityTest.class); } - - private static final class Archive { - - private final Map entries = new LinkedHashMap<>(); - - public static Archive createZip(InputStream is) throws IOException { - Archive a = new Archive(); - readZip(is, a); - return a; - } - - /** - * Registers entry name and data - */ - final void register(String entry, InputStream is) throws IOException { - ByteArrayOutputStream os = new ByteArrayOutputStream(); - for (;;) { - int ch = is.read(); - if (ch == -1) { - break; - } - os.write(ch); - } - os.close(); - - entries.put(entry, os.toByteArray()); - } - - @Override - public int hashCode() { - return entries.hashCode(); - } - - @Override - public boolean equals(Object obj) { - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - final Archive other = (Archive) obj; - if (!Objects.deepEquals(this.entries, other.entries)) { - return false; - } - return true; - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - for (Map.Entry en : entries.entrySet()) { - String string = en.getKey(); - byte[] bs = en.getValue(); - - sb.append(string).append(" = ").append(Arrays.toString(bs)).append("\n"); - } - return sb.toString(); - } - - public void assertEquals(Archive zip, String msg) { - boolean ok = true; - - StringBuilder sb = new StringBuilder(); - sb.append(msg); - for (Map.Entry en : entries.entrySet()) { - String string = en.getKey(); - byte[] bs = en.getValue(); - - byte[] other = zip.entries.get(string); - - sb.append("\n"); - - if (other == null) { - sb.append("EXTRA ").append(string).append(" = ").append(Arrays.toString(bs)); - ok = false; - continue; - } - if (Arrays.equals(bs, other)) { - sb.append("OK ").append(string); - continue; - } else { - sb.append("DIFF ").append(string).append(" = ").append(Arrays.toString(bs)).append("\n"); - sb.append(" TO").append(string).append(" = ").append(Arrays.toString(other)).append("\n"); - ok = false; - continue; - } - } - for (Map.Entry entry : zip.entries.entrySet()) { - String string = entry.getKey(); - if (entries.get(string) == null) { - sb.append("MISS ").append(string).append(" = ").append(Arrays.toString(entry.getValue())); - ok = false; - } - } - if (!ok) { - assert false : sb.toString(); - } - } - public static void readZip(InputStream is, Archive data) throws IOException { - ZipInputStream zip = new ZipInputStream(is); - for (;;) { - ZipEntry en = zip.getNextEntry(); - if (en == null) { - return; - } - data.register(en.getName(), zip); - } - } - } - }