JAL-1740 implemented auto-update of BioJsMSA, introduced FTP client for downloading...
[jalview.git] / test / jalview / io / BioJsHTMLOutputTest.java
index 8d9de77..86b5470 100644 (file)
@@ -1,6 +1,9 @@
 package jalview.io;
 
+import java.io.File;
 import java.io.IOException;
+import java.net.URISyntaxException;
+import java.util.TreeMap;
 
 import org.junit.Assert;
 import org.junit.Test;
@@ -16,8 +19,8 @@ public class BioJsHTMLOutputTest
     String bjsTemplate = null;
     try
     {
-      bjsTemplate = BioJsHTMLOutput
-              .getBioJsTemplateAsString(bioJsHtmlOutput);
+      bioJsHtmlOutput.updateBioJS();
+      bjsTemplate = BioJsHTMLOutput.getBioJsTemplateAsString();
       // System.out.println(bjsTemplate);
     } catch (IOException e)
     {
@@ -25,4 +28,50 @@ public class BioJsHTMLOutputTest
     }
     Assert.assertNotNull(bjsTemplate);
   }
+
+  @Test(expected = NullPointerException.class)
+  public void expectedNullPointerException()
+  {
+    BioJsHTMLOutput bjs = new BioJsHTMLOutput(null, null);
+    try
+    {
+      bjs.updateBioJSVersionsInfo(null);
+    } catch (URISyntaxException e)
+    {
+      Assert.fail("Expception occured while testing!");
+      e.printStackTrace();
+    }
+  }
+
+  @Test
+  public void getBioJsMSAVersions()
+  {
+    BioJsHTMLOutput bjs = new BioJsHTMLOutput(null, null);
+    TreeMap<String, File> versions = null;
+    try
+    {
+      versions = bjs
+              .updateBioJSVersionsInfo(BioJsHTMLOutput.BJS_TEMPLATES_LOCAL_DIRECTORY);
+    } catch (URISyntaxException e)
+    {
+      Assert.fail("Expception occured while testing!");
+      e.printStackTrace();
+    }
+    Assert.assertNotNull("No versions found", versions);
+    Assert.assertTrue("One or more Templates required", versions.size() > 0);
+    System.out
+            .println("Number of discovered versions : "
+            + versions.size());
+    for (String v : versions.keySet())
+    {
+      System.out.println("version : " + v);
+      System.out.println("File : " + versions.get(v));
+    }
+
+    System.out.println("\nCurrent latest version : "
+            + BioJsHTMLOutput.getCurrentBJSTemplateFile());
+    Assert.assertNotNull("Latest BioJsMSA version NOT found!",
+            BioJsHTMLOutput.getCurrentBJSTemplateFile());
+
+  }
 }