public class EnsemblGenomeTest
{
- @BeforeClass
+ @BeforeClass(alwaysRun = true)
public void setUp()
{
SequenceOntologyFactory.setInstance(new SequenceOntologyLite());
}
- @AfterClass
+ @AfterClass(alwaysRun = true)
public void tearDown()
{
SequenceOntologyFactory.setInstance(null);
genomic.setStart(10000);
genomic.setEnd(50000);
String transcriptId = "ABC123";
-
+
// transcript at (start+10000) length 501
SequenceFeature sf = new SequenceFeature("transcript", "", 20000,
- 20500, 0f,
- null);
+ 20500, 0f, null);
sf.setValue("ID", "transcript:" + transcriptId);
sf.setStrand("+");
genomic.addSequenceFeature(sf);
-
+
// transcript (sub-type) at (start + 10500) length 101
sf = new SequenceFeature("ncRNA", "", 10500, 10600, 0f, null);
sf.setValue("ID", "transcript:" + transcriptId);
sf.setValue("ID", "transcript:" + transcriptId);
sf.setStrand("+");
genomic.addSequenceFeature(sf);
-
+
// transcript with a different ID doesn't count
sf = new SequenceFeature("transcript", "", 11500, 12600, 0f, null);
sf.setValue("ID", "transcript:anotherOne");
genomic.addSequenceFeature(sf);
-
+
// parent of transcript feature doesn't count
sf = new SequenceFeature("gene_member_region", "", 10000, 50000, 0f,
null);
SequenceFeature sf = new SequenceFeature("transcript", "", 20000,
20500, 0f, null);
assertFalse(testee.retainFeature(sf, accId));
-
+
sf.setType("mature_transcript");
assertFalse(testee.retainFeature(sf, accId));
-
+
sf.setType("NMD_transcript_variant");
assertFalse(testee.retainFeature(sf, accId));
-
+
// other feature with no parent is kept
sf.setType("anything");
assertTrue(testee.retainFeature(sf, accId));
{
String accId = "ABC123";
EnsemblGenome testee = new EnsemblGenome();
-
+
// transcript with no ID not valid
SequenceFeature sf = new SequenceFeature("transcript", "", 1, 2, 0f,
null);
assertFalse(testee.identifiesSequence(sf, accId));
-
+
// transcript with wrong ID not valid
sf.setValue("ID", "transcript");
assertFalse(testee.identifiesSequence(sf, accId));
-
+
// transcript with right ID is valid
sf.setValue("ID", "transcript:" + accId);
assertTrue(testee.identifiesSequence(sf, accId));
-
+
// transcript sub-type with right ID is valid
sf.setType("ncRNA");
assertTrue(testee.identifiesSequence(sf, accId));
// Ensembl treats NMD_transcript_variant as if a transcript
sf.setType("NMD_transcript_variant");
assertTrue(testee.identifiesSequence(sf, accId));
-
+
// gene not valid:
sf.setType("gene");
assertFalse(testee.identifiesSequence(sf, accId));
-
+
// exon not valid:
sf.setType("exon");
assertFalse(testee.identifiesSequence(sf, accId));