Compare commits

...

2 Commits

Author SHA1 Message Date
Christoph Strobl
35214b9dd5 SO-60250019 - Add test. 2020-02-17 10:01:08 +01:00
Christoph Strobl
6013bc8687 SO-60250019 - Prepare issue branch. 2020-02-17 09:56:16 +01:00
5 changed files with 46 additions and 4 deletions

View File

@@ -5,7 +5,7 @@
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb-parent</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0.SO-60250019-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Spring Data MongoDB</name>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb-parent</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0.SO-60250019-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

View File

@@ -14,7 +14,7 @@
<parent>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb-parent</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0.SO-60250019-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

View File

@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb-parent</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0.SO-60250019-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

View File

@@ -4272,4 +4272,46 @@ public class MongoTemplateTests {
String value;
}
@Data
static class UserActivity {
String id;
String userId;
Likes likes;
}
static class Likes {
List<Video> videos;
}
static class Video {
String id;
String title;
Video(String id, String title) {
this.id = id;
this.title = title;
}
}
@Test
public void removeVideoLike() {
template.dropCollection(UserActivity.class);
UserActivity userActivity = new UserActivity();
userActivity.userId = "123";
userActivity.likes = new Likes();
userActivity.likes.videos = new ArrayList<>();
userActivity.likes.videos.add(new Video("abc", "test"));
template.save(userActivity);
Query queryUser = Query.query( Criteria.where("userId").is("123") );
Query queryVideo = Query.query( Criteria.where("id").is("abc") );
Update update = new Update().pull("likes.videos", queryVideo );
UpdateResult result = template.updateFirst(queryUser, update, UserActivity.class);
assertThat(result.getModifiedCount()).isOne();
}
}