注册登录,用户等级,社交,动态,新手任务

Change-Id: I1d3183526517fb3c0dab665e0e7547eefa5c9d76
diff --git a/src/test/java/com/example/myproject/controller/UserMessageControllerTest.java b/src/test/java/com/example/myproject/controller/UserMessageControllerTest.java
new file mode 100644
index 0000000..4fcbcc7
--- /dev/null
+++ b/src/test/java/com/example/myproject/controller/UserMessageControllerTest.java
@@ -0,0 +1,95 @@
+package com.example.myproject.controller;
+
+import com.example.myproject.service.UserMessageService;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.springframework.http.ResponseEntity;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.when;
+
+class UserMessageControllerTest {
+
+    @InjectMocks
+    private UserMessageController userMessageController;
+
+    @Mock
+    private UserMessageService userMessageService;
+
+    @BeforeEach
+    void setup() {
+        MockitoAnnotations.openMocks(this);
+    }
+
+    @Test
+    void testSendMessage() {
+        // 准备测试数据
+        Map<String, Object> params = new HashMap<>();
+        params.put("sender_id", 1L);
+        params.put("receiver_id", 2L);
+        params.put("content", "测试消息");
+
+        Map<String, Object> mockResponse = new HashMap<>();
+        mockResponse.put("status", "success");
+        mockResponse.put("message", "私信发送成功");
+        mockResponse.put("message_id", 100L);
+
+        // 模拟Service方法调用
+        when(userMessageService.sendMessage(1L, 2L, "测试消息")).thenReturn(mockResponse);
+
+        // 执行测试
+        ResponseEntity<Map<String, Object>> response = userMessageController.sendMessage(params);
+
+        // 验证结果
+        assertEquals(200, response.getStatusCodeValue());
+        assertEquals("success", response.getBody().get("status"));
+        assertEquals("私信发送成功", response.getBody().get("message"));
+        assertEquals(100L, response.getBody().get("message_id"));
+    }
+
+    @Test
+    void testGetUserMessages() {
+        // 准备测试数据
+        Long userId = 1L;
+
+        Map<String, Object> mockResponse = new HashMap<>();
+        mockResponse.put("status", "success");
+        mockResponse.put("messages", new HashMap<>());
+
+        // 模拟Service方法调用
+        when(userMessageService.getUserMessages(userId)).thenReturn(mockResponse);
+
+        // 执行测试
+        ResponseEntity<Map<String, Object>> response = userMessageController.getUserMessages(userId);
+
+        // 验证结果
+        assertEquals(200, response.getStatusCodeValue());
+        assertEquals("success", response.getBody().get("status"));
+    }
+
+    @Test
+    void testGetMessage() {
+        // 准备测试数据
+        Long messageId = 1L;
+
+        Map<String, Object> mockResponse = new HashMap<>();
+        mockResponse.put("status", "success");
+        mockResponse.put("message", new HashMap<>());
+
+        // 模拟Service方法调用
+        when(userMessageService.getMessage(messageId)).thenReturn(mockResponse);
+
+        // 执行测试
+        ResponseEntity<Map<String, Object>> response = userMessageController.getMessage(messageId);
+
+        // 验证结果
+        assertEquals(200, response.getStatusCodeValue());
+        assertEquals("success", response.getBody().get("status"));
+    }
+}
\ No newline at end of file