JAL-2326 added setup method for JvOptionPane in all Jalveiw test classes to enable...
[jalview.git] / test / jalview / util / FormatTest.java
1 package jalview.util;
2
3 import static org.testng.Assert.assertEquals;
4
5 import jalview.gui.JvOptionPane;
6
7 import org.testng.annotations.BeforeClass;
8 import org.testng.annotations.Test;
9
10 public class FormatTest
11 {
12
13   @BeforeClass(alwaysRun = true)
14   public void setUpJvOptionPane()
15   {
16     JvOptionPane.setInteractiveMode(false);
17     JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
18   }
19
20   @Test(groups = "Functional")
21   public void testAppendPercentage()
22   {
23     StringBuilder sb = new StringBuilder();
24     Format.appendPercentage(sb, 123.436f, 0);
25     assertEquals(sb.toString(), "123");
26
27     sb.setLength(0);
28     Format.appendPercentage(sb, 123.536f, 0);
29     assertEquals(sb.toString(), "124");
30
31     sb.setLength(0);
32     Format.appendPercentage(sb, 799.536f, 0);
33     assertEquals(sb.toString(), "800");
34
35     sb.setLength(0);
36     Format.appendPercentage(sb, 123.436f, 1);
37     assertEquals(sb.toString(), "123.4");
38
39     sb.setLength(0);
40     Format.appendPercentage(sb, 123.436f, 2);
41     assertEquals(sb.toString(), "123.44");
42
43     sb.setLength(0);
44     Format.appendPercentage(sb, 123.436f, 3);
45     assertEquals(sb.toString(), "123.436");
46
47     sb.setLength(0);
48     Format.appendPercentage(sb, 123.436f, 4);
49     assertEquals(sb.toString(), "123.4360");
50   }
51
52   @Test(groups = "Functional")
53   public void testForm_float()
54   {
55     Format f = new Format("%3.2f");
56     assertEquals(f.form(123f), "123.00");
57     assertEquals(f.form(123.1f), "123.10");
58     assertEquals(f.form(123.12f), "123.12");
59     assertEquals(f.form(123.124f), "123.12");
60     assertEquals(f.form(123.125f), "123.13");
61     assertEquals(f.form(123.126f), "123.13");
62
63     f = new Format("%3.0f");
64     assertEquals(f.form(123f), "123.");
65     assertEquals(f.form(12f), "12.");
66     assertEquals(f.form(123.4f), "123.");
67     assertEquals(f.form(123.5f), "124.");
68     assertEquals(f.form(123.6f), "124.");
69     assertEquals(f.form(129.6f), "130.");
70   }
71
72   @Test(groups = "Functional")
73   public void testRepeat()
74   {
75     assertEquals(Format.repeat('a', 3), "aaa");
76     assertEquals(Format.repeat('b', 0), "");
77     assertEquals(Format.repeat('c', -1), "");
78   }
79 }