assertFalse(iter.hasNext());
}
+ @Test
+ public void testDeleteAllAnnotations_includingAutocalculated()
+ {
+ AlignmentAnnotation aa = new AlignmentAnnotation("Consensus",
+ "Consensus", 0.5);
+ aa.autoCalculated = true;
+ al.addAnnotation(aa);
+ AlignmentAnnotation[] anns = al.getAlignmentAnnotation();
+ assertEquals("Wrong number of annotations before deleting", 4,
+ anns.length);
+ al.deleteAllAnnotations(true);
+ assertEquals("Not all deleted", 0, al.getAlignmentAnnotation().length);
+ }
+
+ @Test
+ public void testDeleteAllAnnotations_excludingAutocalculated()
+ {
+ AlignmentAnnotation aa = new AlignmentAnnotation("Consensus",
+ "Consensus", 0.5);
+ aa.autoCalculated = true;
+ al.addAnnotation(aa);
+ AlignmentAnnotation[] anns = al.getAlignmentAnnotation();
+ assertEquals("Wrong number of annotations before deleting", 4,
+ anns.length);
+ al.deleteAllAnnotations(false);
+ assertEquals("Not just one annotation left", 1,
+ al.getAlignmentAnnotation().length);
+ }
+
/**
* Tests for realigning as per a supplied alignment: Dna as Dna.
*
acf.addMap(al2.getSequenceAt(1), al1.getSequenceAt(1), ml);
al1.addCodonFrame(acf);
- al2.alignAs(al1);
+ ((Alignment) al2).alignAs(al1, false, true);
assertEquals("GC-TC--GUC-GTA-CT", al2.getSequenceAt(0)
.getSequenceAsString());
assertEquals("-GG-GTC--AGG---CAGT", al2.getSequenceAt(1)
String before0 = al2.getSequenceAt(0).getSequenceAsString();
String before1 = al2.getSequenceAt(1).getSequenceAsString();
- al2.alignAs(al1);
+ ((Alignment) al2).alignAs(al1, false, true);
assertEquals(before0, al2.getSequenceAt(0).getSequenceAsString());
assertEquals(before1, al2.getSequenceAt(1).getSequenceAsString());
}
acf.addMap(al1.getSequenceAt(1), al2.getSequenceAt(1), ml);
al2.addCodonFrame(acf);
- al1.alignAs(al2);
- assertEquals("AC-G---G--CUC-CA------A-CT", al1.getSequenceAt(0)
- .getSequenceAsString());
- assertEquals("---CG-T---TA--ACG---A---AGT", al1.getSequenceAt(1)
- .getSequenceAsString());
- }
-
- /**
- * Test aligning cdna (with introns) as per protein alignment.
- *
- * @throws IOException
- */
- @Test
- public void testAlignAs_cdnaAsProteinWithIntrons() throws IOException
- {
/*
- * Load alignments and add mappings for cDNA to protein
+ * Realign DNA; currently keeping existing gaps in introns only
*/
- AlignmentI al1 = loadAlignment(CDNA_SEQS_1, "FASTA");
- AlignmentI al2 = loadAlignment(AA_SEQS_1, "FASTA");
- AlignedCodonFrame acf = new AlignedCodonFrame();
- MapList ml = new MapList(new int[]
- { 1, 12 }, new int[]
- { 1, 4 }, 3, 1);
- acf.addMap(al1.getSequenceAt(0), al2.getSequenceAt(0), ml);
- acf.addMap(al1.getSequenceAt(1), al2.getSequenceAt(1), ml);
- al2.addCodonFrame(acf);
-
- al1.alignAs(al2);
- assertEquals("AC-G---G--CUC-CA------A-CT", al1.getSequenceAt(0)
+ ((Alignment) al1).alignAs(al2, false, true);
+ assertEquals("ACG---GCUCCA------ACT", al1.getSequenceAt(0)
.getSequenceAsString());
- assertEquals("---CG-T---TA--ACG---A---AGT", al1.getSequenceAt(1)
+ assertEquals("---CGT---TAACGA---AGT", al1.getSequenceAt(1)
.getSequenceAsString());
}
((Alignment) al1).alignAs(al2, false, false);
assertEquals("---AAagG------GCCcTTT", al1.getSequenceAt(0)
.getSequenceAsString());
- assertEquals("cCCGgg---TTT------AAA", al1.getSequenceAt(1)
+ // note 1 gap in protein corresponds to 'gg-' in DNA (3 positions)
+ assertEquals("cCCGgg-TTT------AAA", al1.getSequenceAt(1)
.getSequenceAsString());
/*
// assumption: we include 'the greater of' protein/dna gap lengths, not both
assertEquals("---A-Aa-gG------GCC-cT-TT", al1.getSequenceAt(0)
.getSequenceAsString());
- assertEquals("c--CCGgg---TT--T------AA-A", al1.getSequenceAt(1)
+ assertEquals("c--CCGgg-TT--T------AA-A", al1.getSequenceAt(1)
.getSequenceAsString());
}
}