From ede462a9d19ff651d4c47f84bdc6354b19d3eb21 Mon Sep 17 00:00:00 2001 From: Sanne Grinovero Date: Wed, 6 Sep 2017 22:38:40 +0100 Subject: [PATCH] HSEARCH-2872 Migrate SearchFactoryHolder test helper to use IndexedTypeIdentifier Update SearchFactoryHolder#extractIndexManager and SearchFactoryHolder#extractWorkspace to use IndexedTypeIdentifier instead of Class<> as indexed type, this allows to remove yet another deprecated method. --- .../test/backend/lucene/AsyncBackendFlushTest.java | 5 ++++- .../test/backend/lucene/ScheduledCommitPolicyTest.java | 6 +++++- .../test/configuration/IndexWriterTuningAppliedTest.java | 9 +++++++-- .../commitpolicy/CommitPolicyConfigurationTest.java | 6 +++++- .../search/testsupport/junit/SearchFactoryHolder.java | 5 +++-- 5 files changed, 24 insertions(+), 7 deletions(-) diff --git a/engine/src/test/java/org/hibernate/search/test/backend/lucene/AsyncBackendFlushTest.java b/engine/src/test/java/org/hibernate/search/test/backend/lucene/AsyncBackendFlushTest.java index 39c2f831daa..5884bbcd28d 100644 --- a/engine/src/test/java/org/hibernate/search/test/backend/lucene/AsyncBackendFlushTest.java +++ b/engine/src/test/java/org/hibernate/search/test/backend/lucene/AsyncBackendFlushTest.java @@ -6,6 +6,8 @@ */ package org.hibernate.search.test.backend.lucene; +import org.hibernate.search.spi.IndexedTypeIdentifier; +import org.hibernate.search.spi.impl.PojoIndexedTypeIdentifier; import org.hibernate.search.testsupport.junit.SearchFactoryHolder; import org.hibernate.search.testsupport.junit.SearchITHelper; import org.junit.Rule; @@ -25,6 +27,7 @@ public class AsyncBackendFlushTest { .withProperty( "hibernate.search.default.worker.execution", "async" ); private final SearchITHelper helper = new SearchITHelper( sfHolder ); + private final IndexedTypeIdentifier testType = PojoIndexedTypeIdentifier.convertFromLegacy( Quote.class ); @Test public void testFlush() throws Exception { @@ -37,7 +40,7 @@ public void testFlush() throws Exception { } private void flushIndex() { - sfHolder.extractIndexManager( Quote.class ).flushAndReleaseResources(); + sfHolder.extractIndexManager( testType ).flushAndReleaseResources(); } private void assertDocumentsIndexed(int number) { diff --git a/engine/src/test/java/org/hibernate/search/test/backend/lucene/ScheduledCommitPolicyTest.java b/engine/src/test/java/org/hibernate/search/test/backend/lucene/ScheduledCommitPolicyTest.java index c5022d7d9d2..7689128c6a3 100644 --- a/engine/src/test/java/org/hibernate/search/test/backend/lucene/ScheduledCommitPolicyTest.java +++ b/engine/src/test/java/org/hibernate/search/test/backend/lucene/ScheduledCommitPolicyTest.java @@ -16,6 +16,8 @@ import org.hibernate.search.backend.impl.lucene.AbstractWorkspaceImpl; import org.hibernate.search.backend.impl.lucene.ScheduledCommitPolicy; import org.hibernate.search.query.engine.spi.HSQuery; +import org.hibernate.search.spi.IndexedTypeIdentifier; +import org.hibernate.search.spi.impl.PojoIndexedTypeIdentifier; import org.hibernate.search.testsupport.concurrency.Poller; import org.hibernate.search.testsupport.junit.SearchFactoryHolder; import org.hibernate.search.testsupport.junit.SearchITHelper; @@ -53,10 +55,12 @@ public class ScheduledCommitPolicyTest { private final SearchITHelper helper = new SearchITHelper( sfAsyncExclusiveIndex ); + private final IndexedTypeIdentifier testType = PojoIndexedTypeIdentifier.convertFromLegacy( Quote.class ); + @Test public void testScheduledCommits() throws Exception { writeData( NUMBER_ENTITIES ); - AbstractWorkspaceImpl workspace = sfAsyncExclusiveIndex.extractWorkspace( Quote.class ); + AbstractWorkspaceImpl workspace = sfAsyncExclusiveIndex.extractWorkspace( testType ); CommitPolicy commitPolicy = workspace.getCommitPolicy(); assertTrue( commitPolicy instanceof ScheduledCommitPolicy ); diff --git a/engine/src/test/java/org/hibernate/search/test/configuration/IndexWriterTuningAppliedTest.java b/engine/src/test/java/org/hibernate/search/test/configuration/IndexWriterTuningAppliedTest.java index 9cb9703a0ea..4bfdf202779 100644 --- a/engine/src/test/java/org/hibernate/search/test/configuration/IndexWriterTuningAppliedTest.java +++ b/engine/src/test/java/org/hibernate/search/test/configuration/IndexWriterTuningAppliedTest.java @@ -15,6 +15,8 @@ import org.hibernate.search.annotations.Field; import org.hibernate.search.annotations.Indexed; import org.hibernate.search.backend.impl.lucene.AbstractWorkspaceImpl; +import org.hibernate.search.spi.IndexedTypeIdentifier; +import org.hibernate.search.spi.impl.PojoIndexedTypeIdentifier; import org.hibernate.search.testsupport.TestForIssue; import org.hibernate.search.testsupport.junit.SearchFactoryHolder; import org.hibernate.search.testsupport.junit.SkipOnElasticsearch; @@ -41,12 +43,15 @@ public class IndexWriterTuningAppliedTest { .withProperty( "hibernate.search.index2.indexwriter.max_thread_states", "7" ) .withProperty( "hibernate.search.index2.indexwriter.infostream", "true" ); + private final IndexedTypeIdentifier dvdTestType = PojoIndexedTypeIdentifier.convertFromLegacy( Dvd.class ); + private final IndexedTypeIdentifier bookTestType = PojoIndexedTypeIdentifier.convertFromLegacy( Book.class ); + @Test public void testInfoStream() throws IOException { //Enable trace level on the magic category: Logger.getLogger( LuceneLogCategories.INFOSTREAM_LOGGER_CATEGORY.getName() ).setLevel( Level.TRACE ); - AbstractWorkspaceImpl dvdsWorkspace = sfHolder.extractWorkspace( Dvd.class ); - AbstractWorkspaceImpl booksWorkspace = sfHolder.extractWorkspace( Book.class ); + AbstractWorkspaceImpl dvdsWorkspace = sfHolder.extractWorkspace( dvdTestType ); + AbstractWorkspaceImpl booksWorkspace = sfHolder.extractWorkspace( bookTestType ); IndexWriter dvdsIndexWriter = dvdsWorkspace.getIndexWriter(); IndexWriter booksIndexWriter = booksWorkspace.getIndexWriter(); try { diff --git a/engine/src/test/java/org/hibernate/search/test/configuration/commitpolicy/CommitPolicyConfigurationTest.java b/engine/src/test/java/org/hibernate/search/test/configuration/commitpolicy/CommitPolicyConfigurationTest.java index 517d5f4c8e6..28c02213d4c 100644 --- a/engine/src/test/java/org/hibernate/search/test/configuration/commitpolicy/CommitPolicyConfigurationTest.java +++ b/engine/src/test/java/org/hibernate/search/test/configuration/commitpolicy/CommitPolicyConfigurationTest.java @@ -11,6 +11,8 @@ import org.hibernate.search.backend.impl.lucene.PerChangeSetCommitPolicy; import org.hibernate.search.backend.impl.lucene.ScheduledCommitPolicy; import org.hibernate.search.backend.impl.lucene.SharedIndexCommitPolicy; +import org.hibernate.search.spi.IndexedTypeIdentifier; +import org.hibernate.search.spi.impl.PojoIndexedTypeIdentifier; import org.hibernate.search.test.configuration.mutablefactory.A; import org.hibernate.search.testsupport.junit.SearchFactoryHolder; import org.hibernate.search.testsupport.junit.SkipOnElasticsearch; @@ -30,6 +32,8 @@ @Category(SkipOnElasticsearch.class) // This test is specific to Lucene public class CommitPolicyConfigurationTest { + private final IndexedTypeIdentifier testType = PojoIndexedTypeIdentifier.convertFromLegacy( A.class ); + @Rule public SearchFactoryHolder sfSyncExclusiveIndex = new SearchFactoryHolder( A.class ) .withProperty( "hibernate.search.default.exclusive_index_use", "true" ); @@ -79,7 +83,7 @@ private int extractInterval(SearchFactoryHolder sfHolder) { } private CommitPolicy getCommitPolicy(SearchFactoryHolder sfHolder) { - AbstractWorkspaceImpl workspace = sfHolder.extractWorkspace( A.class ); + AbstractWorkspaceImpl workspace = sfHolder.extractWorkspace( testType ); return workspace.getCommitPolicy(); } diff --git a/engine/src/test/java/org/hibernate/search/testsupport/junit/SearchFactoryHolder.java b/engine/src/test/java/org/hibernate/search/testsupport/junit/SearchFactoryHolder.java index 8916b18b0ee..12362337695 100644 --- a/engine/src/test/java/org/hibernate/search/testsupport/junit/SearchFactoryHolder.java +++ b/engine/src/test/java/org/hibernate/search/testsupport/junit/SearchFactoryHolder.java @@ -22,6 +22,7 @@ import org.hibernate.search.exception.SearchException; import org.hibernate.search.indexes.spi.DirectoryBasedIndexManager; import org.hibernate.search.indexes.spi.IndexManager; +import org.hibernate.search.spi.IndexedTypeIdentifier; import org.hibernate.search.spi.SearchIntegrator; import org.hibernate.search.spi.SearchIntegratorBuilder; import org.hibernate.search.testsupport.setup.SearchConfigurationForTest; @@ -141,14 +142,14 @@ public SearchFactoryHolder withService(Class serviceType, return this; } - public IndexManager extractIndexManager(Class indexedType) { + public IndexManager extractIndexManager(IndexedTypeIdentifier indexedType) { EntityIndexBinding indexBindingForEntity = getSearchFactory().getIndexBindings().get( indexedType ); IndexManager indexManager = (IndexManager) indexBindingForEntity.getIndexManagerSelector().all().iterator().next(); return indexManager; } - public AbstractWorkspaceImpl extractWorkspace(Class indexedType) { + public AbstractWorkspaceImpl extractWorkspace(IndexedTypeIdentifier indexedType) { DirectoryBasedIndexManager indexManager = (DirectoryBasedIndexManager) extractIndexManager( indexedType ); WorkspaceHolder backend = indexManager.getWorkspaceHolder(); return backend.getIndexResources().getWorkspace();