@Test
public void testMapConfig() {
assertNotNull(config);
assertEquals(9, config.getMapConfigs().size());
MapConfig testMapConfig = config.getMapConfig("testMap");
assertNotNull(testMapConfig);
assertEquals("testMap", testMapConfig.getName());
assertEquals(2, testMapConfig.getBackupCount());
assertEquals(EvictionPolicy.NONE, testMapConfig.getEvictionPolicy());
assertEquals(Integer.MAX_VALUE, testMapConfig.getMaxSizeConfig().getSize());
assertEquals(30, testMapConfig.getEvictionPercentage());
assertEquals(0, testMapConfig.getTimeToLiveSeconds());
assertEquals(1000, testMapConfig.getMinEvictionCheckMillis());
assertEquals("PUT_IF_ABSENT", testMapConfig.getMergePolicy());
assertTrue(testMapConfig.isReadBackupData());
assertEquals(2, testMapConfig.getMapIndexConfigs().size());
for (MapIndexConfig index : testMapConfig.getMapIndexConfigs()) {
if ("name".equals(index.getAttribute())) {
assertFalse(index.isOrdered());
} else if ("age".equals(index.getAttribute())) {
assertTrue(index.isOrdered());
} else {
fail("unknown index!");
}
}
// Test that the testMapConfig has a mapStoreConfig and it is correct
MapStoreConfig testMapStoreConfig = testMapConfig.getMapStoreConfig();
assertNotNull(testMapStoreConfig);
assertEquals("com.hazelcast.spring.DummyStore", testMapStoreConfig.getClassName());
assertTrue(testMapStoreConfig.isEnabled());
assertEquals(0, testMapStoreConfig.getWriteDelaySeconds());
assertEquals(10, testMapStoreConfig.getWriteBatchSize());
assertEquals(MapStoreConfig.InitialLoadMode.EAGER,testMapStoreConfig.getInitialLoadMode());
// Test that the testMapConfig has a nearCacheConfig and it is correct
NearCacheConfig testNearCacheConfig = testMapConfig.getNearCacheConfig();
assertNotNull(testNearCacheConfig);
assertEquals(0, testNearCacheConfig.getTimeToLiveSeconds());
assertEquals(60, testNearCacheConfig.getMaxIdleSeconds());
assertEquals("LRU", testNearCacheConfig.getEvictionPolicy());
assertEquals(5000, testNearCacheConfig.getMaxSize());
assertTrue(testNearCacheConfig.isInvalidateOnChange());
// Test that the testMapConfig2's mapStoreConfig implementation
MapConfig testMapConfig2 = config.getMapConfig("testMap2");
assertNotNull(testMapConfig2.getMapStoreConfig().getImplementation());
assertEquals(dummyMapStore, testMapConfig2.getMapStoreConfig().getImplementation());
assertEquals(MapStoreConfig.InitialLoadMode.LAZY, testMapConfig2.getMapStoreConfig().getInitialLoadMode());
assertEquals("testWan", testMapConfig2.getWanReplicationRef().getName());
assertEquals(1000, testMapConfig2.getMaxSizeConfig().getSize());
assertEquals(MaxSizeConfig.MaxSizePolicy.PER_NODE, testMapConfig2.getMaxSizeConfig().getMaxSizePolicy());
assertEquals(2, testMapConfig2.getEntryListenerConfigs().size());
for (EntryListenerConfig listener : testMapConfig2.getEntryListenerConfigs()) {
if (listener.getClassName() != null) {
assertNull(listener.getImplementation());
assertTrue(listener.isIncludeValue());
assertFalse(listener.isLocal());
} else {
assertNotNull(listener.getImplementation());
assertEquals(entryListener, listener.getImplementation());
assertTrue(listener.isLocal());
assertTrue(listener.isIncludeValue());
}
}
MapConfig simpleMapConfig = config.getMapConfig("simpleMap");
assertNotNull(simpleMapConfig);
assertEquals("simpleMap", simpleMapConfig.getName());
assertEquals(3, simpleMapConfig.getBackupCount());
assertEquals(1, simpleMapConfig.getAsyncBackupCount());
assertEquals(EvictionPolicy.LRU, simpleMapConfig.getEvictionPolicy());
assertEquals(10, simpleMapConfig.getMaxSizeConfig().getSize());
assertEquals(50, simpleMapConfig.getEvictionPercentage());
assertEquals(1, simpleMapConfig.getTimeToLiveSeconds());
assertEquals("LATEST_UPDATE", simpleMapConfig.getMergePolicy());
// Test that the simpleMapConfig does NOT have a mapStoreConfig
assertNull(simpleMapConfig.getMapStoreConfig());
// Test that the simpleMapConfig does NOT have a nearCacheConfig
assertNull(simpleMapConfig.getNearCacheConfig());
MapConfig testMapConfig3 = config.getMapConfig("testMap3");
assertEquals("com.hazelcast.spring.DummyStoreFactory", testMapConfig3.getMapStoreConfig().getFactoryClassName());
assertFalse(testMapConfig3.getMapStoreConfig().getProperties().isEmpty());
assertEquals(testMapConfig3.getMapStoreConfig().getProperty("dummy.property"), "value");
MapConfig testMapConfig4 = config.getMapConfig("testMap4");
assertEquals(dummyMapStoreFactory, testMapConfig4.getMapStoreConfig().getFactoryImplementation());
MapConfig mapWithOptimizedQueriesConfig = config.getMapConfig("mapWithOptimizedQueries");
assertTrue(mapWithOptimizedQueriesConfig.isOptimizeQueries());
MapConfig mapWithNotOptimizedQueriesConfig = config.getMapConfig("mapWithNotOptimizedQueries");
assertFalse(mapWithNotOptimizedQueriesConfig.isOptimizeQueries());
MapConfig mapWithDefaultOptimizedQueriesConfig = config.getMapConfig("mapWithDefaultOptimizedQueries");
assertFalse(mapWithDefaultOptimizedQueriesConfig.isOptimizeQueries());
}