X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fws%2FPDBSequenceFetcherTest.java;h=fda01983927f8db5b407ee161a07a03382fcb250;hb=0f40a8334651302a74a223ecd3e583451302bb42;hp=adf53f53ac2a13da00ab3531b8110622f372b1aa;hpb=02059a2675d81af6de5f8d54a7a1e4db94351365;p=jalview.git diff --git a/test/jalview/ws/PDBSequenceFetcherTest.java b/test/jalview/ws/PDBSequenceFetcherTest.java index adf53f5..fda0198 100644 --- a/test/jalview/ws/PDBSequenceFetcherTest.java +++ b/test/jalview/ws/PDBSequenceFetcherTest.java @@ -25,6 +25,8 @@ import static org.testng.AssertJUnit.assertTrue; import jalview.bin.Cache; import jalview.datamodel.AlignmentI; import jalview.datamodel.SequenceI; +import jalview.structure.StructureImportSettings; +import jalview.structure.StructureImportSettings.StructureParser; import jalview.ws.seqfetcher.DbSourceProxy; import java.util.List; @@ -37,7 +39,7 @@ public class PDBSequenceFetcherTest SequenceFetcher sf; - @BeforeMethod(alwaysRun = true) + @BeforeMethod(alwaysRun = true) public void setUp() throws Exception { // ensure 'add annotation from structure' is selected @@ -57,10 +59,13 @@ public class PDBSequenceFetcherTest * * @throws Exception */ - @Test(groups = - { "Network" }, enabled = true) + @Test(groups = { "Network" }, enabled = true) public void testRnaSeqRetrieve() throws Exception { + Cache.applicationProperties.setProperty("STRUCT_FROM_PDB", + Boolean.TRUE.toString()); + Cache.applicationProperties.setProperty("DEFAULT_STRUCTURE_FORMAT", + "PDB"); List sps = sf.getSourceProxy("PDB"); AlignmentI response = sps.get(0).getSequenceRecords("2GIS"); assertTrue(response != null); @@ -69,11 +74,52 @@ public class PDBSequenceFetcherTest { assertTrue("No annotation transfered to sequence.", sq.getAnnotation().length > 0); - assertTrue("No PDBEntry on sequence.", sq.getAllPDBEntries().size() > 0); + assertTrue("No PDBEntry on sequence.", + sq.getAllPDBEntries().size() > 0); assertTrue( "No RNA annotation on sequence, possibly http://arn-ibmc.in2p3.fr/api/compute/2d not available?", sq.getRNA() != null); } } + @Test(groups = { "Network" }, enabled = true) + public void testPdbSeqRetrieve() throws Exception + { + Cache.applicationProperties.setProperty("STRUCT_FROM_PDB", + Boolean.TRUE.toString()); + StructureImportSettings.setDefaultStructureFileFormat("PDB"); + StructureImportSettings + .setDefaultPDBFileParser(StructureParser.JALVIEW_PARSER); + + testRetrieveProteinSeqFromPDB(); + } + + @Test(groups = { "Network" }, enabled = true) + public void testmmCifSeqRetrieve() throws Exception + { + Cache.applicationProperties.setProperty("STRUCT_FROM_PDB", + Boolean.TRUE.toString()); + StructureImportSettings.setDefaultStructureFileFormat("mmCIF"); + testRetrieveProteinSeqFromPDB(); + } + + private void testRetrieveProteinSeqFromPDB() throws Exception + { + List sps = sf.getSourceProxy("PDB"); + AlignmentI response = sps.get(0).getSequenceRecords("1QIP"); + assertTrue(response != null); + assertTrue(response.getHeight() == 4); + for (SequenceI sq : response.getSequences()) + { + assertTrue("No annotation transfered to sequence.", + sq.getAnnotation().length > 0); + assertTrue("No PDBEntry on sequence.", + sq.getAllPDBEntries().size() > 0); + org.testng.Assert + .assertEquals(sq.getEnd() - sq.getStart() + 1, + sq.getLength(), + "Sequence start/end doesn't match number of residues in sequence"); + } + } + }