GlobalExceptionHandlerTest.java 781 Bytes
package com.xly.erp.common.exception;

import static org.assertj.core.api.Assertions.assertThat;

import com.xly.erp.common.response.Result;
import com.xly.erp.common.response.ResultCode;
import org.junit.jupiter.api.Test;

/**
 * REQ-USR-001 T2:全局异常处理器把 BusinessException 转为统一 Result。
 */
class GlobalExceptionHandlerTest {

    private final GlobalExceptionHandler handler = new GlobalExceptionHandler();

    @Test
    void businessExceptionMapsToResult() {
        BusinessException ex = new BusinessException(ResultCode.USERNAME_EXISTS, "用户名已存在");
        Result<Void> r = handler.handleBusinessException(ex);
        assertThat(r.getCode()).isEqualTo(40901);
        assertThat(r.getMessage()).isEqualTo("用户名已存在");
    }
}