package com.bruce.common.model; import com.bruce.common.domain.model.RequestResult; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNull; class RequestResultStructureTests { @Test void dataConstructorShouldDefaultToSuccessCode() { RequestResult result = new RequestResult<>("payload"); assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); assertNull(result.getMessage()); assertEquals("payload", result.getData()); } @Test void successFactoryShouldBuildSuccessfulResult() { RequestResult result = RequestResult.success("payload"); assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); assertNull(result.getMessage()); assertEquals("payload", result.getData()); } @Test void successFactoryWithMessageShouldKeepCustomMessage() { RequestResult result = RequestResult.success("操作成功", "payload"); assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); assertEquals("操作成功", result.getMessage()); assertEquals("payload", result.getData()); } @Test void failFactoryShouldBuildFailureResult() { RequestResult result = RequestResult.fail("校验失败"); assertEquals(RequestResult.FAIL_CODE, result.getResultcode()); assertEquals("校验失败", result.getMessage()); assertNull(result.getData()); } @Test void failFactoryWithCustomCodeShouldKeepCustomCode() { RequestResult result = RequestResult.fail("VALIDATE_ERROR", "校验失败"); assertEquals("VALIDATE_ERROR", result.getResultcode()); assertEquals("校验失败", result.getMessage()); assertNull(result.getData()); } }