blob: f1cf6d4b2481cbec1682278a2e3e408eb6b64b5b [file] [log] [blame]
package edu.bjtu.groupone.backend;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import ch.qos.logback.classic.Logger;
import org.slf4j.LoggerFactory;
import edu.bjtu.groupone.backend.mapper.UserMapper;
import edu.bjtu.groupone.backend.domain.entity.User;
import edu.bjtu.groupone.backend.service.impl.UserServImpl;
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;
@ExtendWith(MockitoExtension.class)
public class UserControllerTest {
// 初始化 Logger,避免空指针
private static final Logger log = (Logger) LoggerFactory.getLogger(UserControllerTest.class);
@Mock
private UserMapper userMapper;
@InjectMocks
private UserServImpl userService;
@Test
public void testLogin() {
User loginUser = new User();
loginUser.setIdentificationNumber(123456);
loginUser.setPassword("password123");
User expected = new User();
expected.setUsername("expectedUsername");
// 模拟 mapper 返回
when(userMapper.login(loginUser)).thenReturn(expected);
// 调用 service 并断言
User result = userService.login(loginUser);
assertThat(result).isNotNull();
assertThat(result.getUsername()).isEqualTo("expectedUsername");
verify(userMapper, times(1)).login(loginUser);
}
}