- * Test that a mapping is not deregistered if an alignment holds a reference
- * to it
- */
- @Test(groups ={ "Functional" })
- public void testDeregisterMapping_withAlignmentReference()
- {
- Desktop d = Desktop.instance;
- assertNotNull(d);
-
- /*
- * alignment with reference to mappings
- */
- AlignFrame af1 = new FileLoader().LoadFileWaitTillLoaded(
- ">Seq1\nCAGT\n", FormatAdapter.PASTE);
-
- AlignedCodonFrame acf1 = new AlignedCodonFrame();
- AlignedCodonFrame acf2 = new AlignedCodonFrame();
-
- Set<AlignedCodonFrame> mappings = new LinkedHashSet<AlignedCodonFrame>();
- mappings.add(acf1);
- mappings.add(acf2);
- af1.getViewport().getAlignment().setCodonFrames(mappings);
-
- /*
- * Add one and remove it.
- */
- ssm.registerMapping(acf1);
- ssm.deregisterMapping(acf1);
- assertEquals(1, ssm.seqmappings.size());
- assertTrue(ssm.seqmappings.contains(acf1));
- }
-
- /**
- * Test that a mapping is deregistered if no alignment holds a reference to it
- */
- @Test(groups ={ "Functional" })
- public void testDeregisterMapping_withNoReference()
- {
- Desktop d = Desktop.instance;
- assertNotNull(d);
-
- /*
- * alignment with reference to mappings
- */
- AlignFrame af1 = new FileLoader().LoadFileWaitTillLoaded(
- ">Seq1\nCAGT\n", FormatAdapter.PASTE);
-
- AlignedCodonFrame acf1 = new AlignedCodonFrame();
- AlignedCodonFrame acf2 = new AlignedCodonFrame();
-
- Set<AlignedCodonFrame> mappings = new LinkedHashSet<AlignedCodonFrame>();
- mappings.add(acf2);
- af1.getViewport().getAlignment().setCodonFrames(mappings);
-
- /*
- * Add one and remove it.
- */
- ssm.registerMapping(acf1);
- assertEquals(1, ssm.seqmappings.size());
- assertTrue(ssm.seqmappings.contains(acf1));
- ssm.deregisterMapping(acf1);
- assertEquals(0, ssm.seqmappings.size());
- }
-
- /**
- * Test that a mapping is not deregistered when a second view is closed but
- * the first still holds a reference to the mapping