public void testClusterCacheTest() {
waitForClusterToForm();
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.clustering().cacheMode(CacheMode.DIST_SYNC);
Configuration configuration = builder.build();
Cache<Object, Object> cache = manager(0).administration().createCache("a", configuration);
waitForClusterToForm("a");
assertEquals(cacheManagers.size(), cache.getAdvancedCache().getRpcManager().getMembers().size());
checkConsistencyAcrossCluster("a", configuration);
addClusterEnabledCacheManager();
checkConsistencyAcrossCluster("a", configuration);
Exceptions.expectException(CacheConfigurationException.class,
"ISPN000374: No such template 'nonExistingTemplate' when declaring 'b'",
() -> manager(0).administration().createCache("b", "nonExistingTemplate"));
Exceptions.expectException(CacheConfigurationException.class,
"ISPN000507: Cache a already exists",
() -> manager(0).administration().createCache("a", configuration));
manager(0).administration().getOrCreateCache("a", configuration);
manager(1).administration().removeCache("a");
checkCacheExistenceAcrossCluster("a", false);
addClusterEnabledCacheManager();
checkCacheExistenceAcrossCluster("a", false);
}