提交 9f1e944b authored 作者: mry's avatar mry

fix(web/base): 豪哥承诺,必有BUG

上级 021bdf60
......@@ -13,6 +13,7 @@ import org.apache.commons.lang3.StringUtils;
import org.matrix.actuators.Actuator;
import org.matrix.actuators.httpclient.HttpResponseDetail;
import org.matrix.actuators.util.CompleteExpressionUtil;
import org.matrix.enums.ExecutionHistoryStatus;
import org.matrix.exception.CheckPointException;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.ClassPathResource;
......@@ -76,6 +77,7 @@ public class CheckPointActuator implements Actuator {
Object jsonObject = Configuration.defaultConfiguration().jsonProvider().parse(httpResponseDetail.getResponseBody());
checkPointResult.addCheckPointResultDetail(jsonPathCheck(checkPoint.getJsonPathCheckPoint(), jsonObject,envId,projectId));
}
return checkPointResult;
}
......
......@@ -166,7 +166,11 @@ public class CaseActuator implements Actuator {
//执行后置动作
executeMove(testCaseBto.getTestCase().getMoveAfterCase()
, envId, projectId, baseTestCaseResponseDetail.getResponseBody(), MoveStrategy.AFT_MOVE);
if (checkPointResult.getFailNum()>0){
changeExecutionHistoryStatus(ExecutionHistoryStatus.ERROR);
}else {
changeExecutionHistoryStatus(ExecutionHistoryStatus.FINISH);
}
} catch (Exception e) {
dataSourceService.switchMainDataSource();
e.printStackTrace();
......
......@@ -26,7 +26,7 @@ public class CompleteExpressionUtil {
public static final String JSON_PATH_REG = "\\{(\\s)*\\$.*?}|(<(\\s)*\\$.*?>)";
public static final String ACTION_REG = "\\$(?=\\{(\\s)*(pre|mid|aft)[0-9]+\\.)(.*?)(?<=})(\\[(.*?)])?";
public static final String ACTION_REG = "\\$(?=\\{(\\s)*(pre|mid|aft)[0-9]+\\.)(.*?)(?<=})(\\[(.*?)])?(\\<(.*?)>)?";
public static final String ENV_VARIABLE_REG = "\\#\\{(.*?)}";
......@@ -90,7 +90,14 @@ public class CompleteExpressionUtil {
public String completeJsonPathExpression(String expression, Object jsonObject) {
String result = expression;
result = regexExpression(result, JSON_PATH_REG,
jsonObject, (o, s) -> JSON.toJSONString(JsonPath.read(o, s.substring(1, s.length() - 1))));
jsonObject, (o, s) -> {
Object read = JsonPath.read(o, s.substring(1, s.length() - 1));
if (read instanceof String){
return (String) read;
}else {
return JSON.toJSONString(read);
}
});
return result;
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论