1 package jalview.datamodel;
3 import static org.testng.Assert.assertEquals;
4 import static org.testng.Assert.assertFalse;
5 import static org.testng.Assert.assertNotNull;
6 import static org.testng.Assert.assertNull;
7 import static org.testng.Assert.assertSame;
8 import static org.testng.Assert.assertTrue;
10 import jalview.schemes.NucleotideColourScheme;
12 import org.testng.annotations.Test;
14 public class SequenceGroupTest
17 public void testAddSequence()
19 SequenceGroup sg = new SequenceGroup();
20 assertTrue(sg.getSequences().isEmpty());
22 SequenceI seq1 = new Sequence("seq1", "abc");
23 SequenceI seq2 = new Sequence("seq2", "abc");
24 SequenceI seq3 = new Sequence(seq1);
26 sg.addSequence(null, false);
27 assertTrue(sg.getSequences().isEmpty());
28 sg.addSequence(seq1, false);
29 assertEquals(sg.getSequences().size(), 1);
30 assertTrue(sg.getSequences().contains(seq1));
31 // adding the same sequence again does nothing
32 sg.addSequence(seq1, false);
33 assertEquals(sg.getSequences().size(), 1);
34 assertTrue(sg.getSequences().contains(seq1));
35 sg.addSequence(seq2, false);
36 sg.addSequence(seq2, false);
37 sg.addSequence(seq3, false);
38 assertEquals(sg.getSequences().size(), 3);
39 assertTrue(sg.getSequences().contains(seq1));
40 assertTrue(sg.getSequences().contains(seq2));
41 assertTrue(sg.getSequences().contains(seq3));
45 public void testAddOrRemove()
47 SequenceGroup sg = new SequenceGroup();
48 assertTrue(sg.getSequences().isEmpty());
50 SequenceI seq1 = new Sequence("seq1", "abc");
51 SequenceI seq2 = new Sequence("seq2", "abc");
52 SequenceI seq3 = new Sequence(seq1);
54 sg.addOrRemove(seq1, false);
55 assertEquals(sg.getSequences().size(), 1);
56 sg.addOrRemove(seq2, false);
57 assertEquals(sg.getSequences().size(), 2);
58 sg.addOrRemove(seq3, false);
59 assertEquals(sg.getSequences().size(), 3);
60 assertTrue(sg.getSequences().contains(seq1));
61 assertTrue(sg.getSequences().contains(seq2));
62 assertTrue(sg.getSequences().contains(seq3));
63 sg.addOrRemove(seq1, false);
64 assertEquals(sg.getSequences().size(), 2);
65 assertFalse(sg.getSequences().contains(seq1));
69 public void testGetColourScheme()
71 SequenceGroup sg = new SequenceGroup();
72 assertNotNull(sg.getGroupColourScheme());
73 assertNull(sg.getColourScheme());
75 sg.setGroupColourScheme(null);
76 assertNull(sg.getColourScheme());
78 NucleotideColourScheme scheme = new NucleotideColourScheme();
79 sg.setColourScheme(scheme);
80 assertSame(scheme, sg.getColourScheme());