1 package jalview.structure;
3 import static org.testng.AssertJUnit.assertEquals;
4 import static org.testng.AssertJUnit.assertTrue;
6 import jalview.datamodel.AlignedCodonFrame;
8 import java.util.HashSet;
11 import org.testng.annotations.BeforeMethod;
12 import org.testng.annotations.Test;
14 public class StructureSelectionManagerTest
16 private StructureSelectionManager ssm;
18 @BeforeMethod(alwaysRun = true)
21 ssm = new StructureSelectionManager();
24 @Test(groups ={ "Functional" })
25 public void testRegisterMapping()
27 AlignedCodonFrame acf1 = new AlignedCodonFrame();
28 AlignedCodonFrame acf2 = new AlignedCodonFrame();
30 ssm.registerMapping(acf1);
31 assertEquals(1, ssm.seqmappings.size());
32 assertTrue(ssm.seqmappings.contains(acf1));
34 ssm.registerMapping(acf2);
35 assertEquals(2, ssm.seqmappings.size());
36 assertTrue(ssm.seqmappings.contains(acf1));
37 assertTrue(ssm.seqmappings.contains(acf2));
40 * Re-adding the first mapping does nothing
42 ssm.registerMapping(acf1);
43 assertEquals(2, ssm.seqmappings.size());
44 assertTrue(ssm.seqmappings.contains(acf1));
45 assertTrue(ssm.seqmappings.contains(acf2));
48 @Test(groups ={ "Functional" })
49 public void testRegisterMappings()
51 AlignedCodonFrame acf1 = new AlignedCodonFrame();
52 AlignedCodonFrame acf2 = new AlignedCodonFrame();
53 AlignedCodonFrame acf3 = new AlignedCodonFrame();
55 Set<AlignedCodonFrame> set1 = new HashSet<AlignedCodonFrame>();
58 Set<AlignedCodonFrame> set2 = new HashSet<AlignedCodonFrame>();
63 * Add both sets twice; each mapping should be added once only
65 ssm.registerMappings(set1);
66 ssm.registerMappings(set1);
67 ssm.registerMappings(set2);
68 ssm.registerMappings(set2);
70 assertEquals(3, ssm.seqmappings.size());
71 assertTrue(ssm.seqmappings.contains(acf1));
72 assertTrue(ssm.seqmappings.contains(acf2));
73 assertTrue(ssm.seqmappings.contains(acf3));