用户,分区,作品的增删改查,根据作者查所有作品的接口,根据用户查还有多少任务没做,帖子和评论的增删改查,并优化了测试文件的结构

Change-Id: I4266495b6465fcbdf5705f02a59d2ae9fa54cbda
diff --git a/src/test/java/edu/bjtu/groupone/backend/PostServiceTest.java b/src/test/java/edu/bjtu/groupone/backend/PostServiceTest.java
new file mode 100644
index 0000000..5426db8
--- /dev/null
+++ b/src/test/java/edu/bjtu/groupone/backend/PostServiceTest.java
@@ -0,0 +1,81 @@
+package edu.bjtu.groupone.backend;
+
+import edu.bjtu.groupone.backend.domain.entity.Post;
+import edu.bjtu.groupone.backend.mapper.PostMapper;
+import edu.bjtu.groupone.backend.service.impl.PostServiceImpl;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+import java.util.Arrays;
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.*;
+
+@ExtendWith(MockitoExtension.class)
+public class PostServiceTest {
+
+    @Mock
+    private PostMapper postMapper;
+
+    @InjectMocks
+    private PostServiceImpl postService;
+
+    private Post post;
+    private List<Post> posts;
+
+    @BeforeEach
+    void setUp() {
+        post = new Post(1L, 1, "测试帖子", "内容", "2023-06-15", 100);
+        posts = Arrays.asList(post);
+    }
+
+    @Test
+    void addPost() {
+        doNothing().when(postMapper).insertPost(any(Post.class));
+
+        postService.addPost(post);
+
+        verify(postMapper, times(1)).insertPost(post);
+    }
+
+    @Test
+    void deletePost() {
+        doNothing().when(postMapper).deletePost(1L);
+
+        postService.deletePost(1L);
+
+        verify(postMapper, times(1)).deletePost(1L);
+    }
+
+    @Test
+    void updatePost() {
+        doNothing().when(postMapper).updatePost(any(Post.class));
+
+        postService.updatePost(post);
+
+        verify(postMapper, times(1)).updatePost(post);
+    }
+
+    @Test
+    void getPostById() {
+        when(postMapper.selectPostById(1L)).thenReturn(post);
+
+        Post result = postService.getPostById(1L);
+
+        assertEquals(post, result);
+    }
+
+    @Test
+    void getAllPosts() {
+        when(postMapper.selectAllPosts()).thenReturn(posts);
+
+        List<Post> result = postService.getAllPosts();
+
+        assertEquals(posts, result);
+    }
+}
\ No newline at end of file