package org.infinispan.query.config; import static org.infinispan.test.TestingUtil.withCacheManager; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; import java.io.IOException; import org.infinispan.commons.util.TypedProperties; import org.infinispan.configuration.cache.Configuration; import org.infinispan.test.AbstractInfinispanTest; import org.infinispan.test.CacheManagerCallable; import org.infinispan.test.fwk.TestCacheManagerFactory; import org.testng.annotations.Test; /** * @author gustavonalle * @since 7.0 */ @Test(groups = "unit", testName = "query.config.DeclarativeAutoConfigTest") public class DeclarativeAutoConfigTest extends AbstractInfinispanTest { @Test public void testAutoConfig() throws IOException { withCacheManager(new CacheManagerCallable( TestCacheManagerFactory.fromXml("configuration-parsing-test.xml")) { @Override public void call() { Configuration cacheConfiguration = cm.getCacheConfiguration("repl-with-default"); TypedProperties properties = cacheConfiguration.indexing().properties(); assertFalse(properties.isEmpty()); assertEquals(properties.getProperty("hibernate.search.default.exclusive_index_use"), "true"); assertEquals(properties.getProperty("hibernate.search.default.reader.strategy"), "shared"); assertEquals(properties.getProperty("hibernate.search.default.indexmanager"), "near-real-time"); assertEquals(properties.getProperty("hibernate.search.default.directory_provider"), "filesystem"); cacheConfiguration = cm.getCacheConfiguration("dist-with-default"); properties = cacheConfiguration.indexing().properties(); assertFalse(properties.isEmpty()); assertEquals(properties.getProperty("hibernate.search.default.directory_provider"), "infinispan"); assertEquals(properties.getProperty("hibernate.search.default.indexmanager"), "org.infinispan.query.indexmanager.InfinispanIndexManager"); assertEquals(properties.getProperty("hibernate.search.default.exclusive_index_use"), "true"); assertEquals(properties.getProperty("hibernate.search.default.reader.strategy"), "shared"); } }); } }