X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fdatamodel%2FSequenceTest.java;h=03c4a96025a0a44623acf71f04c9827954553568;hb=b052502c048abfd6981bdad47d1582e8663804e1;hp=a66a33115d12988afab7158f6dd19c89d9eb8f51;hpb=d1dcf07f3a505db364405c4f4c901219213c8f25;p=jalview.git diff --git a/test/jalview/datamodel/SequenceTest.java b/test/jalview/datamodel/SequenceTest.java index a66a331..03c4a96 100644 --- a/test/jalview/datamodel/SequenceTest.java +++ b/test/jalview/datamodel/SequenceTest.java @@ -30,10 +30,12 @@ import static org.testng.internal.junit.ArrayAsserts.assertArrayEquals; import jalview.datamodel.PDBEntry.Type; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Vector; +import org.testng.Assert; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; @@ -336,6 +338,10 @@ public class SequenceTest * sequence. Test shows no infinite loop results. */ sq.getDatasetSequence().setSequenceFeatures(null); + /** + * is there a usecase for this ? setDatasetSequence should throw an error if + * this actually occurs. + */ sq.getDatasetSequence().setDatasetSequence(sq); // loop! assertNull(sq.getSequenceFeatures()); } @@ -393,7 +399,71 @@ public class SequenceTest sq.setStart(3); sq.setEnd(4); + sq.setDescription("Test sequence description.."); + sq.setVamsasId("TestVamsasId"); + sq.setSourceDBRef(new DBRefEntry("PDB", "version0", "1TST")); + + sq.addDBRef(new DBRefEntry("PDB", "version1", "1Tst")); + sq.addDBRef(new DBRefEntry("PDB", "version2", "2Tst")); + sq.addDBRef(new DBRefEntry("PDB", "version3", "3Tst")); + sq.addDBRef(new DBRefEntry("PDB", "version4", "4Tst")); + + sq.addPDBId(new PDBEntry("1PDB", "A", Type.PDB, "filePath/test1")); + sq.addPDBId(new PDBEntry("1PDB", "B", Type.PDB, "filePath/test1")); + sq.addPDBId(new PDBEntry("2PDB", "A", Type.MMCIF, "filePath/test2")); + sq.addPDBId(new PDBEntry("2PDB", "B", Type.MMCIF, "filePath/test2")); + + sq.getDatasetSequence().addDBRef( + new DBRefEntry("PDB", "version1", "1Tst")); + sq.getDatasetSequence().addDBRef( + new DBRefEntry("PDB", "version2", "2Tst")); + sq.getDatasetSequence().addDBRef( + new DBRefEntry("PDB", "version3", "3Tst")); + sq.getDatasetSequence().addDBRef( + new DBRefEntry("PDB", "version4", "4Tst")); + + sq.getDatasetSequence().addPDBId( + new PDBEntry("1PDB", "A", Type.PDB, "filePath/test1")); + sq.getDatasetSequence().addPDBId( + new PDBEntry("1PDB", "B", Type.PDB, "filePath/test1")); + sq.getDatasetSequence().addPDBId( + new PDBEntry("2PDB", "A", Type.MMCIF, "filePath/test2")); + sq.getDatasetSequence().addPDBId( + new PDBEntry("2PDB", "B", Type.MMCIF, "filePath/test2")); + + ArrayList annotsList = new ArrayList(); + System.out.println(">>>>>> " + sq.getSequenceAsString().length()); + annotsList.add(new Annotation("A", "A", 'X', 0.1f)); + annotsList.add(new Annotation("A", "A", 'X', 0.1f)); + Annotation[] annots = annotsList.toArray(new Annotation[0]); + sq.addAlignmentAnnotation(new AlignmentAnnotation("Test annot", + "Test annot description", annots)); + sq.getDatasetSequence().addAlignmentAnnotation( + new AlignmentAnnotation("Test annot", "Test annot description", + annots)); + Assert.assertEquals(sq.getDescription(), "Test sequence description.."); + Assert.assertEquals(sq.getDBRefs().length, 4); + Assert.assertEquals(sq.getAllPDBEntries().size(), 4); + Assert.assertNotNull(sq.getAnnotation()); + Assert.assertEquals(sq.getAnnotation()[0].annotations.length, 2); + Assert.assertEquals(sq.getDatasetSequence().getDBRefs().length, 4); + Assert.assertEquals(sq.getDatasetSequence().getAllPDBEntries().size(), + 4); + Assert.assertNotNull(sq.getDatasetSequence().getAnnotation()); + Sequence derived = (Sequence) sq.deriveSequence(); + + Assert.assertEquals(derived.getDescription(), + "Test sequence description.."); + Assert.assertEquals(derived.getDBRefs().length, 4); + Assert.assertEquals(derived.getAllPDBEntries().size(), 4); + Assert.assertNotNull(derived.getAnnotation()); + Assert.assertEquals(derived.getAnnotation()[0].annotations.length, 2); + Assert.assertEquals(derived.getDatasetSequence().getDBRefs().length, 4); + Assert.assertEquals(derived.getDatasetSequence().getAllPDBEntries() + .size(), 4); + Assert.assertNotNull(derived.getDatasetSequence().getAnnotation()); + assertEquals("CD", derived.getSequenceAsString()); assertSame(sq.getDatasetSequence(), derived.getDatasetSequence());