From 5cc30123e2069fffe82e56554e94f35a3dd8bdeb Mon Sep 17 00:00:00 2001 From: wxg0103 <727495428@qq.com> Date: Mon, 20 May 2024 14:48:54 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=8E=A5=E5=8F=A3=E6=B5=8B=E8=AF=95):?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96=E6=8E=A5=E5=8F=A3=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=EF=BC=8C=E9=BB=98=E8=AE=A4=E4=B8=80=E4=B8=AA=E5=93=8D=E5=BA=94?= =?UTF-8?q?=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/parser/api/PostmanAbstractParserParser.java | 13 +++++++++++-- .../metersphere/api/parser/api/Swagger3Parser.java | 11 +++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/PostmanAbstractParserParser.java b/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/PostmanAbstractParserParser.java index 4422217cb0..655cc911cc 100644 --- a/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/PostmanAbstractParserParser.java +++ b/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/PostmanAbstractParserParser.java @@ -27,6 +27,7 @@ import io.metersphere.plugin.api.spi.AbstractMsTestElement; import io.metersphere.project.dto.environment.auth.BasicAuth; import io.metersphere.project.dto.environment.auth.DigestAuth; import io.metersphere.project.dto.environment.auth.HTTPAuthConfig; +import io.metersphere.system.uid.IDGenerator; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.BooleanUtils; import org.apache.commons.lang3.StringUtils; @@ -110,7 +111,7 @@ public abstract class PostmanAbstractParserParser extends ApiImportAbstractPa if (CollectionUtils.isNotEmpty(response)) { response.forEach(r -> { HttpResponse httpResponse = new HttpResponse(); - //httpResponse.setId(IDGenerator.nextStr()); + httpResponse.setId(IDGenerator.nextStr()); httpResponse.setName(r.getName()); httpResponse.setStatusCode(r.getCode().toString()); if (CollectionUtils.isNotEmpty(r.getHeader())) { @@ -123,6 +124,14 @@ public abstract class PostmanAbstractParserParser extends ApiImportAbstractPa httpResponse.getBody().setBodyType(Body.BodyType.RAW.name()); detail.getResponse().add(httpResponse); }); + detail.getResponse().forEach(httpResponse -> { + if (StringUtils.equals("200", httpResponse.getStatusCode())) { + httpResponse.setDefaultFlag(true); + } + }); + if (detail.getResponse().stream().noneMatch(httpResponse -> StringUtils.equals("200", httpResponse.getStatusCode()))) { + detail.getResponse().getFirst().setDefaultFlag(true); + } } } @@ -317,7 +326,7 @@ public abstract class PostmanAbstractParserParser extends ApiImportAbstractPa JsonNode usernameNode = digestObject.get(USERNAME); JsonNode passwordNode = digestObject.get(PASSWORD); digestAuth.setUserName(usernameNode instanceof TextNode ? usernameNode.asText() : StringUtils.EMPTY); - digestAuth.setPassword(passwordNode instanceof TextNode ?passwordNode.asText() : StringUtils.EMPTY); + digestAuth.setPassword(passwordNode instanceof TextNode ? passwordNode.asText() : StringUtils.EMPTY); } else if (digestNode instanceof ArrayNode digestArray) { digestArray.forEach(node -> { JsonNode keyNode = node.get(KEY); diff --git a/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/Swagger3Parser.java b/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/Swagger3Parser.java index 3227839baa..c86db9e8b7 100644 --- a/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/Swagger3Parser.java +++ b/backend/services/api-test/src/main/java/io/metersphere/api/parser/api/Swagger3Parser.java @@ -210,6 +210,17 @@ public class Swagger3Parser extends ApiImportAbstractParser { + if (StringUtils.equals("200", httpResponse.getStatusCode())) { + httpResponse.setDefaultFlag(true); + } + }); + if (response.stream().noneMatch(httpResponse -> StringUtils.equals("200", httpResponse.getStatusCode()))) { + response.getFirst().setDefaultFlag(true); + } + } } }