mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-07 01:54:22 +00:00
added test that proves delete of solr record
This commit is contained in:
@@ -19,11 +19,13 @@ import org.dspace.authorize.AuthorizeException;
|
|||||||
import org.dspace.builder.ClaimedTaskBuilder;
|
import org.dspace.builder.ClaimedTaskBuilder;
|
||||||
import org.dspace.builder.CollectionBuilder;
|
import org.dspace.builder.CollectionBuilder;
|
||||||
import org.dspace.builder.CommunityBuilder;
|
import org.dspace.builder.CommunityBuilder;
|
||||||
|
import org.dspace.builder.ItemBuilder;
|
||||||
import org.dspace.builder.PoolTaskBuilder;
|
import org.dspace.builder.PoolTaskBuilder;
|
||||||
import org.dspace.builder.WorkflowItemBuilder;
|
import org.dspace.builder.WorkflowItemBuilder;
|
||||||
import org.dspace.builder.WorkspaceItemBuilder;
|
import org.dspace.builder.WorkspaceItemBuilder;
|
||||||
import org.dspace.content.Collection;
|
import org.dspace.content.Collection;
|
||||||
import org.dspace.content.Community;
|
import org.dspace.content.Community;
|
||||||
|
import org.dspace.content.Item;
|
||||||
import org.dspace.content.WorkspaceItem;
|
import org.dspace.content.WorkspaceItem;
|
||||||
import org.dspace.content.factory.ContentServiceFactory;
|
import org.dspace.content.factory.ContentServiceFactory;
|
||||||
import org.dspace.content.service.ItemService;
|
import org.dspace.content.service.ItemService;
|
||||||
@@ -238,6 +240,39 @@ public class DiscoveryIT extends AbstractIntegrationTestWithDatabase {
|
|||||||
assertSearchQuery(IndexableItem.TYPE, 1);
|
assertSearchQuery(IndexableItem.TYPE, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void solrRecordAfterDeleteTest() throws Exception {
|
||||||
|
context.turnOffAuthorisationSystem();
|
||||||
|
Community community = CommunityBuilder.createCommunity(context)
|
||||||
|
.withName("Parent Community")
|
||||||
|
.build();
|
||||||
|
Collection col = CollectionBuilder.createCollection(context, community)
|
||||||
|
.withName("Collection")
|
||||||
|
.build();
|
||||||
|
|
||||||
|
Item item1 = ItemBuilder.createItem(context, col)
|
||||||
|
.withTitle("Publication 1")
|
||||||
|
.build();
|
||||||
|
|
||||||
|
Item item2 = ItemBuilder.createItem(context, col)
|
||||||
|
.withTitle("Publication 2")
|
||||||
|
.build();
|
||||||
|
|
||||||
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
|
// we start with 2 items
|
||||||
|
assertSearchQuery(IndexableItem.TYPE, 2);
|
||||||
|
// simulate the delete of item2
|
||||||
|
deleteItem(item2);
|
||||||
|
// now we should have 1 item
|
||||||
|
assertSearchQuery(IndexableItem.TYPE, 1);
|
||||||
|
// simulate the delete of item1
|
||||||
|
deleteItem(item1);
|
||||||
|
// now we should have 0 item
|
||||||
|
assertSearchQuery(IndexableItem.TYPE, 0);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
private void assertSearchQuery(String resourceType, int size) throws SearchServiceException {
|
private void assertSearchQuery(String resourceType, int size) throws SearchServiceException {
|
||||||
DiscoverQuery discoverQuery = new DiscoverQuery();
|
DiscoverQuery discoverQuery = new DiscoverQuery();
|
||||||
discoverQuery.setQuery("*:*");
|
discoverQuery.setQuery("*:*");
|
||||||
@@ -259,6 +294,15 @@ public class DiscoveryIT extends AbstractIntegrationTestWithDatabase {
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void deleteItem(Item item) throws SQLException, AuthorizeException, IOException, SearchServiceException {
|
||||||
|
context.turnOffAuthorisationSystem();
|
||||||
|
item = context.reloadEntity(item);
|
||||||
|
itemService.delete(context, item);
|
||||||
|
context.commit();
|
||||||
|
indexer.commit();
|
||||||
|
context.restoreAuthSystemState();
|
||||||
|
}
|
||||||
|
|
||||||
private void deleteSubmission(WorkspaceItem anotherWorkspaceItem)
|
private void deleteSubmission(WorkspaceItem anotherWorkspaceItem)
|
||||||
throws SQLException, AuthorizeException, IOException, SearchServiceException {
|
throws SQLException, AuthorizeException, IOException, SearchServiceException {
|
||||||
context.turnOffAuthorisationSystem();
|
context.turnOffAuthorisationSystem();
|
||||||
|
Reference in New Issue
Block a user