X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fio%2FFileIOTester.java;h=b693d516c674c4fe3ba3e2d8f833db5f0e7adffb;hb=cb8e52fbbc5f725e3f7f48c672cdddb0690bd978;hp=4fb2ee630179c384c1cb4a472c7b7906938a5d45;hpb=ee198b3ca3687f18a2ee186f4e7c7330f4ea30f0;p=jalview.git diff --git a/test/jalview/io/FileIOTester.java b/test/jalview/io/FileIOTester.java index 4fb2ee6..b693d51 100644 --- a/test/jalview/io/FileIOTester.java +++ b/test/jalview/io/FileIOTester.java @@ -20,14 +20,25 @@ */ package jalview.io; +import static org.testng.Assert.assertFalse; +import static org.testng.Assert.assertTrue; + +import java.io.BufferedInputStream; +import java.io.ByteArrayInputStream; import java.io.File; +import java.io.FileInputStream; import java.io.IOException; +import java.io.InputStream; +import java.io.StringBufferInputStream; import org.testng.AssertJUnit; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; +import jalview.bin.Console; +import jalview.gui.JvOptionPane; + /** * @author jimp * @@ -35,12 +46,20 @@ import org.testng.annotations.Test; public class FileIOTester { + @BeforeClass(alwaysRun = true) + public void setUpJvOptionPane() + { + JvOptionPane.setInteractiveMode(false); + JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); + } + /** * @throws java.lang.Exception */ @BeforeClass(alwaysRun = true) public static void setUpBeforeClass() throws Exception { + Console.initLogger(); } /** @@ -79,8 +98,9 @@ public class FileIOTester public void testStarsInFasta1() throws IOException { String uri; - FileParse fp = new FileParse(uri = STARS_FA_FILE1.getAbsoluteFile() - .toString(), DataSourceType.FILE); + FileParse fp = new FileParse( + uri = STARS_FA_FILE1.getAbsoluteFile().toString(), + DataSourceType.FILE); assertValidFormat(FileFormat.Fasta, uri, fp); } @@ -88,8 +108,9 @@ public class FileIOTester public void testStarsInFasta2() throws IOException { String uri; - FileParse fp = new FileParse(uri = STARS_FA_FILE2.getAbsoluteFile() - .toString(), DataSourceType.FILE); + FileParse fp = new FileParse( + uri = STARS_FA_FILE2.getAbsoluteFile().toString(), + DataSourceType.FILE); assertValidFormat(FileFormat.Fasta, uri, fp); } @@ -97,8 +118,9 @@ public class FileIOTester public void testGzipIo() throws IOException { String uri; - FileParse fp = new FileParse(uri = ALIGN_FILE.getAbsoluteFile().toURI() - .toString(), DataSourceType.URL); + FileParse fp = new FileParse( + uri = ALIGN_FILE.getAbsoluteFile().toURI().toString(), + DataSourceType.URL); assertValidFormat(FileFormat.Fasta, uri, fp); } @@ -106,17 +128,42 @@ public class FileIOTester public void testGziplocalFileIO() throws IOException { String filepath; - FileParse fp = new FileParse(filepath = ALIGN_FILE.getAbsoluteFile() - .toString(), DataSourceType.FILE); + FileParse fp = new FileParse( + filepath = ALIGN_FILE.getAbsoluteFile().toString(), + DataSourceType.FILE); assertValidFormat(FileFormat.Fasta, filepath, fp); } @Test(groups = { "Functional" }) + public void testIsGzipInputStream() throws IOException + { + InputStream is = new FileInputStream(ALIGN_FILE); + + /* + * first try fails - FileInputStream does not support mark/reset + */ + assertFalse(FileParse.isGzipStream(is)); + + /* + * wrap in a BufferedInputStream and try again + */ + is = new BufferedInputStream(is, 16); + assertTrue(FileParse.isGzipStream(is)); + + /* + * check recognition of non-gzipped input + */ + assertFalse(FileParse.isGzipStream(new BufferedInputStream( + new ByteArrayInputStream("NOT A GZIP".getBytes())))); + } + + @Test(groups = { "Functional" }) public void testNonGzipURLIO() throws IOException { String uri; - FileParse fp = new FileParse(uri = NOTGZALIGN_FILE.getAbsoluteFile() - .toURI().toString(), DataSourceType.URL); + FileParse fp = new FileParse( + uri = NOTGZALIGN_FILE.getAbsoluteFile().toURI().toString(), + DataSourceType.URL); assertValidFormat(FileFormat.Fasta, uri, fp); } @@ -124,8 +171,9 @@ public class FileIOTester public void testNonGziplocalFileIO() throws IOException { String filepath; - FileParse fp = new FileParse(filepath = NOTGZALIGN_FILE - .getAbsoluteFile().toString(), DataSourceType.FILE); + FileParse fp = new FileParse( + filepath = NOTGZALIGN_FILE.getAbsoluteFile().toString(), + DataSourceType.FILE); assertValidFormat(FileFormat.Fasta, filepath, fp); } }