+
+ @Test(groups = { "Functional" })
+ public void testGetSelectionAsNewSequences_withContactMatrices()
+ {
+ SequenceI seq = new Sequence("seq", "ACADA");
+ ContactMatrixI cmat = new SeqDistanceContactMatrix(5);
+ seq.addContactList(cmat);
+ Alignment al = new Alignment(new SequenceI[] { seq.deriveSequence() });
+ al.addAnnotation(al.getSequenceAt(0).getAnnotation()[0]);
+ AlignFrame af = new AlignFrame(al, 500, 500);
+
+ SequenceI selseqs[] = af.getViewport().getSelectionAsNewSequence();
+ assertNotNull(selseqs[0].getAnnotation());
+ assertNotNull(selseqs[0].getAnnotation()[0]);
+ assertEquals(cmat,
+ selseqs[0].getContactMatrixFor(selseqs[0].getAnnotation()[0]));
+
+ assertNotNull(
+ selseqs[0].getContactListFor(selseqs[0].getAnnotation()[0], 2));
+
+ // now select everything and test again
+ af.selectAllSequenceMenuItem_actionPerformed(null);
+ selseqs = af.getViewport().getSelectionAsNewSequence();
+ assertNotNull(selseqs[0].getAnnotation());
+ assertNotNull(selseqs[0].getAnnotation()[0]);
+ assertEquals(cmat,
+ selseqs[0].getContactMatrixFor(selseqs[0].getAnnotation()[0]));
+ assertNotNull(
+ selseqs[0].getContactListFor(selseqs[0].getAnnotation()[0], 2));
+ }