X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fws%2Fjabaws%2FRNAStructExportImport.java;h=089c29ff356931f8ece1347ff6ae01eb191b4326;hb=97264690f394f98cf13cd1d834a53e8956fb1b0e;hp=2a111eee6164d6fe5adc0c8a01c011b46405766a;hpb=aa709f20d35020ddec8e63d18c272a09d0823234;p=jalview.git diff --git a/test/jalview/ws/jabaws/RNAStructExportImport.java b/test/jalview/ws/jabaws/RNAStructExportImport.java index 2a111ee..089c29f 100644 --- a/test/jalview/ws/jabaws/RNAStructExportImport.java +++ b/test/jalview/ws/jabaws/RNAStructExportImport.java @@ -27,8 +27,10 @@ import jalview.bin.Cache; import jalview.datamodel.AlignmentAnnotation; import jalview.datamodel.AlignmentI; import jalview.gui.Jalview2XML; +import jalview.gui.JvOptionPane; import jalview.io.AnnotationFile; -import jalview.io.FileLoader; +import jalview.io.DataSourceType; +import jalview.io.FileFormat; import jalview.io.FormatAdapter; import jalview.io.StockholmFileTest; import jalview.ws.jws2.Jws2Discoverer; @@ -53,8 +55,21 @@ import org.testng.annotations.Test; import compbio.metadata.Argument; import compbio.metadata.WrongParameterException; +/* + * 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 RNAStructExportImport { + + @BeforeClass(alwaysRun = true) + public void setUpJvOptionPane() + { + JvOptionPane.setInteractiveMode(false); + JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); + } + private static final String JAR_FILE_NAME = "testRnalifold_param.jar"; public static String testseqs = "examples/RF00031_folded.stk"; @@ -74,6 +89,12 @@ public class RNAStructExportImport Cache.initLogger(); disc = JalviewJabawsTestUtils.getJabawsDiscoverer(false); + while (disc.isRunning()) + { + // don't get services until discoverer has finished + Thread.sleep(100); + } + for (Jws2Instance svc : disc.getServices()) { @@ -90,9 +111,9 @@ public class RNAStructExportImport Assert.fail("no web service"); } - FileLoader fl = new FileLoader(false); + jalview.io.FileLoader fl = new jalview.io.FileLoader(false); - af = fl.LoadFileWaitTillLoaded(testseqs, FormatAdapter.FILE); + af = fl.LoadFileWaitTillLoaded(testseqs, jalview.io.DataSourceType.FILE); assertNotNull("Couldn't load test data ('" + testseqs + "')", af); @@ -129,7 +150,7 @@ public class RNAStructExportImport } } - @Test(groups = { "Functional" }) + @Test(groups = { "Network" }) public void testRNAAliFoldValidStructure() { @@ -162,7 +183,7 @@ public class RNAStructExportImport } } - @Test(groups = { "Functional" }) + @Test(groups = { "Network" }) public void testRNAStructExport() { @@ -181,18 +202,20 @@ public class RNAStructExportImport } while (af.getViewport().getCalcManager().isWorking()); AlignmentI orig_alig = af.getViewport().getAlignment(); - - testAnnotationFileIO("Testing RNAalifold Annotation IO", orig_alig); + // JBPNote: this assert fails (2.10.2) because the 'Reference Positions' + // annotation is mistakenly recognised as an RNA annotation row when read in + // as an annotation file. + verifyAnnotationFileIO("Testing RNAalifold Annotation IO", orig_alig); } - public static void testAnnotationFileIO(String testname, AlignmentI al) + static void verifyAnnotationFileIO(String testname, AlignmentI al) { try { // what format would be appropriate for RNAalifold annotations? - String aligfileout = new FormatAdapter().formatSequences("PFAM", - al.getSequencesArray()); + String aligfileout = FileFormat.Pfam.getWriter(null).print( + al.getSequencesArray(), true); String anfileout = new AnnotationFile() .printAnnotationsForAlignment(al); @@ -212,16 +235,17 @@ public class RNAStructExportImport // again what format would be appropriate? AlignmentI al_new = new FormatAdapter().readFile(aligfileout, - FormatAdapter.PASTE, "PFAM"); + DataSourceType.PASTE, FileFormat.Pfam); assertTrue( "Test " + testname + "\nregenerated annotation file did not annotate alignment.", new AnnotationFile().readAnnotationFile(al_new, anfileout, - FormatAdapter.PASTE)); + DataSourceType.PASTE)); // test for consistency in io - StockholmFileTest.testAlignmentEquivalence(al, al_new, false); + StockholmFileTest.testAlignmentEquivalence(al, al_new, false, false, + false); return; } catch (Exception e) { @@ -232,12 +256,12 @@ public class RNAStructExportImport + "\nCouldn't complete Annotation file roundtrip input/output/input test."); } - @Test(groups = { "Functional" }) + @Test(groups = { "Network" }) public void testRnaalifoldSettingsRecovery() { List opts = new ArrayList(); - for (Argument rg : (List) rnaalifoldws - .getRunnerConfig().getArguments()) + for (Argument rg : (List) rnaalifoldws.getRunnerConfig() + .getArguments()) { if (rg.getDescription().contains("emperature")) {