From c58032cf37c5d286aafbc73ff0f7280d4d81004b Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Wed, 15 Aug 2018 15:53:23 +0200 Subject: [PATCH] DATAMONGO-2055 - Polishing. Move test to UpdateMapperUnitTests. Original pull request: #600. --- .../core/convert/UpdateMapperUnitTests.java | 14 ++++++++++++++ .../data/mongodb/core/query/UpdateTests.java | 7 ------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/UpdateMapperUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/UpdateMapperUnitTests.java index 65f2820f5..3317491a8 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/UpdateMapperUnitTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/UpdateMapperUnitTests.java @@ -277,6 +277,20 @@ public class UpdateMapperUnitTests { assertThat(getAsDocument(push, "key")).containsKey("$each"); } + @Test // DATAMONGO-943, DATAMONGO-2055 + public void updatePushEachAtNegativePositionWorksCorrectly() { + + Update update = new Update().push("key").atPosition(-2).each(Arrays.asList("Arya", "Arry", "Weasel")); + + Document mappedObject = mapper.getMappedObject(update.getUpdateObject(), context.getPersistentEntity(Object.class)); + + Document push = getAsDocument(mappedObject, "$push"); + Document key = getAsDocument(push, "key"); + + assertThat(key.containsKey("$position")).isTrue(); + assertThat(key.get("$position")).isEqualTo(-2); + } + @Test // DATAMONGO-943 public void updatePushEachAtPositionWorksCorrectlyWhenGivenPositionFirst() { diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/query/UpdateTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/query/UpdateTests.java index f467bcc67..5939da5e8 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/query/UpdateTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/query/UpdateTests.java @@ -390,13 +390,6 @@ public class UpdateTests { .isEqualTo(new Document().append("$bit", new Document("key", new Document("xor", 10L)))); } - @Test // DATAMONGO-943, // DATAMONGO-2055 - public void pushShouldAllowNegativePosition() { - - assertThat(new Update().push("foo").atPosition(-1).each("booh").toString()).isEqualTo( - "{ \"$push\" : { \"foo\" : { \"$java\" : { \"$position\" : { \"$java\" : { \"$position\" : -1} }, \"$each\" : { \"$java\" : { \"$each\" : [ \"booh\"]} } } } } }"); - } - @Test // DATAMONGO-1346 public void registersMultiplePullAllClauses() {