求助要资源帖子相关后端
Change-Id: I10e910360ed932d4d31abbfba7ee98ba6885a5dc
diff --git a/src/test/java/com/pt5/pthouduan/controller/RequestResourcesControllerTest.java b/src/test/java/com/pt5/pthouduan/controller/RequestResourcesControllerTest.java
new file mode 100644
index 0000000..322b4f9
--- /dev/null
+++ b/src/test/java/com/pt5/pthouduan/controller/RequestResourcesControllerTest.java
@@ -0,0 +1,157 @@
+package com.pt5.pthouduan.controller;
+
+import com.pt5.pthouduan.entity.request_resources;
+import com.pt5.pthouduan.service.RequestResourcesService;
+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 java.time.LocalDateTime;
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.*;
+import static org.mockito.Mockito.*;
+
+class RequestResourcesControllerTest {
+
+ @Mock
+ private RequestResourcesService requestResourcesService;
+
+ @InjectMocks
+ private RequestResourcesController requestResourcesController;
+
+ @BeforeEach
+ void setUp() {
+ MockitoAnnotations.openMocks(this);
+ }
+
+ @Test
+ void updateMoney_ShouldReturnTrue_WhenSuccess() {
+ when(requestResourcesService.updateMoney(1, 100)).thenReturn(true);
+
+ boolean result = requestResourcesController.updateMoney(1, 100);
+
+ assertTrue(result);
+ verify(requestResourcesService).updateMoney(1, 100);
+ }
+
+ @Test
+ void deleteRequest_ShouldReturnTrue_WhenSuccess() {
+ when(requestResourcesService.deleteRequest(1)).thenReturn(true);
+
+ boolean result = requestResourcesController.deleteRequest(1);
+
+ assertTrue(result);
+ verify(requestResourcesService).deleteRequest(1);
+ }
+
+ @Test
+ void findByName_ShouldReturnMatchingRequests() {
+ request_resources req = new request_resources();
+ req.setName("Urgent Help");
+
+ when(requestResourcesService.findByName("Urgent Help")).thenReturn(List.of(req));
+
+ List<request_resources> result = requestResourcesController.findByName("Urgent Help");
+
+ assertEquals(1, result.size());
+ assertEquals("Urgent Help", result.get(0).getName());
+ }
+
+ @Test
+ void findByUserid_ShouldReturnUserRequests() {
+ request_resources req = new request_resources();
+ req.setUserid(123L);
+
+ when(requestResourcesService.findByUserid(123L)).thenReturn(List.of(req));
+
+ List<request_resources> result = requestResourcesController.findByUserid(123L);
+
+ assertEquals(1, result.size());
+ assertEquals(123L, result.get(0).getUserid());
+ }
+
+ @Test
+ void getTotalMoneyByName_ShouldReturnCorrectSum() {
+ when(requestResourcesService.calculateTotalMoneyByName("Education")).thenReturn(500);
+
+ int total = requestResourcesController.getTotalMoneyByName("Education");
+
+ assertEquals(500, total);
+ }
+
+ @Test
+ void findByLoaduser_ShouldReturnLoaduserRequests() {
+ request_resources req = new request_resources();
+ req.setLoaduser(456L);
+
+ when(requestResourcesService.findByLoaduser(456L)).thenReturn(List.of(req));
+
+ List<request_resources> result = requestResourcesController.findByLoaduser(456L);
+
+ assertEquals(1, result.size());
+ assertEquals(456L, result.get(0).getLoaduser());
+ }
+
+ @Test
+ void updateLoaduserByName_ShouldReturnTrue_WhenSuccess() {
+ when(requestResourcesService.updateLoaduserByName("Medical", 789L)).thenReturn(true);
+
+ boolean result = requestResourcesController.updateLoaduserByName("Medical", 789L);
+
+ assertTrue(result);
+ }
+
+ @Test
+ void updateTorrentid_ShouldReturnTrue_WhenSuccess() {
+ when(requestResourcesService.updateTorrentid(1, 999L)).thenReturn(true);
+
+ boolean result = requestResourcesController.updateTorrentid(1, 999L);
+
+ assertTrue(result);
+ }
+
+ @Test
+ void getTorrentid_ShouldReturnCorrectValue() {
+ request_resources req = new request_resources();
+ req.setTorrentid(888L);
+
+ when(requestResourcesService.findByRequestid(1)).thenReturn(req);
+
+ Long result = requestResourcesController.getTorrentid(1);
+
+ assertEquals(888L, result);
+ }
+
+ @Test
+ void getInfoByRequestId_ShouldReturnInfoMap() {
+ request_resources req = new request_resources();
+ req.setMoney(200);
+ req.setLoaduser(101L);
+ req.setTorrentid(555L);
+
+ when(requestResourcesService.findByRequestid(1)).thenReturn(req);
+
+ var result = requestResourcesController.getInfoByRequestId(1);
+
+ assertEquals(200, result.get("money"));
+ assertEquals(101L, result.get("loaduser"));
+ assertEquals(555L, result.get("torrentid"));
+ }
+
+ @Test
+ void getAllRequests_ShouldReturnAllRequests() {
+ request_resources r1 = new request_resources();
+ r1.setRequestid(1);
+ request_resources r2 = new request_resources();
+ r2.setRequestid(2);
+
+ when(requestResourcesService.getAllRequests()).thenReturn(List.of(r1, r2));
+
+ List<request_resources> result = requestResourcesController.getAllRequests();
+
+ assertEquals(2, result.size());
+ }
+}