JAL-1830 tests relocated to AlignViewportTest after refactoring
[jalview.git] / test / jalview / structure / StructureSelectionManagerTest.java
1 package jalview.structure;
2
3 import static org.testng.AssertJUnit.assertEquals;
4 import static org.testng.AssertJUnit.assertTrue;
5
6 import jalview.datamodel.AlignedCodonFrame;
7
8 import java.util.HashSet;
9 import java.util.Set;
10
11 import org.testng.annotations.BeforeMethod;
12 import org.testng.annotations.Test;
13
14 public class StructureSelectionManagerTest
15 {
16   private StructureSelectionManager ssm;
17
18  @BeforeMethod(alwaysRun = true)
19   public void setUp()
20   {
21     ssm = new StructureSelectionManager();
22   }
23
24   @Test(groups ={ "Functional" })
25   public void testRegisterMapping()
26   {
27     AlignedCodonFrame acf1 = new AlignedCodonFrame();
28     AlignedCodonFrame acf2 = new AlignedCodonFrame();
29
30     ssm.registerMapping(acf1);
31     assertEquals(1, ssm.seqmappings.size());
32     assertTrue(ssm.seqmappings.contains(acf1));
33
34     ssm.registerMapping(acf2);
35     assertEquals(2, ssm.seqmappings.size());
36     assertTrue(ssm.seqmappings.contains(acf1));
37     assertTrue(ssm.seqmappings.contains(acf2));
38
39     /*
40      * Re-adding the first mapping does nothing
41      */
42     ssm.registerMapping(acf1);
43     assertEquals(2, ssm.seqmappings.size());
44     assertTrue(ssm.seqmappings.contains(acf1));
45     assertTrue(ssm.seqmappings.contains(acf2));
46   }
47
48   @Test(groups ={ "Functional" })
49   public void testRegisterMappings()
50   {
51     AlignedCodonFrame acf1 = new AlignedCodonFrame();
52     AlignedCodonFrame acf2 = new AlignedCodonFrame();
53     AlignedCodonFrame acf3 = new AlignedCodonFrame();
54
55     Set<AlignedCodonFrame> set1 = new HashSet<AlignedCodonFrame>();
56     set1.add(acf1);
57     set1.add(acf2);
58     Set<AlignedCodonFrame> set2 = new HashSet<AlignedCodonFrame>();
59     set2.add(acf2);
60     set2.add(acf3);
61
62     /*
63      * Add both sets twice; each mapping should be added once only
64      */
65     ssm.registerMappings(set1);
66     ssm.registerMappings(set1);
67     ssm.registerMappings(set2);
68     ssm.registerMappings(set2);
69
70     assertEquals(3, ssm.seqmappings.size());
71     assertTrue(ssm.seqmappings.contains(acf1));
72     assertTrue(ssm.seqmappings.contains(acf2));
73     assertTrue(ssm.seqmappings.contains(acf3));
74   }
75 }