JAL-3615 used gzip endpoints for Pfam and Rfam
[jalview.git] / test / jalview / io / FileParseTest.java
diff --git a/test/jalview/io/FileParseTest.java b/test/jalview/io/FileParseTest.java
new file mode 100644 (file)
index 0000000..7eb2c9c
--- /dev/null
@@ -0,0 +1,34 @@
+package jalview.io;
+
+import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertTrue;
+
+import org.testng.annotations.Test;
+
+public class FileParseTest
+{
+  @Test(groups = "Functional")
+  public void setIsGzipped()
+  {
+    assertFalse(FileParse.isGzipped(null));
+    assertFalse(FileParse.isGzipped("foobar"));
+    assertFalse(FileParse.isGzipped(".gz.foobar"));
+
+    assertTrue(FileParse.isGzipped("abc.gz"));
+    assertTrue(FileParse.isGzipped("abc.GZ"));
+    assertTrue(FileParse.isGzipped(".gz"));
+    assertFalse(FileParse.isGzipped("abc/gz"));
+    assertFalse(FileParse.isGzipped("gz"));
+    
+    assertTrue(FileParse.isGzipped("http:/xy.com/abc/gzipped"));
+    assertTrue(FileParse.isGzipped("abc/gzipped"));
+    assertTrue(FileParse.isGzipped("abc/GZIPPED"));
+    assertTrue(FileParse.isGzipped("/gzipped"));
+    assertFalse(FileParse.isGzipped("gzipped"));
+    
+    assertTrue(FileParse.isGzipped("http:/xy.com/abc?gz=1"));
+    assertTrue(FileParse.isGzipped("http:/xy.com/abc?GZ=1"));
+    // currently only recognised if the last token on the URL
+    assertFalse(FileParse.isGzipped("http:/xy.com/abc?gz=1&content-type=text/xml"));
+  }
+}