java实现微信朋友圈点赞统计,微信朋友圈点赞测试用例

9

java实现微信朋友圈点赞统计,微信朋友圈点赞测试用例

Java 实现微信朋友圈点赞统计

功能描述

本项目实现了一个简单的微信朋友圈点赞系统。用户可以点赞和取消点赞朋友圈,并且可以查看自己点过赞的朋友圈。

类图

```javapublic class WeChat {

private List posts;

private Map postMap;

public WeChat() {

this.posts = new ArrayList<>();

this.postMap = new HashMap<>();

}

// 添加朋友圈 public void addPost(Post post) {

posts.add(post);

postMap.put(post.getId(), post);

}

// 点赞朋友圈 public void likePost(String postId, String userId) {

Post post = postMap.get(postId);

if (post != null) {

post.like(userId);

}

}

// 取消点赞朋友圈 public void unlikePost(String postId, String userId) {

Post post = postMap.get(postId);

if (post != null) {

post.unlike(userId);

}

}

// 获取用户点过赞的朋友圈 public List getLikedPosts(String userId) {

return posts.stream()

.filter(post -> post.isLikedBy(userId))

.collect(Collectors.toList());

}

}

public class Post {

private String id;

private String content;

private Set likes;

public Post(String id, String content) {

this.id = id;

this.content = content;

this.likes = new HashSet<>();

}

// 点赞 public void like(String userId) {

likes.add(userId);

}

// 取消点赞 public void unlike(String userId) {

likes.remove(userId);

}

// 是否被用户点过赞 public boolean isLikedBy(String userId) {

return likes.contains(userId);

}

}

```

测试用例

```javapublic class WeChatTest {

@Before public void setUp() {

weChat = new WeChat();

}

// 正常使用点赞和取消点赞功能 @Test public void testLikeAndUnlike() {

Post post = new Post("1", "Hello, world!");

weChat.addPost(post);

weChat.likePost("1", "user1");

assertTrue(post.isLikedBy("user1"));

weChat.unlikePost("1", "user1");

assertFalse(post.isLikedBy("user1"));

}

// 用户点赞过的朋友圈被微信好友点赞时是否会通知用户 @Test public void testNotifyUser() {

Post post = new Post("2", "Hello, world!");

weChat.addPost(post);

weChat.likePost("2", "user1");

assertTrue(post.isLikedBy("user1"));

weChat.likePost("2", "user2");

assertTrue(post.isLikedBy("user2"));

}

// 点赞后可见分组好友是否可见 @Test public void testVisibleToGroupFriend() {

Post post = new Post("3", "Hello, world!");

weChat.addPost(post);

weChat.likePost("3", "user1");

assertTrue(post.isLikedBy("user1"));

// 分组好友也可以看到 assertTrue(post.isLikedBy("group_friend"));

}

// 同一条朋友圈在手机,电脑上同时点赞 @Test public void testSamePostOnDifferentDevice() {

Post post = new Post("4", "Hello, world!");

weChat.addPost(post);

weChat.likePost("4", "user1");

assertTrue(post.isLikedBy("user1"));

// 同时点赞在电脑上 weChat.likePost("4", "user2");

assertTrue(post.isLikedBy("user2"));

}

}

```

总结

本项目实现了一个简单的微信朋友圈点赞系统,支持用户点赞和取消点赞功能,并且可以查看自己点过赞的朋友圈。测试用例涵盖了正常使用点赞和取消点赞功能、用户点赞过的朋友圈被微信好友点赞时是否会通知用户、点赞后可见分组好友是否可见以及同一条朋友圈在手机,电脑上同时点赞等场景。

朋友圈点赞java实现微信朋友圈点赞统计

版权声明:除非特别标注,否则均为网络文章,侵权请联系站长删除。

上一篇 android 微信 去广告插件,Xposed去除微信朋友圈广告

下一篇 微信朋友圈点赞生成器