JAL-2089 patch broken merge to master for Release 2.10.0b1
[jalview.git] / test / jalview / ws / jabaws / JalviewJabawsTestUtils.java
index f7d0e48..4414782 100644 (file)
@@ -1,23 +1,43 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.jabaws;
 
-import static org.junit.Assert.*;
 import jalview.ws.jws2.Jws2Discoverer;
 
 import java.util.Vector;
 
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.testng.Assert;
+import org.testng.annotations.AfterClass;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
 
 public class JalviewJabawsTestUtils
 {
-  
-  @BeforeClass
+
+  @BeforeClass(alwaysRun = true)
   public static void setUpBeforeClass() throws Exception
   {
   }
 
-  @AfterClass
+  @AfterClass(alwaysRun = true)
   public static void tearDownAfterClass() throws Exception
   {
   }
@@ -25,39 +45,63 @@ public class JalviewJabawsTestUtils
   /**
    * test servers
    */
-  public static String[] serviceUrls = new String[]
-  { "http://localhost:8080/jabaws" };
+  private static String[] serviceUrls = new String[] {
+      "http://localhost:8080/jabaws",
+      "http://www.compbio.dundee.ac.uk/jabaws" };
 
-  @Test
+  @Test(groups = { "Functional" }, enabled = false)
   public void testAnnotExport()
   {
-    fail("Not yet implemented");
+    Assert.fail("Not yet implemented");
+  }
+
+  public static jalview.ws.jws2.Jws2Discoverer getJabawsDiscoverer()
+  {
+    return getJabawsDiscoverer(true);
   }
 
-  public static jalview.ws.jws2.Jws2Discoverer getJabawsDiscoverer() {
+  /**
+   * Returns a service discoverer that queries localhost and compbio urls.
+   * <p>
+   * If using this method, be sure to have read-only Jalview properties, to
+   * avoid writing the test urls to .jalview_properties. This can be done by
+   * either
+   * <ul>
+   * <li>running Jalview main with arguments -props propFileName</li>
+   * <li>calling Cache.loadProperties(filename)</li>
+   * <ul>
+   * 
+   * @param localhost
+   * @return
+   */
+  public static Jws2Discoverer getJabawsDiscoverer(boolean localhost)
+  {
     jalview.ws.jws2.Jws2Discoverer disc = jalview.ws.jws2.Jws2Discoverer
             .getDiscoverer();
-    int p = 0;
-    String svcurls="";
-    Vector<String> services = new Vector<String>();
-    for (String url : JalviewJabawsTestUtils.serviceUrls)
+    String svcurls = "";
+    if (localhost)
     {
-      svcurls+=url+"; ";
-      services.add(url);
+      int p = 0;
+      Vector<String> services = new Vector<String>();
+      for (String url : JalviewJabawsTestUtils.serviceUrls)
+      {
+        svcurls += url + "; ";
+        services.add(url);
+      }
+      ;
+      Jws2Discoverer.getDiscoverer().setServiceUrls(services);
     }
-    ;
-    Jws2Discoverer.setServiceUrls(services);
-  
     try
     {
       disc.run();
     } catch (Exception e)
     {
       e.printStackTrace();
-      fail("Aborting. Problem discovering services. Tried "+svcurls);
+      Assert.fail("Aborting. Problem discovering services. Tried "
+              + svcurls);
     }
-    assertTrue("Failed to discover any services at ",
-            disc.getServices().size() > 0);
+    Assert.assertTrue(disc.getServices().size() > 0,
+            "Failed to discover any services at ");
     return disc;
   }