EasyMock.verify(new Object[]{mockConfiguration, mockConfigurationAdmin, mockBundleContext});
}
public void testShouldSaveConfig()
{
final AtomicReference disable = new AtomicReference();
final AtomicReference enable = new AtomicReference();
EasyMock.expect(mockBundleContext.getProperty(DirectoryWatcher.DISABLE_CONFIG_SAVE)).andAnswer(
new IAnswer() {
public Object answer() throws Throwable {
return disable.get() != null ? disable.get().toString() : null;
}
}
).anyTimes();
EasyMock.expect(mockBundleContext.getProperty(DirectoryWatcher.ENABLE_CONFIG_SAVE)).andAnswer(
new IAnswer() {
public Object answer() throws Throwable {
return enable.get() != null ? enable.get().toString() : null;
}
}
).anyTimes();
EasyMock.replay(new Object[]{mockConfiguration, mockConfigurationAdmin, mockBundleContext});
ConfigInstaller ci = new ConfigInstaller( mockBundleContext, mockConfigurationAdmin, new FileInstall() );
disable.set(null);
enable.set(null);
assertTrue( ci.shouldSaveConfig() );
disable.set(Boolean.FALSE);
enable.set(null);
assertFalse( ci.shouldSaveConfig() );
disable.set(Boolean.TRUE);
enable.set(null);
assertTrue( ci.shouldSaveConfig() );
disable.set(null);
enable.set(Boolean.FALSE);
assertFalse( ci.shouldSaveConfig() );
disable.set(Boolean.FALSE);
enable.set(Boolean.FALSE);
assertFalse( ci.shouldSaveConfig() );
disable.set(Boolean.TRUE);
enable.set(Boolean.FALSE);
assertFalse( ci.shouldSaveConfig() );
disable.set(null);
enable.set(Boolean.TRUE);
assertTrue( ci.shouldSaveConfig() );
disable.set(Boolean.FALSE);
enable.set(Boolean.TRUE);
assertTrue( ci.shouldSaveConfig() );
disable.set(Boolean.TRUE);
enable.set(Boolean.TRUE);
assertTrue( ci.shouldSaveConfig() );
EasyMock.verify(new Object[]{mockConfiguration, mockConfigurationAdmin, mockBundleContext});
}