### Question:
GrinderProperties extends Properties { public final boolean getBoolean(String propertyName, boolean defaultValue) { final String s = getProperty(propertyName); if (s != null) { return Boolean.valueOf(s).booleanValue(); } return defaultValue; } GrinderProperties();  GrinderProperties(File file); final File getAssociatedFile(); final void setAssociatedFile(File file); final void save(); final void saveSingleProperty(String name); final void setErrorWriter(PrintWriter writer); final synchronized GrinderProperties getPropertySubset(String prefix); final int getInt(String propertyName, int defaultValue); final void setInt(String propertyName, int value); final long getLong(String propertyName, long defaultValue); final void setLong(String propertyName, long value); final short getShort(String propertyName, short defaultValue); final void setShort(String propertyName, short value); final double getDouble(String propertyName, double defaultValue); final void setDouble(String propertyName, double value); final boolean getBoolean(String propertyName, boolean defaultValue); final void setBoolean(String propertyName, boolean value); final File getFile(String propertyName, File defaultValue); final File resolveRelativeFile(File file); final void setFile(String propertyName, File value); static final String SCRIPT; static final String LOG_DIRECTORY; static final String CONSOLE_HOST; static final String CONSOLE_PORT; static final File DEFAULT_PROPERTIES; static final File DEFAULT_SCRIPT; }### Answer:
@Test public void testGetBoolean() throws Exception { assertTrue(m_grinderProperties.getBoolean("Not there", true)); assertTrue(!m_grinderProperties.getBoolean("Not there", false)); (new IterateOverProperties(m_booleanSet) { void match(String key, String value) throws Exception { assertTrue(!(Boolean.valueOf(value).booleanValue() ^ m_grinderProperties.getBoolean(key, false))); } } ).run(); (new IterateOverProperties(m_brokenBooleanSet) { void match(String key, String value) { assertTrue(!m_grinderProperties.getBoolean(key, false)); } } ).run(); }