// Is this a single line BLC file?
String data1 = source.nextLine();
String data2 = source.nextLine();
+ int c1;
if (checkPIR)
{
starterm = (data1 != null && data1.indexOf("*") > -1)
|| (data2 != null && data2.indexOf("*") > -1);
}
- if (data2 != null && data.indexOf("*") > -1)
+ if (data2 != null && (c1=data.indexOf("*")) > -1)
{
- if (data.indexOf("*") == data2.indexOf("*"))
+ if (c1==0 && c1 == data2.indexOf("*"))
{
reply = "BLC";
+ } else {
+ reply = "FASTA"; // possibly a bad choice - may be recognised as PIR
}
// otherwise can still possibly be a PIR file
}
public static void tearDownAfterClass() throws Exception
{
}
+ // TODO: make a better/more comprehensive test harness for identify/io
+
final static File ALIGN_FILE = new File("test/jalview/io/test_gz_fasta.gz");
final static File NOTGZALIGN_FILE = new File("test/jalview/io/test_gz_fasta_notgz.gz");
+ final static File STARS_FA_FILE1 = new File("test/jalview/io/test_fasta_stars.fa");
+ final static File STARS_FA_FILE2 = new File("test/jalview/io/test_fasta_stars2.fa");
- private void assertValidFasta(String src, FileParse fp)
+ private void assertValidFormat(String fmt, String src, FileParse fp)
{
assertTrue("Couldn't resolve "+src+" as a valid file",fp.isValid());
String type = new IdentifyFile().Identify(fp);
- assertTrue("Gzipped data from '"+src+"' identified as '"+type+"'",type.equalsIgnoreCase("FASTA"));
+ assertTrue("Data from '"+src+"' Expected to be '"+fmt+"' identified as '"+type+"'",type.equalsIgnoreCase(fmt));
+ }
+ @Test
+ public void testStarsInFasta1() throws IOException
+ {
+ String uri;
+ FileParse fp = new FileParse(uri=STARS_FA_FILE1.getAbsoluteFile().toString(),AppletFormatAdapter.FILE);
+ assertValidFormat("FASTA", uri, fp);
+ }
+ @Test
+ public void testStarsInFasta2() throws IOException
+ {
+ String uri;
+ FileParse fp = new FileParse(uri=STARS_FA_FILE2.getAbsoluteFile().toString(),AppletFormatAdapter.FILE);
+ assertValidFormat("FASTA", uri, fp);
}
@Test
public void testGzipIo() throws IOException
{
String uri;
FileParse fp = new FileParse(uri=ALIGN_FILE.getAbsoluteFile().toURI().toString(),AppletFormatAdapter.URL);
- assertValidFasta(uri, fp);
+ assertValidFormat("FASTA", uri, fp);
}
@Test
{
String filepath;
FileParse fp = new FileParse(filepath=ALIGN_FILE.getAbsoluteFile().toString(), AppletFormatAdapter.FILE);
- assertValidFasta(filepath, fp);
+ assertValidFormat("FASTA",filepath, fp);
}
@Test
public void testNonGzipURLIO() throws IOException
{
String uri;
FileParse fp = new FileParse(uri=NOTGZALIGN_FILE.getAbsoluteFile().toURI().toString(),AppletFormatAdapter.URL);
- assertValidFasta(uri, fp);
+ assertValidFormat("FASTA",uri, fp);
}
@Test
public void testNonGziplocalFileIO() throws IOException
{
String filepath;
FileParse fp = new FileParse(filepath=NOTGZALIGN_FILE.getAbsoluteFile().toString(), AppletFormatAdapter.FILE);
- assertValidFasta(filepath, fp);
+ assertValidFormat("FASTA",filepath, fp);
}
}