Merge branch 'develop' into trialMerge
[jalview.git] / test / jalview / io / FormatAdapterTest.java
index 38303d3..7aa5769 100644 (file)
@@ -30,7 +30,6 @@ import jalview.gui.JvOptionPane;
 
 import java.io.IOException;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
 import org.testng.annotations.BeforeClass;
@@ -53,12 +52,12 @@ public class FormatAdapterTest
    * @throws IOException
    */
   @Test(groups = { "Functional" }, dataProvider = "formats")
-  public void testRoundTrip(String format) throws IOException
+  public void testRoundTrip(FileFormatI format) throws IOException
   {
     try
     {
       AlignmentI al = new FormatAdapter().readFile("examples/uniref50.fa",
-              FormatAdapter.FILE, "FASTA");
+              DataSourceType.FILE, FileFormat.Fasta);
 
       /*
        * 'gap' is the gap character used in the alignment data file here,
@@ -72,7 +71,7 @@ public class FormatAdapterTest
               false);
 
       AlignmentI reloaded = new FormatAdapter().readFile(formatted,
-              FormatAdapter.PASTE, format);
+              DataSourceType.PASTE, format);
       List<SequenceI> reread = reloaded.getSequences();
       assertEquals("Wrong number of reloaded sequences", seqs.length,
               reread.size());
@@ -110,9 +109,9 @@ public class FormatAdapterTest
    * @return
    */
   String adjustForGapTreatment(String sequenceString, char gap,
-          String format)
+          FileFormatI format)
   {
-    if ("MSF".equals(format))
+    if (FileFormat.MSF.equals(format))
     {
       /*
        * MSF forces gap character to '.', so change it back
@@ -125,27 +124,26 @@ public class FormatAdapterTest
 
   /**
    * Data provider that serves alignment formats that are both readable and
-   * writable
+   * (text) writable
    * 
    * @return
    */
   @DataProvider(name = "formats")
   static Object[][] getFormats()
   {
-    List<String> both = new ArrayList<String>();
-    String[] readable = FormatAdapter.READABLE_FORMATS;
-    List<String> writeable = Arrays.asList(FormatAdapter.WRITEABLE_FORMATS);
-    for (String r : readable)
+    List<FileFormatI> both = new ArrayList<FileFormatI>();
+    for (FileFormat format : FileFormat.values())
     {
-      if (writeable.contains(r))
+      if (format.isReadable() && format.isWritable()
+              && format.isTextFormat())
       {
-        both.add(r);
+        both.add(format);
       }
     }
 
     Object[][] formats = new Object[both.size()][];
     int i = 0;
-    for (String format : both)
+    for (FileFormatI format : both)
     {
       formats[i] = new Object[] { format };
       i++;
@@ -161,6 +159,6 @@ public class FormatAdapterTest
   @Test(groups = { "Functional" }, enabled = false)
   public void testOneFormatRoundTrip() throws IOException
   {
-    testRoundTrip("JSON");
+    testRoundTrip(FileFormat.Json);
   }
 }