source: references/src/test/java/geniusweb/references/ParametersTest.java@ 28

Last change on this file since 28 was 28, checked in by bart, 4 years ago

minor fixes to improve extendability

File size: 1.7 KB
Line 
1package geniusweb.references;
2
3import static org.junit.Assert.assertEquals;
4
5import java.util.Arrays;
6import java.util.List;
7
8import org.junit.Before;
9import org.junit.Test;
10
11import tudelft.utilities.junit.GeneralTests;
12
13public class ParametersTest extends GeneralTests<Parameters> {
14
15 private final Parameters params1 = new Parameters();
16 private final Parameters params1a = new Parameters();
17 private final Parameters params2 = new Parameters();
18
19 @Before
20 public void before() {
21 params2.put("a", 1);
22 params2.put("b", 2d);
23 }
24
25 @Override
26 public List<List<Parameters>> getGeneralTestData() {
27 return Arrays.asList(Arrays.asList(params1, params1a),
28 Arrays.asList(params2));
29 }
30
31 @Override
32 public List<String> getGeneralTestStrings() {
33 return Arrays.asList("\\{\\}", "\\{a=1, b=2.0\\}");
34 }
35
36 @Test(expected = IllegalArgumentException.class)
37 public void getWrongClass() {
38 params2.get("a", String.class);
39 }
40
41 @Test
42 public void getInteger() {
43 assertEquals((Integer) 1, params2.get("a", Integer.class));
44 assertEquals((Double) 2d, params2.get("b", Double.class));
45 }
46
47 @Test
48 public void getDouble() {
49 assertEquals((Double) 2d, params2.getDouble("b", 7d, null, null));
50 assertEquals((Double) 2d, params2.getDouble("b", 7d, 0d, 4d));
51
52 // test outside range
53 assertEquals((Double) 7d, params2.getDouble("b", 7d, 4d, 6d));
54 assertEquals((Double) 7d, params2.getDouble("b", 7d, -2d, 1d));
55
56 // test fallback null
57 assertEquals(null, params2.getDouble("b", null, 4d, 6d));
58
59 }
60
61 @Test
62 public void getDoubleWithErrors() {
63 // a does not contain a double
64 assertEquals((Double) 7d, params2.getDouble("a", 7d, 4d, 6d));
65 // c does not exist
66 assertEquals((Double) 7d, params2.getDouble("c", 7d, 4d, 6d));
67
68 }
69}
Note: See TracBrowser for help on using the repository browser.