X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=test%2Fjalview%2Fio%2FAnnotatedPDBFileInputTest.java;h=ef88ca5700abfbfefd055a9b9795e68458a3e457;hb=16bd1f9daaa35dd5b87de17a649116f9d33927b8;hp=7e994095d406cf72fafb6df23069b34c86555261;hpb=e05ad4f9199d673b327277d1266d97f3a51419ae;p=jalview.git diff --git a/test/jalview/io/AnnotatedPDBFileInputTest.java b/test/jalview/io/AnnotatedPDBFileInputTest.java index 7e99409..ef88ca5 100644 --- a/test/jalview/io/AnnotatedPDBFileInputTest.java +++ b/test/jalview/io/AnnotatedPDBFileInputTest.java @@ -4,38 +4,47 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import jalview.datamodel.AlignmentAnnotation; -import jalview.datamodel.AlignmentI; -import jalview.datamodel.PDBEntry; -import jalview.datamodel.SequenceI; -import jalview.gui.AlignFrame; import java.io.File; -import java.util.Vector; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; +import jalview.bin.Cache; +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.AlignmentI; +import jalview.datamodel.PDBEntry; +import jalview.datamodel.SequenceFeature; +import jalview.datamodel.SequenceI; +import jalview.gui.AlignFrame; +import jalview.gui.Desktop; +import jalview.structure.StructureMapping; +import jalview.structure.StructureSelectionManager; + public class AnnotatedPDBFileInputTest { AlignmentI al; - String pdbStr = "examples/2GIS.pdb"; + String pdbStr = "examples/1gaq.txt"; String pdbId; @Before public void setup() throws Exception { + Cache.applicationProperties.setProperty("STRUCT_FROM_PDB", + Boolean.TRUE.toString()); + Cache.applicationProperties.setProperty("ADD_SS_ANN", + Boolean.TRUE.toString()); FileLoader loader = new FileLoader(false); AlignFrame af = loader.LoadFileWaitTillLoaded(pdbStr, FormatAdapter.FILE); al = af.getViewport().getAlignment(); - pdbId = ((PDBEntry) al.getSequenceAt(0).getDatasetSequence().getPDBId() - .get(0)).getId(); + pdbId = al.getSequenceAt(0).getDatasetSequence().getPDBId() + .get(0).getId(); } @Test @@ -68,11 +77,53 @@ public class AnnotatedPDBFileInputTest { System.out.println("CalcId: " + aa.getCalcId()); - assertTrue(MCview.PDBfile.isCalcIdForFile(aa.getCalcId(), pdbId)); + assertTrue(MCview.PDBfile.isCalcIdForFile(aa, pdbId)); } } } + /** + * Check sequence features have been added + */ + @Test + public void checkPDBSequenceFeatures() + { + StructureSelectionManager ssm = StructureSelectionManager + .getStructureSelectionManager(Desktop.instance); + StructureMapping[] mappings = ssm.getMapping("1gaq"); + // suspect we really want to make assertions on sequence features + // in these mappings' sequencess + /* + * 1GAQ/A + */ + SequenceFeature[] sf = al.getSequenceAt(0).getSequenceFeatures(); + assertEquals(296, sf.length); + assertEquals("RESNUM", sf[0].getType()); + assertEquals("GLU:19 1gaqA", sf[0].getDescription()); + assertEquals("RESNUM", sf[295].getType()); + assertEquals("TYR:314 1gaqA", sf[295].getDescription()); + + /* + * 1GAQ/B + */ + sf = al.getSequenceAt(1).getSequenceFeatures(); + assertEquals(98, sf.length); + assertEquals("RESNUM", sf[0].getType()); + assertEquals("ALA:1 1gaqB", sf[0].getDescription()); + assertEquals("RESNUM", sf[97].getType()); + assertEquals("ALA:98 1gaqB", sf[97].getDescription()); + + /* + * 1GAQ/C + */ + sf = al.getSequenceAt(2).getSequenceFeatures(); + assertEquals(296, sf.length); + assertEquals("RESNUM", sf[0].getType()); + assertEquals("GLU:19 1gaqC", sf[0].getDescription()); + assertEquals("RESNUM", sf[295].getType()); + assertEquals("TYR:314 1gaqC", sf[295].getDescription()); + } + @Test public void checkAnnotationWiring() { @@ -126,7 +177,7 @@ public class AnnotatedPDBFileInputTest public void testJalviewProjectRelocationAnnotation() throws Exception { - String inFile = "examples/2GIS.pdb"; + String inFile = "examples/1gaq.txt"; String tfile = File.createTempFile("JalviewTest", ".jvp") .getAbsolutePath(); AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded( @@ -148,7 +199,7 @@ public class AnnotatedPDBFileInputTest } assertNotNull(sq.getPDBId()); assertEquals("Expected only one PDB ID", sq.getPDBId().size(), 1); - for (PDBEntry pdbentry : (Vector) sq.getPDBId()) + for (PDBEntry pdbentry : sq.getPDBId()) { System.err.println("PDB Entry " + pdbentry.getId() + " " + pdbentry.getFile()); @@ -160,7 +211,7 @@ public class AnnotatedPDBFileInputTest && MCview.PDBfile.isCalcIdHandled(ana.getCalcId())) { exists = true; - if (MCview.PDBfile.isCalcIdForFile(ana.getCalcId(), + if (MCview.PDBfile.isCalcIdForFile(ana, pdbentry.getId())) { found = true;