1 package jalview.analysis;
3 import static org.testng.AssertJUnit.assertEquals;
4 import static org.testng.AssertJUnit.assertTrue;
6 import java.util.Arrays;
8 import org.testng.annotations.Test;
10 public class CodingUtilsTest
13 @Test(groups = { "Functional" })
14 public void testDecodeCodon()
16 assertTrue(Arrays.equals(new char[] { 'A', 'A', 'A' },
17 CodingUtils.decodeCodon(0)));
18 assertTrue(Arrays.equals(new char[] { 'A', 'A', 'C' },
19 CodingUtils.decodeCodon(1)));
20 assertTrue(Arrays.equals(new char[] { 'A', 'A', 'G' },
21 CodingUtils.decodeCodon(2)));
22 assertTrue(Arrays.equals(new char[] { 'A', 'A', 'T' },
23 CodingUtils.decodeCodon(3)));
24 assertTrue(Arrays.equals(new char[] { 'A', 'C', 'A' },
25 CodingUtils.decodeCodon(4)));
26 assertTrue(Arrays.equals(new char[] { 'C', 'A', 'A' },
27 CodingUtils.decodeCodon(16)));
28 assertTrue(Arrays.equals(new char[] { 'G', 'G', 'G' },
29 CodingUtils.decodeCodon(42)));
30 assertTrue(Arrays.equals(new char[] { 'T', 'T', 'T' },
31 CodingUtils.decodeCodon(63)));
34 @Test(groups = { "Functional" })
35 public void testDecodeNucleotide()
37 assertEquals('A', CodingUtils.decodeNucleotide(0));
38 assertEquals('C', CodingUtils.decodeNucleotide(1));
39 assertEquals('G', CodingUtils.decodeNucleotide(2));
40 assertEquals('T', CodingUtils.decodeNucleotide(3));
41 assertEquals('0', CodingUtils.decodeNucleotide(4));
44 @Test(groups = { "Functional" })
45 public void testEncodeCodon()
47 assertTrue(CodingUtils.encodeCodon('Z') < 0);
48 assertEquals(0, CodingUtils.encodeCodon('a'));
49 assertEquals(0, CodingUtils.encodeCodon('A'));
50 assertEquals(1, CodingUtils.encodeCodon('c'));
51 assertEquals(1, CodingUtils.encodeCodon('C'));
52 assertEquals(2, CodingUtils.encodeCodon('g'));
53 assertEquals(2, CodingUtils.encodeCodon('G'));
54 assertEquals(3, CodingUtils.encodeCodon('t'));
55 assertEquals(3, CodingUtils.encodeCodon('T'));
56 assertEquals(3, CodingUtils.encodeCodon('u'));
57 assertEquals(3, CodingUtils.encodeCodon('U'));
59 assertEquals(-1, CodingUtils.encodeCodon(null));
60 assertEquals(0, CodingUtils.encodeCodon(new char[] { 'A', 'A', 'A' }));
61 assertEquals(1, CodingUtils.encodeCodon(new char[] { 'A', 'A', 'C' }));
62 assertEquals(2, CodingUtils.encodeCodon(new char[] { 'A', 'A', 'G' }));
63 assertEquals(3, CodingUtils.encodeCodon(new char[] { 'A', 'A', 'T' }));
64 assertEquals(4, CodingUtils.encodeCodon(new char[] { 'A', 'C', 'A' }));
65 assertEquals(16, CodingUtils.encodeCodon(new char[] { 'C', 'A', 'A' }));
66 assertEquals(42, CodingUtils.encodeCodon(new char[] { 'G', 'G', 'G' }));
67 assertEquals(63, CodingUtils.encodeCodon(new char[] { 'T', 'T', 'T' }));