Polishing tests for delete session

This commit is contained in:
Greg Turnquist
2019-01-15 16:51:09 -06:00
parent 8db8978549
commit b04a0305e9
2 changed files with 13 additions and 2 deletions

View File

@@ -141,7 +141,7 @@ public class ReactiveMongoOperationsSessionRepository
return findSession(id)
.flatMap(document -> this.mongoOperations.remove(document, this.collectionName).then(Mono.just(document)))
.map(document -> convertToSession(this.mongoSessionConverter, document))
.map(mongoSession -> Mono.fromRunnable(() -> publishEvent(new SessionDeletedEvent(this, mongoSession))))
.doOnSuccess(mongoSession -> publishEvent(new SessionDeletedEvent(this, mongoSession)))
.then();
}

View File

@@ -17,7 +17,11 @@
package org.springframework.session.data.mongo;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.BDDMockito.any;
import static org.mockito.BDDMockito.eq;
import static org.mockito.BDDMockito.*;
import static org.mockito.BDDMockito.mock;
import static org.mockito.BDDMockito.times;
import static org.mockito.Mockito.verify;
import java.util.UUID;
@@ -30,11 +34,12 @@ import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
import reactor.core.publisher.Mono;
import reactor.test.StepVerifier;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.core.convert.TypeDescriptor;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.ReactiveMongoOperations;
import org.springframework.data.mongodb.core.index.IndexOperations;
import org.springframework.session.events.SessionDeletedEvent;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
@@ -61,11 +66,15 @@ public class ReactiveMongoOperationsSessionRepositoryTest {
@Mock
private MongoOperations blockingMongoOperations;
@Mock
private ApplicationEventPublisher eventPublisher;
@Before
public void setUp() {
this.repository = new ReactiveMongoOperationsSessionRepository(this.mongoOperations);
this.repository.setMongoSessionConverter(this.converter);
this.repository.setApplicationEventPublisher(this.eventPublisher);
}
@Test
@@ -197,6 +206,8 @@ public class ReactiveMongoOperationsSessionRepositoryTest {
verify(this.mongoOperations).remove(any(Document.class),
eq(ReactiveMongoOperationsSessionRepository.DEFAULT_COLLECTION_NAME));
verify(this.eventPublisher).publishEvent(any(SessionDeletedEvent.class));
}
@Test