X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=test%2Fjalview%2Fws%2Fdbsources%2FUniprotTest.java;fp=test%2Fjalview%2Fws%2Fdbsources%2FUniprotTest.java;h=f2d3b663c65023c7204c6ff23089d74520db31a3;hp=48f1f43cce92a5fd400fa7ca5a4eb2fcbf25045e;hb=56d72101b0584635cf539d5413db27abc8deb575;hpb=046aff3885029c55f22027c6fdbeba8167a3a733
diff --git a/test/jalview/ws/dbsources/UniprotTest.java b/test/jalview/ws/dbsources/UniprotTest.java
index 48f1f43..f2d3b66 100644
--- a/test/jalview/ws/dbsources/UniprotTest.java
+++ b/test/jalview/ws/dbsources/UniprotTest.java
@@ -39,6 +39,7 @@ import org.testng.annotations.Test;
import jalview.datamodel.DBRefEntry;
import jalview.datamodel.DBRefSource;
+import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceI;
import jalview.gui.JvOptionPane;
import jalview.util.DBRefUtils;
@@ -326,311 +327,304 @@ public class UniprotTest
assertEquals("Hello", Uniprot.getDescription(ft));
}
+ public static String Q29079 = Q29079 = new String(
+ "\n"
+ + "\n"
+ + "Q29079\n"
+ + "Q29017\n"
+ + "PAG2_PIG\n" + "\n"
+ + "\n"
+ + "Pregnancy-associated glycoprotein 2\n"
+ + "PAG 2\n"
+ + "3.4.23.-\n"
+ + "\n" + "\n" + "\n"
+ + "PAG2\n" + "\n"
+ + "\n"
+ + "Sus scrofa\n"
+ + "Pig\n"
+ + "\n"
+ + "\n" + "Eukaryota\n"
+ + "Metazoa\n" + "Chordata\n"
+ + "Craniata\n"
+ + "Vertebrata\n"
+ + "Euteleostomi\n"
+ + "Mammalia\n"
+ + "Eutheria\n"
+ + "Laurasiatheria\n"
+ + "Artiodactyla\n"
+ + "Suina\n" + "Suidae\n"
+ + "Sus\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "Porcine pregnancy-associated glycoproteins: new members of the aspartic proteinase gene family expressed in trophectoderm.\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "NUCLEOTIDE SEQUENCE [GENOMIC DNA]\n"
+ + "\n" + "\n"
+ + "\n"
+ + "Gene for porcine pregnancy-associated glycoprotein 2 (poPAG2): its structural organization and analysis of its promoter.\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "NUCLEOTIDE SEQUENCE [GENOMIC DNA]\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "Secreted\n"
+ + "Extracellular space\n"
+ + "\n" + "\n"
+ + "\n"
+ + "Expressed throughout the chorion, with the signal localized exclusively over the trophectoderm.\n"
+ + "\n"
+ + "\n"
+ + "Expression was detected at day 15, coinciding with the beginning of implantation, and continued throughout gestation.\n"
+ + "\n" + "\n"
+ + "Belongs to the peptidase A1 family.\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "Aspartyl protease\n"
+ + "Disulfide bond\n"
+ + "Glycoprotein\n"
+ + "Hydrolase\n"
+ + "Protease\n"
+ + "Reference proteome\n"
+ + "Secreted\n"
+ + "Signal\n"
+ + "Zymogen\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "\n" + "\n"
+ + "\n"
+ + "MKWLVILGLVALSDCLVMIPLTKVKSVRESLREKGLLKNFLKEHPYNMIQNLLSKNSSHVQKFSYQPLRNYLDMVYVGNISIGTPPQQFSVVFDTGSSDLWVPSIYCKSKACVTHRSFNPSHSSTFHDRGKSIKLEYGSGKMSGFLGQDTVRIGQLTSTGQAFGLSKEETGKAFEHAIFDGILGLAYPSIAIKGTTTVIDNLKKQDQISEPVFAFYLSSDKEEGSVVMFGGVDKKYYKGDLKWVPLTQTSYWQIALDRITCRGRVIGCPRGCQAIVDTGTSMLHGPSKAVAKIHSLIKHFEKEYVVPCNARKALPDIVFTINNVDYPVPAQAYIRKYVVPCNARKALPDIVFTINNVDYPVPAQAYIRKNANNNRCYSTFEDIMDTLNQREIWILGDVFLRLYFTVYDEGQNRIGLAQAT\n"
+ + "\n"
+ + " Copyrighted by the UniProt Consortium, see https://www.uniprot.org/terms Distributed under the Creative Commons Attribution (CC BY 4.0) License \n"
+ + "");
+
@DataProvider
public Object[][] problemEntries()
{
- return new Object[][] {
- new Object[]
- { new String(
- "\n"
- + "\n"
- + "Q29079\n"
- + "Q29017\n"
- + "PAG2_PIG\n" + "\n"
- + "\n"
- + "Pregnancy-associated glycoprotein 2\n"
- + "PAG 2\n"
- + "3.4.23.-\n"
- + "\n" + "\n"
- + "\n"
- + "PAG2\n"
- + "\n" + "\n"
- + "Sus scrofa\n"
- + "Pig\n"
- + "\n"
- + "\n" + "Eukaryota\n"
- + "Metazoa\n"
- + "Chordata\n"
- + "Craniata\n"
- + "Vertebrata\n"
- + "Euteleostomi\n"
- + "Mammalia\n"
- + "Eutheria\n"
- + "Laurasiatheria\n"
- + "Artiodactyla\n"
- + "Suina\n"
- + "Suidae\n" + "Sus\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "Porcine pregnancy-associated glycoproteins: new members of the aspartic proteinase gene family expressed in trophectoderm.\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "NUCLEOTIDE SEQUENCE [GENOMIC DNA]\n"
- + "\n" + "\n"
- + "\n"
- + "Gene for porcine pregnancy-associated glycoprotein 2 (poPAG2): its structural organization and analysis of its promoter.\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "NUCLEOTIDE SEQUENCE [GENOMIC DNA]\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "Secreted\n"
- + "Extracellular space\n"
- + "\n" + "\n"
- + "\n"
- + "Expressed throughout the chorion, with the signal localized exclusively over the trophectoderm.\n"
- + "\n"
- + "\n"
- + "Expression was detected at day 15, coinciding with the beginning of implantation, and continued throughout gestation.\n"
- + "\n" + "\n"
- + "Belongs to the peptidase A1 family.\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "Aspartyl protease\n"
- + "Disulfide bond\n"
- + "Glycoprotein\n"
- + "Hydrolase\n"
- + "Protease\n"
- + "Reference proteome\n"
- + "Secreted\n"
- + "Signal\n"
- + "Zymogen\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n"
- + "\n" + "\n"
- + "\n"
- + "MKWLVILGLVALSDCLVMIPLTKVKSVRESLREKGLLKNFLKEHPYNMIQNLLSKNSSHVQKFSYQPLRNYLDMVYVGNISIGTPPQQFSVVFDTGSSDLWVPSIYCKSKACVTHRSFNPSHSSTFHDRGKSIKLEYGSGKMSGFLGQDTVRIGQLTSTGQAFGLSKEETGKAFEHAIFDGILGLAYPSIAIKGTTTVIDNLKKQDQISEPVFAFYLSSDKEEGSVVMFGGVDKKYYKGDLKWVPLTQTSYWQIALDRITCRGRVIGCPRGCQAIVDTGTSMLHGPSKAVAKIHSLIKHFEKEYVVPCNARKALPDIVFTINNVDYPVPAQAYIRKYVVPCNARKALPDIVFTINNVDYPVPAQAYIRKNANNNRCYSTFEDIMDTLNQREIWILGDVFLRLYFTVYDEGQNRIGLAQAT\n"
- + "\n"
- + " Copyrighted by the UniProt Consortium, see https://www.uniprot.org/terms Distributed under the Creative Commons Attribution (CC BY 4.0) License \n"
- + "") } };
+ return new Object[][] { new Object[] { Q29079 } };
}
@Test(groups = "Functional", dataProvider = "problemEntries")
- public void testimportOfProblemEntries(String entry)
+ public SequenceI testimportOfProblemEntries(String entry)
{
Uniprot u = new Uniprot();
InputStream is = new ByteArrayInputStream(entry.getBytes());
@@ -638,5 +632,23 @@ public class UniprotTest
assertEquals(1, entries.size());
SequenceI sq = u.uniprotEntryToSequence(entries.get(0));
assertNotNull(sq);
+ return sq;
+ }
+
+ @Test(groups = "Functional")
+ public void checkIndefiniteSequenceFeatures()
+ {
+ SequenceI upseq = testimportOfProblemEntries(Q29079);
+ List sf = upseq.getFeatures()
+ .getPositionalFeatures("chain");
+ assertNotNull(sf);
+ assertTrue(sf.size() == 1);
+ SequenceFeature chainFeaure = sf.get(0);
+ assertTrue(chainFeaure.getBegin() == 1);
+ assertTrue(chainFeaure.getEnd() == upseq.getEnd());
+ assertNotNull(chainFeaure.getValueAsString("start_status"));
+ assertNull(chainFeaure.getValueAsString("end_status"));
+ assertTrue(
+ "unknown".equals(chainFeaure.getValueAsString("start_status")));
}
}