X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fws%2Fjabaws%2FDisorderAnnotExportImport.java;h=7bbd0725f5c6706ed63a67286e08382c10e7d9c1;hb=49db0dff1da16c3355b43a41498c1fc93ef47e91;hp=3573f507ec2d10d6326da0ea2c1d74dfe5169f4a;hpb=483e7163b1fb8d4bcb9393014816c944befce328;p=jalview.git diff --git a/test/jalview/ws/jabaws/DisorderAnnotExportImport.java b/test/jalview/ws/jabaws/DisorderAnnotExportImport.java index 3573f50..7bbd072 100644 --- a/test/jalview/ws/jabaws/DisorderAnnotExportImport.java +++ b/test/jalview/ws/jabaws/DisorderAnnotExportImport.java @@ -20,6 +20,7 @@ */ package jalview.ws.jabaws; +import java.util.Locale; import static org.testng.AssertJUnit.assertNotNull; import static org.testng.AssertJUnit.assertTrue; @@ -32,9 +33,10 @@ import jalview.io.DataSourceType; import jalview.io.FileFormat; import jalview.io.FormatAdapter; import jalview.io.StockholmFileTest; -import jalview.ws.jws2.AADisorderClient; +import jalview.ws.api.ServiceWithParameters; import jalview.ws.jws2.Jws2Discoverer; -import jalview.ws.jws2.jabaws2.Jws2Instance; +import jalview.ws.jws2.SeqAnnotationServiceCalcWorker; +import jalview.ws.slivkaws.SlivkaWSDiscoverer; import java.util.ArrayList; import java.util.List; @@ -42,9 +44,14 @@ import java.util.List; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; +import org.testng.annotations.DataProvider; import org.testng.annotations.Test; -@Test(groups = { "External" }) +/* + * All methods in this class are set to the Network group because setUpBeforeClass will fail + * if there is no network. + */ +@Test(singleThreaded = true) public class DisorderAnnotExportImport { @@ -59,22 +66,30 @@ public class DisorderAnnotExportImport public static Jws2Discoverer disc; - public static List iupreds; + public static List iupreds; - jalview.ws.jws2.AADisorderClient disorderClient; + jalview.ws.jws2.SeqAnnotationServiceCalcWorker disorderClient; public static jalview.gui.AlignFrame af = null; - @BeforeClass(inheritGroups = true) + @BeforeClass(alwaysRun = true) public static void setUpBeforeClass() throws Exception { Cache.loadProperties("test/jalview/io/testProps.jvprops"); Cache.initLogger(); disc = JalviewJabawsTestUtils.getJabawsDiscoverer(); - iupreds = new ArrayList(); - for (Jws2Instance svc : disc.getServices()) + + while (disc.isRunning()) + { + // don't get services until discoverer has finished + Thread.sleep(100); + } + + SlivkaWSDiscoverer disc2 = SlivkaWSDiscoverer.getInstance(); + disc2.startDiscoverer(); + while (disc2.isRunning()) { - if (svc.getServiceTypeURI().toLowerCase().contains("iupredws")) + if (svc.getServiceTypeURI().toLowerCase(Locale.ROOT).contains("iupredws")) { iupreds.add(svc); } @@ -96,14 +111,29 @@ public class DisorderAnnotExportImport af = null; } } + + @DataProvider(name="getIuPreds",parallel = false) + public static ServiceWithParameters[][] getIuPreds() + { + ServiceWithParameters[][] services = new ServiceWithParameters[iupreds + .size()][1]; + + int i = 0; + for (ServiceWithParameters iupred : iupreds) + { + services[i++][0] = iupred; + } + return services; + } /** * test for patches to JAL-1294 */ - @Test - public void testDisorderAnnotExport() + @Test(groups = { "External", "Network" },dataProvider = "getIuPreds") + public void testDisorderAnnotExport(ServiceWithParameters iuPred) { - disorderClient = new AADisorderClient(iupreds.get(0), af, null, null); + disorderClient = new SeqAnnotationServiceCalcWorker(iuPred, af, null, + null); af.getViewport().getCalcManager().startWorker(disorderClient); do { @@ -118,7 +148,7 @@ public class DisorderAnnotExportImport AlignmentI orig_alig = af.getViewport().getAlignment(); // NOTE: Consensus annotation row cannot be exported and reimported // faithfully - so we remove them - List toremove = new ArrayList(); + List toremove = new ArrayList<>(); for (AlignmentAnnotation aa : orig_alig.getAlignmentAnnotation()) { if (aa.autoCalculated) @@ -138,7 +168,7 @@ public class DisorderAnnotExportImport { try { - String aligfileout = FileFormat.Pfam.getAlignmentFile().print( + String aligfileout = FileFormat.Pfam.getWriter(al).print( al.getSequencesArray(), true); String anfileout = new AnnotationFile() .printAnnotationsForAlignment(al); @@ -166,7 +196,8 @@ public class DisorderAnnotExportImport DataSourceType.PASTE)); // test for consistency in io - StockholmFileTest.testAlignmentEquivalence(al, al_new, true); + StockholmFileTest.testAlignmentEquivalence(al, al_new, true, false, + false); return; } catch (Exception e) {