Skip to content

Commit 6e42f49

Browse files
DATAMONGO-2189 - Polishing.
Assert returned object is not the same as the saved one and move helper method. Original Pull Request: #638
1 parent bdfe4e9 commit 6e42f49

File tree

2 files changed

+42
-37
lines changed

2 files changed

+42
-37
lines changed

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/MongoTemplateTests.java

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@
2626
import static org.springframework.data.mongodb.core.query.Query.*;
2727
import static org.springframework.data.mongodb.core.query.Update.*;
2828

29-
import com.mongodb.BasicDBObject;
30-
import com.mongodb.DBObject;
3129
import lombok.AllArgsConstructor;
3230
import lombok.Data;
3331
import lombok.EqualsAndHashCode;
@@ -45,7 +43,6 @@
4543
import java.util.stream.Collectors;
4644
import java.util.stream.IntStream;
4745

48-
import org.bson.Document;
4946
import org.bson.types.ObjectId;
5047
import org.hamcrest.collection.IsMapContaining;
5148
import org.joda.time.DateTime;
@@ -86,7 +83,6 @@
8683
import org.springframework.data.mongodb.core.index.IndexField;
8784
import org.springframework.data.mongodb.core.index.IndexInfo;
8885
import org.springframework.data.mongodb.core.mapping.Field;
89-
import org.springframework.data.mongodb.core.mapping.MongoId;
9086
import org.springframework.data.mongodb.core.mapping.MongoMappingContext;
9187
import org.springframework.data.mongodb.core.mapping.event.AbstractMongoEventListener;
9288
import org.springframework.data.mongodb.core.mapping.event.AfterSaveEvent;
@@ -107,6 +103,8 @@
107103
import org.springframework.util.ObjectUtils;
108104
import org.springframework.util.StringUtils;
109105

106+
import com.mongodb.BasicDBObject;
107+
import com.mongodb.DBObject;
110108
import com.mongodb.DBRef;
111109
import com.mongodb.Mongo;
112110
import com.mongodb.MongoException;
@@ -3519,39 +3517,30 @@ public void onBeforeSave(BeforeSaveEvent<Document> event) {
35193517
public void afterSaveEventContainsSavedObjectUsingInsertAll() {
35203518

35213519
AtomicReference<ImmutableVersioned> saved = createAfterSaveReference();
3520+
ImmutableVersioned source = new ImmutableVersioned();
35223521

3523-
template.insertAll(Collections.singletonList(new ImmutableVersioned()));
3522+
template.insertAll(Collections.singletonList(source));
35243523

35253524
assertThat(saved.get(), is(notNullValue()));
3525+
assertThat(saved.get(), is(not(sameInstance(source))));
35263526
assertThat(saved.get().id, is(notNullValue()));
3527+
35273528
}
35283529

35293530
@Test // DATAMONGO-2189
35303531
@DirtiesContext
35313532
public void afterSaveEventContainsSavedObjectUsingInsert() {
35323533

35333534
AtomicReference<ImmutableVersioned> saved = createAfterSaveReference();
3535+
ImmutableVersioned source = new ImmutableVersioned();
35343536

3535-
template.insert(new ImmutableVersioned());
3537+
template.insert(source);
35363538

35373539
assertThat(saved.get(), is(notNullValue()));
3540+
assertThat(saved.get(), is(not(sameInstance(source))));
35383541
assertThat(saved.get().id, is(notNullValue()));
35393542
}
35403543

3541-
private AtomicReference<ImmutableVersioned> createAfterSaveReference() {
3542-
3543-
AtomicReference<ImmutableVersioned> saved = new AtomicReference<>();
3544-
context.addApplicationListener(new AbstractMongoEventListener<ImmutableVersioned>() {
3545-
3546-
@Override
3547-
public void onAfterSave(AfterSaveEvent<ImmutableVersioned> event) {
3548-
saved.set(event.getSource());
3549-
}
3550-
});
3551-
3552-
return saved;
3553-
}
3554-
35553544
@Test // DATAMONGO-1509
35563545
public void findsByGenericNestedListElements() {
35573546

@@ -3674,6 +3663,20 @@ public void writesAuditingMetadataForImmutableTypes() {
36743663
assertThat(read.modified).isEqualTo(result.modified).describedAs("Expected auditing information to be read!");
36753664
}
36763665

3666+
private AtomicReference<ImmutableVersioned> createAfterSaveReference() {
3667+
3668+
AtomicReference<ImmutableVersioned> saved = new AtomicReference<>();
3669+
context.addApplicationListener(new AbstractMongoEventListener<ImmutableVersioned>() {
3670+
3671+
@Override
3672+
public void onAfterSave(AfterSaveEvent<ImmutableVersioned> event) {
3673+
saved.set(event.getSource());
3674+
}
3675+
});
3676+
3677+
return saved;
3678+
}
3679+
36773680
static class TypeWithNumbers {
36783681

36793682
@Id String id;

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/ReactiveMongoTemplateTests.java

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1329,13 +1329,14 @@ public void removeShouldConsiderSkipAndSort() {
13291329
public void afterSaveEventContainsSavedObjectUsingInsert() {
13301330

13311331
AtomicReference<ImmutableVersioned> saved = createAfterSaveReference();
1332+
ImmutableVersioned source = new ImmutableVersioned();
13321333

1333-
template.insert(new ImmutableVersioned()) //
1334+
template.insert(source) //
13341335
.as(StepVerifier::create) //
13351336
.expectNextCount(1) //
13361337
.verifyComplete();
13371338

1338-
assertThat(saved.get()).isNotNull();
1339+
assertThat(saved.get()).isNotNull().isNotSameAs(source);
13391340
assertThat(saved.get().id).isNotNull();
13401341
}
13411342

@@ -1344,30 +1345,17 @@ public void afterSaveEventContainsSavedObjectUsingInsert() {
13441345
public void afterSaveEventContainsSavedObjectUsingInsertAll() {
13451346

13461347
AtomicReference<ImmutableVersioned> saved = createAfterSaveReference();
1348+
ImmutableVersioned source = new ImmutableVersioned();
13471349

13481350
template.insertAll(Collections.singleton(new ImmutableVersioned())) //
13491351
.as(StepVerifier::create) //
13501352
.expectNextCount(1) //
13511353
.verifyComplete();
13521354

1353-
assertThat(saved.get()).isNotNull();
1355+
assertThat(saved.get()).isNotNull().isNotSameAs(source);
13541356
assertThat(saved.get().id).isNotNull();
13551357
}
13561358

1357-
private AtomicReference<ImmutableVersioned> createAfterSaveReference() {
1358-
1359-
AtomicReference<ImmutableVersioned> saved = new AtomicReference<>();
1360-
context.addApplicationListener(new AbstractMongoEventListener<ImmutableVersioned>() {
1361-
1362-
@Override
1363-
public void onAfterSave(AfterSaveEvent<ImmutableVersioned> event) {
1364-
saved.set(event.getSource());
1365-
}
1366-
});
1367-
1368-
return saved;
1369-
}
1370-
13711359
@Test // DATAMONGO-2012
13721360
public void watchesDatabaseCorrectly() throws InterruptedException {
13731361

@@ -1452,6 +1440,20 @@ private PersonWithAList createPersonWithAList(String firstname, int age) {
14521440
return p;
14531441
}
14541442

1443+
private AtomicReference<ImmutableVersioned> createAfterSaveReference() {
1444+
1445+
AtomicReference<ImmutableVersioned> saved = new AtomicReference<>();
1446+
context.addApplicationListener(new AbstractMongoEventListener<ImmutableVersioned>() {
1447+
1448+
@Override
1449+
public void onAfterSave(AfterSaveEvent<ImmutableVersioned> event) {
1450+
saved.set(event.getSource());
1451+
}
1452+
});
1453+
1454+
return saved;
1455+
}
1456+
14551457
@AllArgsConstructor
14561458
@Wither
14571459
static class ImmutableVersioned {

0 commit comments

Comments
 (0)