X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fws%2Fdbsources%2FUniprotTest.java;fp=test%2Fjalview%2Fws%2Fdbsources%2FUniprotTest.java;h=ab79f104f43b0fbbd265a3f32fdb98d9f5c3591e;hb=782db63cc15bc2261c398a87da13fd729da7a18d;hp=b70e5811642536bff2d2084e9e8dafa734609d12;hpb=efffcd38913c0e67f670a66fb29c96e9cf1508b1;p=jalview.git
diff --git a/test/jalview/ws/dbsources/UniprotTest.java b/test/jalview/ws/dbsources/UniprotTest.java
index b70e581..ab79f10 100644
--- a/test/jalview/ws/dbsources/UniprotTest.java
+++ b/test/jalview/ws/dbsources/UniprotTest.java
@@ -35,6 +35,7 @@ import java.io.Reader;
import java.io.StringReader;
import java.util.Vector;
+import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@@ -67,6 +68,8 @@ public class UniprotTest
+ "ML"
+ "M"
+ "LLMVM"
+ + "LLLMVML"
+ + "LLLMVKMLML"
+ "MHAPL VSKDL"
+ "";
@@ -102,7 +105,7 @@ public class UniprotTest
* Check sequence features
*/
Vector features = entry.getFeature();
- assertEquals(7, features.size());
+ assertEquals(9, features.size());
UniprotFeature sf = features.get(0);
assertEquals("signal peptide", sf.getType());
assertNull(sf.getDescription());
@@ -124,33 +127,47 @@ public class UniprotTest
sf = features.get(3);
assertEquals("sequence variant", sf.getType());
- assertEquals("Variation: 'L' Original: 'M'", sf.getDescription());
+ assertNull(sf.getDescription());
assertEquals(41, sf.getPosition());
assertEquals(41, sf.getBegin());
assertEquals(41, sf.getEnd());
sf = features.get(4);
assertEquals("sequence variant", sf.getType());
- assertEquals("Pathogenic Variation: 'L' Original: 'M'",
- sf.getDescription());
+ assertEquals("Pathogenic", sf.getDescription());
assertEquals(41, sf.getPosition());
assertEquals(41, sf.getBegin());
assertEquals(41, sf.getEnd());
sf = features.get(5);
assertEquals("sequence variant", sf.getType());
- assertEquals("Pathogenic Original: 'M'", sf.getDescription());
+ assertEquals("Pathogenic", sf.getDescription());
assertEquals(41, sf.getPosition());
assertEquals(41, sf.getBegin());
assertEquals(41, sf.getEnd());
sf = features.get(6);
assertEquals("sequence variant", sf.getType());
- assertEquals("Foo Variation: 'L', Variation: 'LMV' Original: 'M'",
+ assertEquals("Foo",
sf.getDescription());
assertEquals(42, sf.getPosition());
assertEquals(42, sf.getBegin());
assertEquals(42, sf.getEnd());
+ Assert.assertEquals(Uniprot.getDescription(sf),
+ "p.Met42Leu" + "\n" + "p.Met42LeuMetVal Foo");
+
+ sf = features.get(7);
+ assertEquals(42, sf.getBegin());
+ assertEquals(43, sf.getEnd());
+ Assert.assertEquals(Uniprot.getDescription(sf),
+ "p.MetLeu42LeuLeu" + "\n" + "p.MetLeu42LeuMetVal Foo");
+
+ sf = features.get(8);
+ assertEquals(42, sf.getBegin());
+ assertEquals(45, sf.getEnd());
+ Assert.assertEquals(Uniprot.getDescription(sf),
+ "p.MLML42LeuLeu" + "\n" + "p.MLML42LMVK Foo Too");
+
/*
* Check cross-references
*/
@@ -219,4 +236,29 @@ public class UniprotTest
assertEquals(expectedDescription,
Uniprot.getUniprotEntryDescription(entry));
}
+
+ @Test(groups = { "Functional" })
+ public void testGetDescription()
+ {
+ UniprotFeature uf = new UniprotFeature();
+ assertEquals("", Uniprot.getDescription(uf));
+
+ uf.setDescription("Hello");
+ assertEquals("Hello", Uniprot.getDescription(uf));
+
+ uf.setPosition(23);
+ uf.setOriginal("K");
+ Vector vars = new Vector();
+ vars.add("y");
+ uf.setVariation(vars);
+ assertEquals("p.Lys23Tyr Hello", Uniprot.getDescription(uf));
+
+ vars.clear();
+ vars.add("z"); // unknown variant - fails gracefully
+ uf.setVariation(vars);
+ assertEquals("p.Lys23z Hello", Uniprot.getDescription(uf));
+
+ uf.setVariation(null); // variant missing - is ignored
+ assertEquals("Hello", Uniprot.getDescription(uf));
+ }
}