build: user crud tests
This commit is contained in:
parent
74c20efdd2
commit
c14a886873
|
@ -5,6 +5,7 @@ import io.metersphere.sdk.dto.UserDTO;
|
||||||
import io.metersphere.system.domain.User;
|
import io.metersphere.system.domain.User;
|
||||||
import io.metersphere.system.service.UserService;
|
import io.metersphere.system.service.UserService;
|
||||||
import io.metersphere.validation.groups.Created;
|
import io.metersphere.validation.groups.Created;
|
||||||
|
import io.metersphere.validation.groups.Updated;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
@ -29,7 +30,12 @@ public class UserController {
|
||||||
|
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
public boolean addUser(@Validated({Created.class}) @RequestBody UserDTO user) {
|
public boolean addUser(@Validated({Created.class}) @RequestBody UserDTO user) {
|
||||||
return userService.save(user);
|
return userService.add(user);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/update")
|
||||||
|
public boolean updateUser(@Validated({Updated.class}) @RequestBody UserDTO user) {
|
||||||
|
return userService.update(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/batch-add2")
|
@PostMapping("/batch-add2")
|
||||||
|
|
|
@ -9,6 +9,7 @@ import io.metersphere.system.domain.UserExtend;
|
||||||
import io.metersphere.system.mapper.UserExtendMapper;
|
import io.metersphere.system.mapper.UserExtendMapper;
|
||||||
import io.metersphere.system.mapper.UserMapper;
|
import io.metersphere.system.mapper.UserMapper;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.ibatis.session.SqlSession;
|
import org.apache.ibatis.session.SqlSession;
|
||||||
import org.apache.ibatis.session.SqlSessionFactory;
|
import org.apache.ibatis.session.SqlSessionFactory;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
@ -28,7 +29,11 @@ public class UserService {
|
||||||
@Resource
|
@Resource
|
||||||
private SqlSessionFactory sqlSessionFactory;
|
private SqlSessionFactory sqlSessionFactory;
|
||||||
|
|
||||||
public boolean save(UserDTO entity) {
|
public boolean add(UserDTO entity) {
|
||||||
|
// todo 后台直接获取在线用户
|
||||||
|
entity.setCreateUser("admin");
|
||||||
|
entity.setCreateTime(System.currentTimeMillis());
|
||||||
|
entity.setUpdateTime(System.currentTimeMillis());
|
||||||
userMapper.insert(entity);
|
userMapper.insert(entity);
|
||||||
|
|
||||||
UserExtend userExtend = new UserExtend();
|
UserExtend userExtend = new UserExtend();
|
||||||
|
@ -37,6 +42,20 @@ public class UserService {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean update(UserDTO entity) {
|
||||||
|
entity.setCreateUser(null);
|
||||||
|
entity.setCreateTime(null);
|
||||||
|
entity.setUpdateTime(System.currentTimeMillis());
|
||||||
|
userMapper.updateByPrimaryKeySelective(entity);
|
||||||
|
// 扩展属性按需更新
|
||||||
|
if (entity.getPlatformInfo() != null || StringUtils.isNotEmpty(entity.getSeleniumServer())) {
|
||||||
|
UserExtend userExtend = new UserExtend();
|
||||||
|
BeanUtils.copyBean(userExtend, entity);
|
||||||
|
userExtendMapper.updateByPrimaryKeySelective(userExtend);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public UserDTO getById(String id) {
|
public UserDTO getById(String id) {
|
||||||
return baseUserMapper.selectById(id);
|
return baseUserMapper.selectById(id);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,12 +32,9 @@ public class UserControllerTests {
|
||||||
UserDTO user = new UserDTO();
|
UserDTO user = new UserDTO();
|
||||||
user.setId("admin");
|
user.setId("admin");
|
||||||
user.setName("admin");
|
user.setName("admin");
|
||||||
user.setCreateUser("system");
|
|
||||||
user.setSource("LOCAL");
|
user.setSource("LOCAL");
|
||||||
user.setEmail("bin@fit2cloud.com");
|
user.setEmail("bin@fit2cloud.com");
|
||||||
user.setStatus("enabled");
|
user.setStatus("enabled");
|
||||||
user.setCreateTime(System.currentTimeMillis());
|
|
||||||
user.setUpdateTime(System.currentTimeMillis());
|
|
||||||
|
|
||||||
user.setSeleniumServer("http://localhost:4444");
|
user.setSeleniumServer("http://localhost:4444");
|
||||||
|
|
||||||
|
@ -53,8 +50,6 @@ public class UserControllerTests {
|
||||||
public void testAddUserFailed() throws Exception {
|
public void testAddUserFailed() throws Exception {
|
||||||
UserDTO user = new UserDTO();
|
UserDTO user = new UserDTO();
|
||||||
user.setId("admin2");
|
user.setId("admin2");
|
||||||
user.setCreateTime(System.currentTimeMillis());
|
|
||||||
user.setUpdateTime(System.currentTimeMillis());
|
|
||||||
|
|
||||||
user.setSeleniumServer("http://localhost:4444");
|
user.setSeleniumServer("http://localhost:4444");
|
||||||
|
|
||||||
|
@ -74,13 +69,30 @@ public class UserControllerTests {
|
||||||
.andExpect(jsonPath("$.data.id").value("admin"));
|
.andExpect(jsonPath("$.data.id").value("admin"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(4)
|
@Order(4)
|
||||||
|
public void testUpdateUser() throws Exception {
|
||||||
|
UserDTO user = new UserDTO();
|
||||||
|
user.setId("admin");
|
||||||
|
user.setName("Administrator");
|
||||||
|
|
||||||
|
|
||||||
|
mockMvc.perform(MockMvcRequestBuilders.post("/user/update")
|
||||||
|
.content(JSON.toJSONString(user))
|
||||||
|
.contentType(MediaType.APPLICATION_JSON))
|
||||||
|
.andExpect(status().isOk())
|
||||||
|
.andExpect(content().contentType(MediaType.APPLICATION_JSON));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Order(5)
|
||||||
public void testSelectAll() throws Exception {
|
public void testSelectAll() throws Exception {
|
||||||
mockMvc.perform(MockMvcRequestBuilders.get("/user/list-all"))
|
mockMvc.perform(MockMvcRequestBuilders.get("/user/list-all"))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(content().contentType(MediaType.APPLICATION_JSON))
|
.andExpect(content().contentType(MediaType.APPLICATION_JSON))
|
||||||
.andExpect(jsonPath("$.data[0].name").value("admin"));
|
.andExpect(jsonPath("$.data[0].id").value("admin"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -92,12 +104,9 @@ public class UserControllerTests {
|
||||||
User user = new User();
|
User user = new User();
|
||||||
user.setId("batch2_" + i);
|
user.setId("batch2_" + i);
|
||||||
user.setName("batch2_" + i);
|
user.setName("batch2_" + i);
|
||||||
user.setCreateUser("system");
|
|
||||||
user.setSource("LOCAL");
|
user.setSource("LOCAL");
|
||||||
user.setEmail("bin@fit2cloud.com");
|
user.setEmail("bin@fit2cloud.com");
|
||||||
user.setStatus("enabled");
|
user.setStatus("enabled");
|
||||||
user.setCreateTime(System.currentTimeMillis());
|
|
||||||
user.setUpdateTime(System.currentTimeMillis());
|
|
||||||
users.add(user);
|
users.add(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -116,12 +125,9 @@ public class UserControllerTests {
|
||||||
User user = new User();
|
User user = new User();
|
||||||
user.setId("batch3_" + i);
|
user.setId("batch3_" + i);
|
||||||
user.setName("batch3_" + i);
|
user.setName("batch3_" + i);
|
||||||
user.setCreateUser("system");
|
|
||||||
user.setSource("LOCAL");
|
user.setSource("LOCAL");
|
||||||
user.setEmail("bin@fit2cloud.com");
|
user.setEmail("bin@fit2cloud.com");
|
||||||
user.setStatus("enabled");
|
user.setStatus("enabled");
|
||||||
user.setCreateTime(System.currentTimeMillis());
|
|
||||||
user.setUpdateTime(System.currentTimeMillis());
|
|
||||||
users.add(user);
|
users.add(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue