### Question:
RecursivePropertiesPersister implements PropertiesPersister { @Override public void load(Properties props, InputStream is) throws IOException { propertiesPersister.load(props, is); replace(props); } RecursivePropertiesPersister(PropertiesPersister propertiesPersister); @Override void load(Properties props, InputStream is); @Override void load(Properties props, Reader reader); @Override void store(Properties props, OutputStream os, String header); @Override void store(Properties props, Writer writer, String header); @Override void loadFromXml(Properties props, InputStream is); @Override void storeToXml(Properties props, OutputStream os, String header); @Override void storeToXml(Properties props, OutputStream os, String header,
            String encoding);  }### Answer:
@Test public void testLoadPropertiesInputStream() throws Exception { final Properties inputProps = getInputProps(); final InputStream is = new NullInputStream(10); testee.load(inputProps, is); verify(propertiesPersister).load(inputProps, is); assertThat(inputProps).containsOnly(getOutputProps()); }
@Test public void testLoadPropertiesReader() throws Exception { final Properties inputProps = getInputProps(); final Reader is = new NullReader(10); testee.load(inputProps, is); verify(propertiesPersister).load(inputProps, is); assertThat(inputProps).containsOnly(getOutputProps()); }