X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fdatamodel%2FSequenceFeatureTest.java;h=9111e5ac2720320bbf39e594216e665a3c6d0957;hb=b4938d8d3018957d5c5fd4443278083e8b5e0864;hp=d105cc5d2721d9196693c84d4ce3cb0faa199eaf;hpb=b9d3d1f71c6a8aee09cd23e1303b062cbe43a239;p=jalview.git diff --git a/test/jalview/datamodel/SequenceFeatureTest.java b/test/jalview/datamodel/SequenceFeatureTest.java index d105cc5..9111e5a 100644 --- a/test/jalview/datamodel/SequenceFeatureTest.java +++ b/test/jalview/datamodel/SequenceFeatureTest.java @@ -42,13 +42,13 @@ public class SequenceFeatureTest } @Test(groups = { "Functional" }) - public void testCopyConstructor() + public void testCopyConstructors() { SequenceFeature sf1 = new SequenceFeature("type", "desc", 22, 33, 12.5f, "group"); sf1.setValue("STRAND", "+"); sf1.setValue("Note", "Testing"); - Integer count = new Integer(7); + Integer count = Integer.valueOf(7); sf1.setValue("Count", count); SequenceFeature sf2 = new SequenceFeature(sf1); @@ -56,10 +56,41 @@ public class SequenceFeatureTest assertEquals("desc", sf2.getDescription()); assertEquals(22, sf2.getBegin()); assertEquals(33, sf2.getEnd()); + assertEquals(12.5f, sf2.getScore()); assertEquals("+", sf2.getValue("STRAND")); assertEquals("Testing", sf2.getValue("Note")); // shallow clone of otherDetails map - contains the same object values! assertSame(count, sf2.getValue("Count")); + + /* + * copy constructor modifying begin/end/group/score + */ + SequenceFeature sf3 = new SequenceFeature(sf1, 11, 14, "group2", 17.4f); + assertEquals("type", sf3.getType()); + assertEquals("desc", sf3.getDescription()); + assertEquals(11, sf3.getBegin()); + assertEquals(14, sf3.getEnd()); + assertEquals(17.4f, sf3.getScore()); + assertEquals("+", sf3.getValue("STRAND")); + assertEquals("Testing", sf3.getValue("Note")); + // shallow clone of otherDetails map - contains the same object values! + assertSame(count, sf3.getValue("Count")); + + /* + * copy constructor modifying type/begin/end/group/score + */ + SequenceFeature sf4 = new SequenceFeature(sf1, "Disulfide bond", 12, + 15, "group3", -9.1f); + assertEquals("Disulfide bond", sf4.getType()); + assertTrue(sf4.isContactFeature()); + assertEquals("desc", sf4.getDescription()); + assertEquals(12, sf4.getBegin()); + assertEquals(15, sf4.getEnd()); + assertEquals(-9.1f, sf4.getScore()); + assertEquals("+", sf4.getValue("STRAND")); + assertEquals("Testing", sf4.getValue("Note")); + // shallow clone of otherDetails map - contains the same object values! + assertSame(count, sf4.getValue("Count")); } /** @@ -75,7 +106,7 @@ public class SequenceFeatureTest assertEquals("+", sf1.getValue("STRAND")); assertNull(sf1.getValue("strand")); // case-sensitive assertEquals(".", sf1.getValue("unknown", ".")); - Integer i = new Integer(27); + Integer i = Integer.valueOf(27); assertSame(i, sf1.getValue("Unknown", i)); } @@ -242,4 +273,47 @@ public class SequenceFeatureTest "group"); assertTrue(sf.isContactFeature()); } + + @Test(groups = { "Functional" }) + public void testGetDetailsReport() + { + // single locus, no group, no score + SequenceFeature sf = new SequenceFeature("variant", "G,C", 22, 22, null); + String expected = "
" + + "" + + "
Typevariant
Start/end22
DescriptionG,C
"; + assertEquals(expected, sf.getDetailsReport()); + + // contact feature + sf = new SequenceFeature("Disulphide Bond", "a description", 28, 31, + null); + expected = "
" + + "" + + "
TypeDisulphide Bond
Start/end28:31
Descriptiona description
"; + assertEquals(expected, sf.getDetailsReport()); + + sf = new SequenceFeature("variant", "G,C", 22, 33, + 12.5f, "group"); + sf.setValue("Parent", "ENSG001"); + sf.setValue("Child", "ENSP002"); + expected = "
" + + "" + + "" + + "" + + "" + + "" + + "
Typevariant
Start/end22-33
DescriptionG,C
Score12.5
Groupgroup
ChildENSP002
ParentENSG001
"; + assertEquals(expected, sf.getDetailsReport()); + + /* + * feature with embedded html link in description + */ + String desc = "Fer2 Status: True Positive Pfam 8_8"; + sf = new SequenceFeature("Pfam", desc, 8, 83, "Uniprot"); + expected = "
" + + "" + + "" + + "
TypePfam
Start/end8-83
DescriptionFer2 Status: True Positive Pfam 8_8
GroupUniprot
"; + assertEquals(expected, sf.getDetailsReport()); + } }