refactor(接口测试): 增加拖拽接口到别的模块
This commit is contained in:
parent
c65c624000
commit
e47af339d7
|
@ -369,7 +369,7 @@ api_definition_custom_field.field_id.not_blank=自定义字段ID不能为空
|
||||||
api_module.not.exist=模块不存在
|
api_module.not.exist=模块不存在
|
||||||
permission.api.name=接口测试
|
permission.api.name=接口测试
|
||||||
permission.api_mock.name=接口 MOCK
|
permission.api_mock.name=接口 MOCK
|
||||||
api_debug_exist=接口已存在
|
api_debug_exist=请求已存在
|
||||||
follow=关注
|
follow=关注
|
||||||
unfollow=取消关注
|
unfollow=取消关注
|
||||||
api_definition_exist=接口已存在
|
api_definition_exist=接口已存在
|
||||||
|
|
|
@ -381,7 +381,7 @@ api_definition_custom_field.field_id.not_blank=Field ID cannot be empty
|
||||||
api_module.not.exist=The module does not exist
|
api_module.not.exist=The module does not exist
|
||||||
permission.api.name=API Test
|
permission.api.name=API Test
|
||||||
permission.api_mock.name=API MOCK
|
permission.api_mock.name=API MOCK
|
||||||
api_debug_exist=The API already exists
|
api_debug_exist=The Request already exists
|
||||||
follow=Follow
|
follow=Follow
|
||||||
unfollow=Unfollow
|
unfollow=Unfollow
|
||||||
api_definition_exist=The API already exists
|
api_definition_exist=The API already exists
|
||||||
|
|
|
@ -349,7 +349,7 @@ api_definition_custom_field.field_id.not_blank=自定义字段ID不能为空
|
||||||
api_module.not.exist=模块不存在
|
api_module.not.exist=模块不存在
|
||||||
permission.api.name=接口测试
|
permission.api.name=接口测试
|
||||||
permission.api_mock.name=接口 MOCK
|
permission.api_mock.name=接口 MOCK
|
||||||
api_debug_exist=接口已存在
|
api_debug_exist=请求已存在
|
||||||
follow=关注
|
follow=关注
|
||||||
unfollow=取消关注
|
unfollow=取消关注
|
||||||
api_definition_exist=接口已存在
|
api_definition_exist=接口已存在
|
||||||
|
|
|
@ -350,7 +350,7 @@ api_definition_custom_field.field_id.not_blank=自定義字段ID不能爲空
|
||||||
api_module.not.exist=模塊不存在
|
api_module.not.exist=模塊不存在
|
||||||
permission.api.name=接口測試
|
permission.api.name=接口測試
|
||||||
permission.api_mock.name=接口 MOCK
|
permission.api_mock.name=接口 MOCK
|
||||||
api_debug_exist=接口已存在
|
api_debug_exist=请求已存在
|
||||||
follow=关注
|
follow=关注
|
||||||
unfollow=取消关注
|
unfollow=取消关注
|
||||||
api_definition_exist=接口已存在
|
api_definition_exist=接口已存在
|
||||||
|
|
|
@ -2,11 +2,13 @@ package io.metersphere.api.controller.debug;
|
||||||
|
|
||||||
import io.metersphere.api.domain.ApiDebug;
|
import io.metersphere.api.domain.ApiDebug;
|
||||||
import io.metersphere.api.dto.debug.*;
|
import io.metersphere.api.dto.debug.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.service.debug.ApiDebugLogService;
|
import io.metersphere.api.service.debug.ApiDebugLogService;
|
||||||
import io.metersphere.api.service.debug.ApiDebugService;
|
import io.metersphere.api.service.debug.ApiDebugService;
|
||||||
import io.metersphere.sdk.constants.PermissionConstants;
|
import io.metersphere.sdk.constants.PermissionConstants;
|
||||||
import io.metersphere.system.log.annotation.Log;
|
import io.metersphere.system.log.annotation.Log;
|
||||||
import io.metersphere.system.log.constants.OperationLogType;
|
import io.metersphere.system.log.constants.OperationLogType;
|
||||||
|
import io.metersphere.system.security.CheckOwner;
|
||||||
import io.metersphere.system.utils.SessionUtils;
|
import io.metersphere.system.utils.SessionUtils;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
@ -82,4 +84,13 @@ public class ApiDebugController {
|
||||||
public String debug(@Validated @RequestBody ApiDebugRunRequest request) {
|
public String debug(@Validated @RequestBody ApiDebugRunRequest request) {
|
||||||
return apiDebugService.debug(request);
|
return apiDebugService.debug(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/edit/pos")
|
||||||
|
@Operation(summary = "接口调试-拖拽排序")
|
||||||
|
@RequiresPermissions(PermissionConstants.PROJECT_API_DEBUG_UPDATE)
|
||||||
|
@Log(type = OperationLogType.UPDATE, expression = "#msClass.moveLog(#request.getTargetId())", msClass = ApiDebugLogService.class)
|
||||||
|
@CheckOwner(resourceId = "#request.getTargetId()", resourceType = "api_debug")
|
||||||
|
public void editPos(@Validated @RequestBody ApiEditPosRequest request) {
|
||||||
|
apiDebugService.editPos(request, SessionUtils.getUserId());
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -4,6 +4,7 @@ import com.github.pagehelper.Page;
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import io.metersphere.api.domain.ApiDefinition;
|
import io.metersphere.api.domain.ApiDefinition;
|
||||||
import io.metersphere.api.dto.definition.*;
|
import io.metersphere.api.dto.definition.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.dto.request.ImportRequest;
|
import io.metersphere.api.dto.request.ImportRequest;
|
||||||
import io.metersphere.api.service.definition.ApiDefinitionLogService;
|
import io.metersphere.api.service.definition.ApiDefinitionLogService;
|
||||||
import io.metersphere.api.service.definition.ApiDefinitionNoticeService;
|
import io.metersphere.api.service.definition.ApiDefinitionNoticeService;
|
||||||
|
@ -12,7 +13,6 @@ import io.metersphere.sdk.constants.PermissionConstants;
|
||||||
import io.metersphere.system.dto.OperationHistoryDTO;
|
import io.metersphere.system.dto.OperationHistoryDTO;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
||||||
import io.metersphere.system.dto.sdk.request.PosRequest;
|
|
||||||
import io.metersphere.system.log.annotation.Log;
|
import io.metersphere.system.log.annotation.Log;
|
||||||
import io.metersphere.system.log.constants.OperationLogType;
|
import io.metersphere.system.log.constants.OperationLogType;
|
||||||
import io.metersphere.system.notice.annotation.SendNotice;
|
import io.metersphere.system.notice.annotation.SendNotice;
|
||||||
|
@ -239,9 +239,9 @@ public class ApiDefinitionController {
|
||||||
@PostMapping("/edit/pos")
|
@PostMapping("/edit/pos")
|
||||||
@Operation(summary = "接口测试-接口管理-接口-拖拽排序")
|
@Operation(summary = "接口测试-接口管理-接口-拖拽排序")
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_API_DEFINITION_UPDATE)
|
@RequiresPermissions(PermissionConstants.PROJECT_API_DEFINITION_UPDATE)
|
||||||
public void editPos(@Validated @RequestBody PosRequest request) {
|
@Log(type = OperationLogType.UPDATE, expression = "#msClass.moveLog(#request.getTargetId())", msClass = ApiDefinitionLogService.class)
|
||||||
apiDefinitionService.editPos(request);
|
@CheckOwner(resourceId = "#request.getTargetId()", resourceType = "api_definition")
|
||||||
|
public void editPos(@Validated @RequestBody ApiEditPosRequest request) {
|
||||||
|
apiDefinitionService.editPos(request, SessionUtils.getUserId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
package io.metersphere.api.dto.request;
|
||||||
|
|
||||||
|
import io.metersphere.system.dto.sdk.request.PosRequest;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class ApiEditPosRequest extends PosRequest implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@Schema(description = "模块id", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
@NotBlank(message = "{api_definition.module_id.not_blank}")
|
||||||
|
private String moduleId;
|
||||||
|
|
||||||
|
}
|
|
@ -17,4 +17,8 @@ public interface ExtApiDebugMapper {
|
||||||
|
|
||||||
Long getPos(@Param("userId") String userId);
|
Long getPos(@Param("userId") String userId);
|
||||||
|
|
||||||
|
Long getPrePos(@Param("projectId") String projectId, @Param("basePos") Long basePos);
|
||||||
|
|
||||||
|
Long getLastPos(@Param("projectId") String projectId, @Param("basePos") Long basePos);
|
||||||
|
|
||||||
}
|
}
|
|
@ -17,4 +17,20 @@
|
||||||
ORDER BY pos DESC
|
ORDER BY pos DESC
|
||||||
LIMIT 1;
|
LIMIT 1;
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getPrePos" resultType="java.lang.Long">
|
||||||
|
select `pos` from api_debug where project_id = #{projectId}
|
||||||
|
<if test="basePos != null">
|
||||||
|
and `pos` < #{basePos}
|
||||||
|
</if>
|
||||||
|
order by `pos` desc limit 1;
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="getLastPos" resultType="java.lang.Long">
|
||||||
|
select `pos` from api_debug where project_id = #{projectId}
|
||||||
|
<if test="basePos != null">
|
||||||
|
and `pos` > #{basePos}
|
||||||
|
</if>
|
||||||
|
order by `pos` desc limit 1;
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
|
@ -11,6 +11,7 @@ import io.metersphere.system.log.dto.LogDTO;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author jianxing
|
* @author jianxing
|
||||||
* @date : 2023-11-6
|
* @date : 2023-11-6
|
||||||
|
@ -65,4 +66,18 @@ public class ApiDebugLogService {
|
||||||
dto.setOriginalValue(JSON.toJSONBytes(apiDebug));
|
dto.setOriginalValue(JSON.toJSONBytes(apiDebug));
|
||||||
return dto;
|
return dto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public LogDTO moveLog(String id) {
|
||||||
|
ApiDebug apiDebug = apiDebugService.get(id);
|
||||||
|
LogDTO dto = new LogDTO(
|
||||||
|
OperationLogConstants.SYSTEM,
|
||||||
|
OperationLogConstants.SYSTEM,
|
||||||
|
apiDebug.getId(),
|
||||||
|
null,
|
||||||
|
OperationLogType.UPDATE.name(),
|
||||||
|
OperationLogModule.API_DEBUG,
|
||||||
|
apiDebug.getName());
|
||||||
|
dto.setOriginalValue(JSON.toJSONBytes(apiDebug));
|
||||||
|
return dto;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -4,10 +4,13 @@ import io.metersphere.api.constants.ApiResourceType;
|
||||||
import io.metersphere.api.domain.ApiDebug;
|
import io.metersphere.api.domain.ApiDebug;
|
||||||
import io.metersphere.api.domain.ApiDebugBlob;
|
import io.metersphere.api.domain.ApiDebugBlob;
|
||||||
import io.metersphere.api.domain.ApiDebugExample;
|
import io.metersphere.api.domain.ApiDebugExample;
|
||||||
|
import io.metersphere.api.domain.ApiDebugModule;
|
||||||
import io.metersphere.api.dto.ApiParamConfig;
|
import io.metersphere.api.dto.ApiParamConfig;
|
||||||
import io.metersphere.api.dto.debug.*;
|
import io.metersphere.api.dto.debug.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.mapper.ApiDebugBlobMapper;
|
import io.metersphere.api.mapper.ApiDebugBlobMapper;
|
||||||
import io.metersphere.api.mapper.ApiDebugMapper;
|
import io.metersphere.api.mapper.ApiDebugMapper;
|
||||||
|
import io.metersphere.api.mapper.ApiDebugModuleMapper;
|
||||||
import io.metersphere.api.mapper.ExtApiDebugMapper;
|
import io.metersphere.api.mapper.ExtApiDebugMapper;
|
||||||
import io.metersphere.api.service.ApiExecuteService;
|
import io.metersphere.api.service.ApiExecuteService;
|
||||||
import io.metersphere.api.service.ApiFileResourceService;
|
import io.metersphere.api.service.ApiFileResourceService;
|
||||||
|
@ -53,6 +56,8 @@ public class ApiDebugService {
|
||||||
private ApiExecuteService apiExecuteService;
|
private ApiExecuteService apiExecuteService;
|
||||||
@Resource
|
@Resource
|
||||||
private ApiPluginService apiPluginService;
|
private ApiPluginService apiPluginService;
|
||||||
|
@Resource
|
||||||
|
private ApiDebugModuleMapper apiDebugModuleMapper;
|
||||||
|
|
||||||
public static final Long ORDER_STEP = 5000L;
|
public static final Long ORDER_STEP = 5000L;
|
||||||
|
|
||||||
|
@ -209,4 +214,32 @@ public class ApiDebugService {
|
||||||
return runRequest.getReportId();
|
return runRequest.getReportId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void checkModuleExist(String moduleId) {
|
||||||
|
if (StringUtils.equals(moduleId, "root")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ApiDebugModule apiDebugModule = apiDebugModuleMapper.selectByPrimaryKey(moduleId);
|
||||||
|
if (apiDebugModule == null) {
|
||||||
|
throw new MSException("module.not.exist");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void editPos(ApiEditPosRequest request, String userId) {
|
||||||
|
ApiDebug apiDebug = checkResourceExist(request.getTargetId());
|
||||||
|
checkModuleExist(request.getModuleId());
|
||||||
|
apiDebug.setModuleId(request.getModuleId());
|
||||||
|
checkUpdateExist(apiDebug, apiDebug);
|
||||||
|
apiDebug.setUpdateUser(userId);
|
||||||
|
apiDebug.setUpdateTime(System.currentTimeMillis());
|
||||||
|
apiDebugMapper.updateByPrimaryKeySelective(apiDebug);
|
||||||
|
if (StringUtils.equals(request.getTargetId(), request.getMoveId())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ServiceUtils.updatePosField(request,
|
||||||
|
ApiDebug.class,
|
||||||
|
apiDebugMapper::selectByPrimaryKey,
|
||||||
|
extApiDebugMapper::getPrePos,
|
||||||
|
extApiDebugMapper::getLastPos,
|
||||||
|
apiDebugMapper::updateByPrimaryKeySelective);
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -339,5 +339,20 @@ public class ApiDefinitionLogService {
|
||||||
return dto.getId();
|
return dto.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public LogDTO moveLog(String id) {
|
||||||
|
ApiDefinitionDTO apiDefinitionDTO = getOriginalValue(id);
|
||||||
|
Project project = projectMapper.selectByPrimaryKey(apiDefinitionDTO.getProjectId());
|
||||||
|
LogDTO dto = new LogDTO(
|
||||||
|
apiDefinitionDTO.getProjectId(),
|
||||||
|
project.getOrganizationId(),
|
||||||
|
apiDefinitionDTO.getId(),
|
||||||
|
null,
|
||||||
|
OperationLogType.UPDATE.name(),
|
||||||
|
OperationLogModule.API_DEFINITION,
|
||||||
|
apiDefinitionDTO.getName());
|
||||||
|
dto.setOriginalValue(JSON.toJSONBytes(apiDefinitionDTO));
|
||||||
|
return dto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@ import io.metersphere.api.dto.ApiResourceModuleInfo;
|
||||||
import io.metersphere.api.dto.converter.ApiDefinitionImport;
|
import io.metersphere.api.dto.converter.ApiDefinitionImport;
|
||||||
import io.metersphere.api.dto.debug.ApiFileResourceUpdateRequest;
|
import io.metersphere.api.dto.debug.ApiFileResourceUpdateRequest;
|
||||||
import io.metersphere.api.dto.definition.*;
|
import io.metersphere.api.dto.definition.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.dto.request.ImportRequest;
|
import io.metersphere.api.dto.request.ImportRequest;
|
||||||
import io.metersphere.api.mapper.*;
|
import io.metersphere.api.mapper.*;
|
||||||
import io.metersphere.api.parser.ImportParser;
|
import io.metersphere.api.parser.ImportParser;
|
||||||
|
@ -29,7 +30,6 @@ import io.metersphere.system.dto.OperationHistoryDTO;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
||||||
import io.metersphere.system.dto.sdk.SessionUser;
|
import io.metersphere.system.dto.sdk.SessionUser;
|
||||||
import io.metersphere.system.dto.sdk.request.PosRequest;
|
|
||||||
import io.metersphere.system.dto.table.TableBatchProcessDTO;
|
import io.metersphere.system.dto.table.TableBatchProcessDTO;
|
||||||
import io.metersphere.system.log.constants.OperationLogModule;
|
import io.metersphere.system.log.constants.OperationLogModule;
|
||||||
import io.metersphere.system.service.OperationHistoryService;
|
import io.metersphere.system.service.OperationHistoryService;
|
||||||
|
@ -1004,12 +1004,22 @@ public class ApiDefinitionService {
|
||||||
return apiDefinitionBlobMapper.selectByExampleWithBLOBs(apiDefinitionBlobExample);
|
return apiDefinitionBlobMapper.selectByExampleWithBLOBs(apiDefinitionBlobExample);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void editPos(PosRequest request) {
|
public void editPos(ApiEditPosRequest request, String userId) {
|
||||||
|
ApiDefinition apiDefinition = checkApiDefinition(request.getTargetId());
|
||||||
|
checkModuleExist(request.getModuleId());
|
||||||
|
apiDefinition.setModuleId(request.getModuleId());
|
||||||
|
checkUpdateExist(apiDefinition);
|
||||||
|
apiDefinition.setUpdateTime(System.currentTimeMillis());
|
||||||
|
apiDefinition.setUpdateUser(userId);
|
||||||
|
apiDefinitionMapper.updateByPrimaryKeySelective(apiDefinition);
|
||||||
|
if (StringUtils.equals(request.getTargetId(), request.getMoveId())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
ServiceUtils.updatePosField(request,
|
ServiceUtils.updatePosField(request,
|
||||||
ApiDefinition.class,
|
ApiDefinition.class,
|
||||||
apiDefinitionMapper::selectByPrimaryKey,
|
apiDefinitionMapper::selectByPrimaryKey,
|
||||||
extApiDefinitionMapper::getPrePos,
|
extApiDefinitionMapper::getPrePos,
|
||||||
extApiTestCaseMapper::getLastPos,
|
extApiDefinitionMapper::getLastPos,
|
||||||
apiDefinitionMapper::updateByPrimaryKeySelective);
|
apiDefinitionMapper::updateByPrimaryKeySelective);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1029,4 +1039,14 @@ public class ApiDefinitionService {
|
||||||
public List<ApiResourceModuleInfo> getModuleInfoByIds(List<String> apiIds) {
|
public List<ApiResourceModuleInfo> getModuleInfoByIds(List<String> apiIds) {
|
||||||
return extApiDefinitionMapper.getModuleInfoByIds(apiIds);
|
return extApiDefinitionMapper.getModuleInfoByIds(apiIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void checkModuleExist(String moduleId) {
|
||||||
|
if (StringUtils.equals(moduleId, "root")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ApiDefinitionModule apiDefinitionModule = apiDefinitionModuleMapper.selectByPrimaryKey(moduleId);
|
||||||
|
if (apiDefinitionModule == null) {
|
||||||
|
throw new MSException("module.not.exist");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@ import io.metersphere.api.domain.ApiDebugBlob;
|
||||||
import io.metersphere.api.domain.ApiFileResource;
|
import io.metersphere.api.domain.ApiFileResource;
|
||||||
import io.metersphere.api.dto.assertion.MsAssertionConfig;
|
import io.metersphere.api.dto.assertion.MsAssertionConfig;
|
||||||
import io.metersphere.api.dto.debug.*;
|
import io.metersphere.api.dto.debug.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.dto.request.MsCommonElement;
|
import io.metersphere.api.dto.request.MsCommonElement;
|
||||||
import io.metersphere.api.dto.request.http.MsHTTPElement;
|
import io.metersphere.api.dto.request.http.MsHTTPElement;
|
||||||
import io.metersphere.api.dto.request.http.RestParam;
|
import io.metersphere.api.dto.request.http.RestParam;
|
||||||
|
@ -53,6 +54,7 @@ import java.util.List;
|
||||||
|
|
||||||
import static io.metersphere.api.controller.result.ApiResultCode.API_DEBUG_EXIST;
|
import static io.metersphere.api.controller.result.ApiResultCode.API_DEBUG_EXIST;
|
||||||
import static io.metersphere.system.controller.handler.result.MsHttpResultCode.NOT_FOUND;
|
import static io.metersphere.system.controller.handler.result.MsHttpResultCode.NOT_FOUND;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author jianxing
|
* @author jianxing
|
||||||
|
@ -359,6 +361,29 @@ public class ApiDebugControllerTests extends BaseTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(6)
|
@Order(6)
|
||||||
|
public void move() throws Exception {
|
||||||
|
ApiEditPosRequest request = new ApiEditPosRequest();
|
||||||
|
request.setTargetId(addApiDebug.getId());
|
||||||
|
request.setMoveId(addApiDebug.getId());
|
||||||
|
request.setProjectId(DEFAULT_PROJECT_ID);
|
||||||
|
request.setModuleId("root");
|
||||||
|
request.setMoveMode("AFTER");
|
||||||
|
requestPost("edit/pos", request).andExpect(status().isOk());
|
||||||
|
// @@请求成功
|
||||||
|
request.setMoveId(anotherAddApiDebug.getId());
|
||||||
|
this.requestPostWithOk("edit/pos", request);
|
||||||
|
// 校验请求成功数据
|
||||||
|
ApiDebug apiDebug = apiDebugMapper.selectByPrimaryKey(addApiDebug.getId());
|
||||||
|
Assertions.assertEquals(apiDebug.getModuleId(), "root");
|
||||||
|
request.setModuleId("def");
|
||||||
|
requestPost("edit/pos", request).andExpect(status().is5xxServerError());
|
||||||
|
request.setModuleId("root");
|
||||||
|
// @@校验权限
|
||||||
|
requestPostPermissionTest(PermissionConstants.PROJECT_API_DEBUG_UPDATE, "edit/pos", request);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Order(7)
|
||||||
public void debug() throws Exception {
|
public void debug() throws Exception {
|
||||||
ApiDebugRunRequest request = new ApiDebugRunRequest();
|
ApiDebugRunRequest request = new ApiDebugRunRequest();
|
||||||
request.setId(addApiDebug.getId());
|
request.setId(addApiDebug.getId());
|
||||||
|
@ -506,7 +531,7 @@ public class ApiDebugControllerTests extends BaseTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(7)
|
@Order(8)
|
||||||
public void delete() throws Exception {
|
public void delete() throws Exception {
|
||||||
// @@请求成功
|
// @@请求成功
|
||||||
this.requestGetWithOk(DEFAULT_DELETE, addApiDebug.getId());
|
this.requestGetWithOk(DEFAULT_DELETE, addApiDebug.getId());
|
||||||
|
|
|
@ -6,6 +6,7 @@ import io.metersphere.api.constants.ApiDefinitionStatus;
|
||||||
import io.metersphere.api.controller.result.ApiResultCode;
|
import io.metersphere.api.controller.result.ApiResultCode;
|
||||||
import io.metersphere.api.domain.*;
|
import io.metersphere.api.domain.*;
|
||||||
import io.metersphere.api.dto.definition.*;
|
import io.metersphere.api.dto.definition.*;
|
||||||
|
import io.metersphere.api.dto.request.ApiEditPosRequest;
|
||||||
import io.metersphere.api.dto.request.ImportRequest;
|
import io.metersphere.api.dto.request.ImportRequest;
|
||||||
import io.metersphere.api.dto.request.http.MsHTTPElement;
|
import io.metersphere.api.dto.request.http.MsHTTPElement;
|
||||||
import io.metersphere.api.mapper.*;
|
import io.metersphere.api.mapper.*;
|
||||||
|
@ -33,7 +34,6 @@ import io.metersphere.system.domain.OperationHistoryExample;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
import io.metersphere.system.dto.request.OperationHistoryRequest;
|
||||||
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
import io.metersphere.system.dto.request.OperationHistoryVersionRequest;
|
||||||
import io.metersphere.system.dto.sdk.BaseCondition;
|
import io.metersphere.system.dto.sdk.BaseCondition;
|
||||||
import io.metersphere.system.dto.sdk.request.PosRequest;
|
|
||||||
import io.metersphere.system.log.constants.OperationLogType;
|
import io.metersphere.system.log.constants.OperationLogType;
|
||||||
import io.metersphere.system.mapper.OperationHistoryMapper;
|
import io.metersphere.system.mapper.OperationHistoryMapper;
|
||||||
import io.metersphere.system.utils.Pager;
|
import io.metersphere.system.utils.Pager;
|
||||||
|
@ -1065,17 +1065,22 @@ public class ApiDefinitionControllerTests extends BaseTest {
|
||||||
@Order(9)
|
@Order(9)
|
||||||
public void testPos() throws Exception {
|
public void testPos() throws Exception {
|
||||||
|
|
||||||
apiDefinition = apiDefinitionMapper.selectByPrimaryKey("1001");
|
ApiEditPosRequest request = new ApiEditPosRequest();
|
||||||
ApiDefinition apiDefinition1 = apiDefinitionMapper.selectByPrimaryKey("1002");
|
apiDefinition = apiDefinitionMapper.selectByPrimaryKey("1005");
|
||||||
PosRequest posRequest = new PosRequest();
|
ApiDefinition apiDefinition1 = apiDefinitionMapper.selectByPrimaryKey("1004");
|
||||||
posRequest.setProjectId(DEFAULT_PROJECT_ID);
|
request.setProjectId(DEFAULT_PROJECT_ID);
|
||||||
posRequest.setTargetId(apiDefinition.getId());
|
request.setTargetId(apiDefinition.getId());
|
||||||
posRequest.setMoveId(apiDefinition1.getId());
|
request.setMoveId(apiDefinition.getId());
|
||||||
posRequest.setMoveMode("AFTER");
|
request.setModuleId("root");
|
||||||
this.requestPostWithOkAndReturn(BASE_PATH + "edit/pos", posRequest);
|
request.setMoveMode("AFTER");
|
||||||
|
this.requestPostWithOkAndReturn(BASE_PATH + "edit/pos", request);
|
||||||
|
request.setMoveId(apiDefinition1.getId());
|
||||||
|
this.requestPostWithOkAndReturn(BASE_PATH + "edit/pos", request);
|
||||||
|
request.setMoveMode("BEFORE");
|
||||||
|
this.requestPostWithOkAndReturn(BASE_PATH + "edit/pos", request);
|
||||||
|
|
||||||
posRequest.setMoveMode("BEFORE");
|
request.setModuleId("module-st-6");
|
||||||
this.requestPostWithOkAndReturn(BASE_PATH + "edit/pos", posRequest);
|
requestPost(BASE_PATH + "edit/pos", request).andExpect(status().is5xxServerError());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue