|
|
|
|
@ -2464,6 +2464,33 @@ public class MongoTemplateTests {
@@ -2464,6 +2464,33 @@ public class MongoTemplateTests {
|
|
|
|
|
assertThat(result.models.get(0).value(), is("mongodb")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @see DATAMONGO-773 |
|
|
|
|
*/ |
|
|
|
|
@Test |
|
|
|
|
public void testShouldSupportQueryWithIncludedDbRefField() { |
|
|
|
|
|
|
|
|
|
Sample sample = new Sample("47111", "foo"); |
|
|
|
|
template.save(sample); |
|
|
|
|
|
|
|
|
|
DocumentWithDBRefCollection doc = new DocumentWithDBRefCollection(); |
|
|
|
|
doc.id = "4711"; |
|
|
|
|
doc.dbRefProperty = sample; |
|
|
|
|
|
|
|
|
|
template.save(doc); |
|
|
|
|
|
|
|
|
|
Query qry = query(where("id").is(doc.id)); |
|
|
|
|
qry.fields().include("dbRefProperty"); |
|
|
|
|
|
|
|
|
|
List<DocumentWithDBRefCollection> result = template.find(qry, DocumentWithDBRefCollection.class); |
|
|
|
|
|
|
|
|
|
assertThat(result, is(notNullValue())); |
|
|
|
|
assertThat(result, hasSize(1)); |
|
|
|
|
assertThat(result.get(0), is(notNullValue())); |
|
|
|
|
assertThat(result.get(0).dbRefProperty, is(notNullValue())); |
|
|
|
|
assertThat(result.get(0).dbRefProperty.field, is(sample.field)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static class DocumentWithDBRefCollection { |
|
|
|
|
|
|
|
|
|
@Id public String id; |
|
|
|
|
|