From aa06d520df1ba9f942bb2918987f896d0175fdd8 Mon Sep 17 00:00:00 2001 From: Christoph Strobl Date: Fri, 9 May 2014 08:22:55 +0200 Subject: [PATCH] DATAMONGO-647 - Added test case to show that field names are mapped correctly. Additional test added to check if the issue has truly been resolved by DATAMONGO-888. Original pull request: #181. Related pull Request: #162. Related ticket: DATAMONGO-888. --- .../mongodb/core/convert/QueryMapperUnitTests.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/QueryMapperUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/QueryMapperUnitTests.java index e424f7b89..67f0c3a13 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/QueryMapperUnitTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/QueryMapperUnitTests.java @@ -34,6 +34,8 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; import org.springframework.data.annotation.Id; +import org.springframework.data.domain.Sort; +import org.springframework.data.domain.Sort.Direction; import org.springframework.data.mongodb.MongoDbFactory; import org.springframework.data.mongodb.core.DBObjectTestUtils; import org.springframework.data.mongodb.core.Person; @@ -49,6 +51,7 @@ import org.springframework.data.mongodb.core.query.Query; import com.mongodb.BasicDBList; import com.mongodb.BasicDBObject; +import com.mongodb.BasicDBObjectBuilder; import com.mongodb.DBObject; import com.mongodb.QueryBuilder; @@ -586,6 +589,17 @@ public class QueryMapperUnitTests { assertThat(dbo.toString(), equalTo("{ \"embedded\" : { \"$in\" : [ { \"_id\" : \"1\"} , { \"_id\" : \"2\"}]}}")); } + /** + * @see DATAMONGO-647 + */ + @Test + public void customizedFieldNameShouldBeMappedCorrectlyWhenApplyingSort() { + + Query query = query(where("field").is("bar")).with(new Sort(Direction.DESC, "field")); + DBObject dbo = mapper.getMappedObject(query.getSortObject(), context.getPersistentEntity(CustomizedField.class)); + assertThat(dbo, equalTo(new BasicDBObjectBuilder().add("foo", -1).get())); + } + @Document public class Foo { @Id private ObjectId id;