@Test public void testOptionWithNoDefault() { Configuration cfg = new Configuration(); cfg.setInteger("int-key", 11); cfg.setString("string-key", "abc"); ConfigOption<String> presentStringOption = ConfigOptions.key("string-key").noDefaultValue(); assertEquals("abc", cfg.getString(presentStringOption)); assertEquals("abc", cfg.getValue(presentStringOption)); // test getting default when no value is present ConfigOption<String> stringOption = ConfigOptions.key("test").noDefaultValue(); // getting strings for null should work assertNull(cfg.getValue(stringOption)); assertNull(cfg.getString(stringOption)); // overriding the null default should work assertEquals("override", cfg.getString(stringOption, "override")); }