X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fws%2Fjabaws%2FRNAStructExportImport.java;h=1475b4e4dd6cdc5a59118719d1515bcffbaeef55;hb=refs%2Fheads%2Ffeatures%2FJAL-653_gffalignments;hp=e74ebe7082adc6d27b532b855653e9e62f07fbb4;hpb=c4ec878c9cb59fc40a88ed8ecdf5fda46f3de111;p=jalview.git diff --git a/test/jalview/ws/jabaws/RNAStructExportImport.java b/test/jalview/ws/jabaws/RNAStructExportImport.java index e74ebe7..1475b4e 100644 --- a/test/jalview/ws/jabaws/RNAStructExportImport.java +++ b/test/jalview/ws/jabaws/RNAStructExportImport.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -20,34 +20,30 @@ */ package jalview.ws.jabaws; -import static org.junit.Assert.*; - -import java.awt.Component; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Vector; - -import javax.swing.JMenu; -import javax.swing.JMenuItem; - -import jalview.api.AlignCalcManagerI; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; import jalview.datamodel.AlignmentAnnotation; import jalview.datamodel.AlignmentI; -import jalview.datamodel.Annotation; import jalview.gui.Jalview2XML; import jalview.io.AnnotationFile; import jalview.io.FormatAdapter; import jalview.io.StockholmFileTest; -import jalview.ws.jws2.AADisorderClient; import jalview.ws.jws2.Jws2Discoverer; import jalview.ws.jws2.RNAalifoldClient; import jalview.ws.jws2.SequenceAnnotationWSClient; -import jalview.ws.jws2.dm.JabaOption; import jalview.ws.jws2.jabaws2.Jws2Instance; import jalview.ws.params.AutoCalcSetting; +import java.awt.Component; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JMenu; +import javax.swing.JMenuItem; + import org.junit.AfterClass; +import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -55,7 +51,7 @@ import compbio.metadata.WrongParameterException; public class RNAStructExportImport { - public static String testseqs = "examples/unfolded_RF00031.aln"; + public static String testseqs = "examples/RF00031_folded.stk"; public static Jws2Discoverer disc; @@ -84,7 +80,9 @@ public class RNAStructExportImport System.out.println("State of rnaalifoldws: " + rnaalifoldws); if (rnaalifoldws == null) - System.exit(0); + { + fail("no web service"); + } jalview.io.FileLoader fl = new jalview.io.FileLoader(false); @@ -92,6 +90,22 @@ public class RNAStructExportImport assertNotNull("Couldn't load test data ('" + testseqs + "')", af); + // remove any existing annotation + List aal = new ArrayList(); + for (AlignmentAnnotation rna : af.getViewport().getAlignment() + .getAlignmentAnnotation()) + { + if (rna.isRNA()) + { + aal.add(rna); + } + } + for (AlignmentAnnotation rna : aal) + { + af.getViewport().getAlignment().deleteAnnotation(rna); + } + af.getViewport().alignmentChanged(af.alignPanel); // why is af.alignPanel + // public? } @AfterClass @@ -105,6 +119,38 @@ public class RNAStructExportImport } @Test + public void testRNAAliFoldValidStructure() + { + + alifoldClient = new RNAalifoldClient(rnaalifoldws, af, null, null); + + af.getViewport().getCalcManager().startWorker(alifoldClient); + + do + { + try + { + Thread.sleep(50); + } catch (InterruptedException x) + { + } + ; + } while (af.getViewport().getCalcManager().isWorking()); + + AlignmentI orig_alig = af.getViewport().getAlignment(); + for (AlignmentAnnotation aa:orig_alig.getAlignmentAnnotation()) + { + if (alifoldClient.involves(aa)) + { + if (aa.isRNA()) + { + Assert.assertTrue("Did not create valid structure from RNAALiFold prediction", aa.isValidStruc()); + } + } + } + } + + @Test public void testRNAStructExport() { @@ -137,9 +183,8 @@ public class RNAStructExportImport String aligfileout = new FormatAdapter().formatSequences("PFAM", al.getSequencesArray()); - String anfileout = new AnnotationFile().printAnnotations( - al.getAlignmentAnnotation(), al.getGroups(), - al.getProperties()); + String anfileout = new AnnotationFile() + .printAnnotationsForAlignment(al); assertTrue( "Test " + testname @@ -165,7 +210,7 @@ public class RNAStructExportImport FormatAdapter.PASTE)); // test for consistency in io - StockholmFileTest.testAlignmentEquivalence(al, al_new); + StockholmFileTest.testAlignmentEquivalence(al, al_new, false); return; } catch (Exception e) {