@Test public void testEnum() { assertEquals(opt.getEnum(KEY, One.BAR), One.BAR); opt.setEnum(KEY, One.FOO); assertEquals(opt.getEnum(KEY, One.BAR), One.FOO); assertEquals(opt.getEnum(KEY, Two.TAR), Two.FOO); opt.set(KEY, "TAR"); assertEquals(opt.getEnum(KEY, Two.FOO), Two.TAR); opt.setEnum(KEY, null); assertEquals(opt.getEnum(KEY, Two.FOO), Two.FOO); }
@Test(expectedExceptions = NumberFormatException.class) public void testBadLong() { opt.set(KEY, "9223372036854775808"); opt.getLong(KEY); }
@Test(expectedExceptions = NumberFormatException.class) public void testBadFloat() { opt.set(KEY, "foo"); opt.getFloat(KEY); }
@Test(expectedExceptions = NumberFormatException.class) public void testBadInt() { opt.set(KEY, "2147483648"); opt.getInteger(KEY); }
@Test(dataProvider = "integerCases") public void testIntFromString(String intString, Integer expected) { opt.set(KEY, intString); assertEquals(opt.getInteger(KEY), expected); }
@Test(expectedExceptions = NumberFormatException.class) public void testBadDouble() { opt.set(KEY, "foo"); opt.getDouble(KEY); }
@Test(expectedExceptions = ClassNotFoundException.class) public void testBadClass() throws ClassNotFoundException { opt.set(KEY, "org.foo.Bar"); opt.getClass(KEY); }
@Test(dataProvider = "longCases") public void testLongFromString(String longString, Long expected) { opt.set(KEY, longString); assertEquals(opt.getLong(KEY), expected); }
@Test(expectedExceptions = IllegalArgumentException.class) public void testBadBoolean() { opt.set(KEY, "foo"); opt.getBoolean(KEY); }
@Test(dataProvider = "doubleCases") public void testDoubleFromString(String doubleString, Double expected) { opt.set(KEY, doubleString); assertAlmostEquals(opt.getDouble(KEY), expected); }
@Test(dataProvider = "floatCases") public void testFloatFromString(String floatString, Float expected) { opt.set(KEY, floatString); assertAlmostEquals(opt.getFloat(KEY), expected); }