diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/MongoTemplateTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/MongoTemplateTests.java index 97ce66916..bb073c87c 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/MongoTemplateTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/MongoTemplateTests.java @@ -45,6 +45,7 @@ import java.util.stream.IntStream; import org.bson.types.ObjectId; import org.hamcrest.collection.IsMapContaining; +import org.hamcrest.core.IsSame; import org.joda.time.DateTime; import org.junit.After; import org.junit.Before; @@ -3520,11 +3521,14 @@ public class MongoTemplateTests { public void afterSaveEventContainsSavedObjectUsingInsertAll() { AtomicReference saved = createAfterSaveReference(); + ImmutableVersioned source = new ImmutableVersioned(); - template.insertAll(Collections.singletonList(new ImmutableVersioned())); + template.insertAll(Collections.singletonList(source)); assertThat(saved.get(), is(notNullValue())); + assertThat(saved.get(), is(not(sameInstance(source)))); assertThat(saved.get().id, is(notNullValue())); + } @Test // DATAMONGO-2189 @@ -3532,27 +3536,15 @@ public class MongoTemplateTests { public void afterSaveEventContainsSavedObjectUsingInsert() { AtomicReference saved = createAfterSaveReference(); + ImmutableVersioned source = new ImmutableVersioned(); - template.insert(new ImmutableVersioned()); + template.insert(source); assertThat(saved.get(), is(notNullValue())); + assertThat(saved.get(), is(not(sameInstance(source)))); assertThat(saved.get().id, is(notNullValue())); } - private AtomicReference createAfterSaveReference() { - - AtomicReference saved = new AtomicReference<>(); - context.addApplicationListener(new AbstractMongoEventListener() { - - @Override - public void onAfterSave(AfterSaveEvent event) { - saved.set(event.getSource()); - } - }); - - return saved; - } - @Test // DATAMONGO-1509 public void findsByGenericNestedListElements() { @@ -3695,6 +3687,20 @@ public class MongoTemplateTests { assertThat(target).isEqualTo(source); } + private AtomicReference createAfterSaveReference() { + + AtomicReference saved = new AtomicReference<>(); + context.addApplicationListener(new AbstractMongoEventListener() { + + @Override + public void onAfterSave(AfterSaveEvent event) { + saved.set(event.getSource()); + } + }); + + return saved; + } + static class TypeWithNumbers { @Id String id; diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/ReactiveMongoTemplateTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/ReactiveMongoTemplateTests.java index 127c11dd5..e1856704c 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/ReactiveMongoTemplateTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/ReactiveMongoTemplateTests.java @@ -1330,13 +1330,14 @@ public class ReactiveMongoTemplateTests { public void afterSaveEventContainsSavedObjectUsingInsert() { AtomicReference saved = createAfterSaveReference(); + ImmutableVersioned source = new ImmutableVersioned(); - template.insert(new ImmutableVersioned()) // + template.insert(source) // .as(StepVerifier::create) // .expectNextCount(1) // .verifyComplete(); - assertThat(saved.get()).isNotNull(); + assertThat(saved.get()).isNotNull().isNotSameAs(source); assertThat(saved.get().id).isNotNull(); } @@ -1345,30 +1346,17 @@ public class ReactiveMongoTemplateTests { public void afterSaveEventContainsSavedObjectUsingInsertAll() { AtomicReference saved = createAfterSaveReference(); + ImmutableVersioned source = new ImmutableVersioned(); template.insertAll(Collections.singleton(new ImmutableVersioned())) // .as(StepVerifier::create) // .expectNextCount(1) // .verifyComplete(); - assertThat(saved.get()).isNotNull(); + assertThat(saved.get()).isNotNull().isNotSameAs(source); assertThat(saved.get().id).isNotNull(); } - private AtomicReference createAfterSaveReference() { - - AtomicReference saved = new AtomicReference<>(); - context.addApplicationListener(new AbstractMongoEventListener() { - - @Override - public void onAfterSave(AfterSaveEvent event) { - saved.set(event.getSource()); - } - }); - - return saved; - } - @Test // DATAMONGO-2012 public void watchesDatabaseCorrectly() throws InterruptedException { @@ -1490,6 +1478,20 @@ public class ReactiveMongoTemplateTests { return p; } + private AtomicReference createAfterSaveReference() { + + AtomicReference saved = new AtomicReference<>(); + context.addApplicationListener(new AbstractMongoEventListener() { + + @Override + public void onAfterSave(AfterSaveEvent event) { + saved.set(event.getSource()); + } + }); + + return saved; + } + @AllArgsConstructor @Wither static class ImmutableVersioned {