DATAGEODE-111 - Add ability to configure SecurityManager on CacheFactoryBean.

This commit is contained in:
John Blum
2018-06-07 23:21:39 -07:00
parent 6ebc2a0611
commit d9346ea814
2 changed files with 97 additions and 6 deletions

View File

@@ -20,6 +20,7 @@ import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.instanceOf;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.notNullValue;
import static org.hamcrest.Matchers.nullValue;
import static org.hamcrest.Matchers.sameInstance;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
@@ -444,7 +445,41 @@ public class CacheFactoryBeanTest {
}
@Test
public void prepareFactoryWithUnspecifiedPdxOptions() {
@SuppressWarnings("unchecked")
public void initializesFactoryWitCacheFactoryInitializer() {
CacheFactory mockCacheFactory = mock(CacheFactory.class);
CacheFactoryBean.CacheFactoryInitializer<Object> mockCacheFactoryInitializer =
mock(CacheFactoryBean.CacheFactoryInitializer.class);
CacheFactoryBean cacheFactoryBean = new CacheFactoryBean();
cacheFactoryBean.setCacheFactoryInitializer(mockCacheFactoryInitializer);
assertThat(cacheFactoryBean.getCacheFactoryInitializer(), is(equalTo(mockCacheFactoryInitializer)));
assertThat(cacheFactoryBean.initializeFactory(mockCacheFactory), is(sameInstance(mockCacheFactory)));
verify(mockCacheFactoryInitializer, times(1)).initialize(eq(mockCacheFactory));
verifyZeroInteractions(mockCacheFactory);
}
@Test
public void initializeFactoryWhenNoCacheFactoryInitializerIsPresentIsNullSafe() {
CacheFactory mockCacheFactory = mock(CacheFactory.class);
CacheFactoryBean cacheFactoryBean = new CacheFactoryBean();
assertThat(cacheFactoryBean.getCacheFactoryInitializer(),
is(nullValue(CacheFactoryBean.CacheFactoryInitializer.class)));
assertThat(cacheFactoryBean.initializeFactory(mockCacheFactory), is(sameInstance(mockCacheFactory)));
verifyZeroInteractions(mockCacheFactory);
}
@Test
public void configureFactoryWithUnspecifiedPdxOptions() {
CacheFactory mockCacheFactory = mock(CacheFactory.class);
@@ -458,7 +493,7 @@ public class CacheFactoryBeanTest {
}
@Test
public void prepareFactoryWithSpecificPdxOptions() {
public void configureFactoryWithSpecificPdxOptions() {
CacheFactoryBean cacheFactoryBean = new CacheFactoryBean();
@@ -478,7 +513,7 @@ public class CacheFactoryBeanTest {
}
@Test
public void prepareFactoryWithAllPdxOptions() {
public void configureFactoryWithAllPdxOptions() {
CacheFactoryBean cacheFactoryBean = new CacheFactoryBean();
@@ -499,6 +534,25 @@ public class CacheFactoryBeanTest {
verify(mockCacheFactory, times(1)).setPdxSerializer(any(PdxSerializer.class));
}
@Test
public void configureFactoryWithSecurityManager() {
CacheFactory mockCacheFactory = mock(CacheFactory.class);
org.apache.geode.security.SecurityManager mockSecurityManager =
mock(org.apache.geode.security.SecurityManager.class);
CacheFactoryBean cacheFactoryBean = new CacheFactoryBean();
cacheFactoryBean.setSecurityManager(mockSecurityManager);
assertThat(cacheFactoryBean.getSecurityManager(), is(sameInstance(mockSecurityManager)));
assertThat(cacheFactoryBean.configureFactory(mockCacheFactory), is(sameInstance(mockCacheFactory)));
verify(mockCacheFactory, times(1)).setSecurityManager(eq(mockSecurityManager));
verifyZeroInteractions(mockSecurityManager);
}
@Test
public void createCacheWithCacheFactory() {