]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.fastlz/testcases/org/simantics/fastlz/FastLZTest1.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.fastlz / testcases / org / simantics / fastlz / FastLZTest1.java
diff --git a/bundles/org.simantics.fastlz/testcases/org/simantics/fastlz/FastLZTest1.java b/bundles/org.simantics.fastlz/testcases/org/simantics/fastlz/FastLZTest1.java
new file mode 100644 (file)
index 0000000..6ddc7ed
--- /dev/null
@@ -0,0 +1,177 @@
+/*******************************************************************************\r
+ * Copyright (c) 2007, 2010 Association for Decentralized Information Management\r
+ * in Industry THTH ry.\r
+ * All rights reserved. This program and the accompanying materials\r
+ * are made available under the terms of the Eclipse Public License v1.0\r
+ * which accompanies this distribution, and is available at\r
+ * http://www.eclipse.org/legal/epl-v10.html\r
+ *\r
+ * Contributors:\r
+ *     VTT Technical Research Centre of Finland - initial API and implementation\r
+ *******************************************************************************/\r
+package org.simantics.fastlz;
+
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.zip.GZIPInputStream;
+import java.util.zip.GZIPOutputStream;
+
+import org.junit.Test;
+import org.simantics.fastlz.impl.OS;\r
+
+public class FastLZTest1 {
+
+    @Test
+    public void testCalculateOS() {
+        OSType os = OSType.calculate();
+        assertTrue("unknown OS type", os != OSType.UNKNOWN);
+    }
+
+    @Test
+    public void testCalculateArch() {
+        ARCHType arch = ARCHType.calculate();
+        assertTrue("unknown architecture type", arch != ARCHType.UNKNOWN);
+    }
+
+    @Test
+    public void testFormOsArchSuffix() {
+        OS.formOsArchSuffix();
+    }
+
+    @Test
+    public void testInitialize() {
+        fail("Not yet implemented");
+    }
+
+    @Test
+    public void testCompress() {
+        fail("Not yet implemented");
+    }
+
+    @Test
+    public void testDecompressCluster() {
+        fail("Not yet implemented");
+    }
+
+    @Test
+    public void testDecompress() {
+        fail("Not yet implemented");
+    }
+
+    @Test
+    public void testRead() {
+        fail("Not yet implemented");
+    }
+
+    @Test
+    public void testWrite() {
+        fail("Not yet implemented");
+    }
+
+    public static void test() {
+        byte[] data = new byte[537520000];
+        
+        while(true) {
+            try {
+                long beginTime = System.nanoTime();
+                File snapfile = new File("d:/Loviisa080129/Loviisa080129.dir/loviisa080129.snp.gz");
+                GZIPInputStream stream = new GZIPInputStream(new FileInputStream(snapfile), 128*1024);          
+                int pos = 0;
+                while(true) {               
+                    int length = stream.read(data, pos, data.length-pos);               
+                    if(length <= 0)
+                        break;              
+                    pos += length;
+                }               
+                stream.close();
+                long endTime = System.nanoTime();
+                
+                System.out.println("Uncompressed size: " + pos);
+                System.out.println("GZip read: " + (endTime-beginTime)*1e-9 + "s");             
+            } catch (Throwable e) {
+                e.printStackTrace();
+            }
+            
+            /*{
+                Checksum cs = new CRC32();              
+                cs.update(data, 0, data.length);
+                System.out.println("Checksum: " + cs.getValue());
+            }*/         
+            
+            try {           
+                File file = new File("d:/testlz.dat");
+                {
+                    long beginTime = System.nanoTime();
+                    OutputStream output = FastLZ.write(file);
+                    output.write(data); 
+                    output.close();
+                    long endTime = System.nanoTime();
+                    
+                    System.out.println("FastLZ write: " + (endTime-beginTime)*1e-9 + "s");
+                }
+                
+                System.out.println("FastLZ compressed size: " + file.length());
+                
+                {
+                    long beginTime = System.nanoTime();
+                    InputStream input = FastLZ.read(file);
+                    input.read(data);               
+                    input.close();
+                    long endTime = System.nanoTime();
+                    
+                    System.out.println("FastLZ read: " + (endTime-beginTime)*1e-9 + "s");
+                }
+                
+                /*{
+                    Checksum cs = new CRC32();              
+                    cs.update(data, 0, data.length);
+                    System.out.println("Checksum: " + cs.getValue());
+                }*/
+            } catch(Throwable e) {
+                e.printStackTrace();
+            }
+            
+            try {           
+                File snapfile = new File("d:/testgz.dat");
+                
+                long beginTime = System.nanoTime();             
+                OutputStream stream = new GZIPOutputStream(new FileOutputStream(snapfile)); 
+                stream.write(data);                         
+                stream.close();
+                long endTime = System.nanoTime();
+                
+                System.out.println("GZip write: " + (endTime-beginTime)*1e-9 + "s");
+                System.out.println("GZip compressed size: " + snapfile.length());
+            } catch (Throwable e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    
+    public static void test2() {
+        File file = new File("d:/testi.flz");
+        try {
+            /*OutputStream stream = write(file);
+            for(int i=0;i<100000;++i)
+                stream.write((Integer.toString(i) + "\n").getBytes());
+                */                          
+            InputStream stream = FastLZ.read(file);
+            byte[] b = new byte[100000];
+            stream.read(b);
+            for(int i=0;i<100000;++i) {
+                System.out.print((char)b[i]);
+            }
+            stream.close();
+        } catch(IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+}