This is an automated email from the ASF dual-hosted git repository.

ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-toolkit.git

commit 0927cd177ca8b9e88d25049252ff2a6149e30657
Author: Daniel Qian <chanjars...@gmail.com>
AuthorDate: Tue Nov 5 22:55:28 2019 +0800

    SCB-1553 Integrate oas-validator compliance check to cli
    Fix syntax check logical bug.
---
 .../compatibility/CompatibilityCheckParser.java    |  9 ----
 .../CompatibilityCheckParserTest.java}             | 40 +++++++----------
 .../toolkit/oasv/compatibility/parser-test.yaml    | 48 +++++++++++++++++++++
 .../oasv/compliance/ComplianceCheckParser.java     |  9 ----
 .../compliance/ComplianceCheckParserTest.java}     | 40 +++++++----------
 .../toolkit/oasv/compliance/parser-test.yaml       | 48 +++++++++++++++++++++
 .../toolkit/oasv/util/SyntaxChecker.java}          | 29 ++++++-------
 .../toolkit/oasv/util/SyntaxCheckerTest.java       | 50 ++++++++++++++++++++++
 .../servicecomb/toolkit/oasv/util/syntax-bad.yaml  | 48 +++++++++++++++++++++
 .../servicecomb/toolkit/oasv/util/syntax-good.yaml | 48 +++++++++++++++++++++
 .../api/controller/CompatibilityController.java    |  5 ++-
 .../web/api/controller/ComplianceController.java   |  3 +-
 12 files changed, 289 insertions(+), 88 deletions(-)

diff --git 
a/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
 
b/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
index 13a52f8..4ca49f7 100644
--- 
a/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
+++ 
b/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
@@ -17,10 +17,6 @@
 
 package org.apache.servicecomb.toolkit.oasv.compatibility;
 
-import static java.util.Collections.emptyList;
-
-import java.util.List;
-
 import io.swagger.v3.parser.OpenAPIV3Parser;
 import io.swagger.v3.parser.core.models.ParseOptions;
 import io.swagger.v3.parser.core.models.SwaggerParseResult;
@@ -36,11 +32,6 @@ public abstract class CompatibilityCheckParser {
     return parser.readContents(yaml, null, createParseOptions());
   }
 
-  public static List<String> checkSyntax(String yaml) {
-    SwaggerParseResult result = parseYaml(yaml);
-    return result.getMessages() == null ? emptyList() : result.getMessages();
-  }
-
   private static ParseOptions createParseOptions() {
 
     ParseOptions parseOptions = new ParseOptions();
diff --git 
a/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
 
b/oas-validator/oas-validator-compatibility/src/test/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParserTest.java
similarity index 50%
copy from 
oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
copy to 
oas-validator/oas-validator-compatibility/src/test/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParserTest.java
index 13a52f8..8846d29 100644
--- 
a/oas-validator/oas-validator-compatibility/src/main/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParser.java
+++ 
b/oas-validator/oas-validator-compatibility/src/test/java/org/apache/servicecomb/toolkit/oasv/compatibility/CompatibilityCheckParserTest.java
@@ -17,37 +17,27 @@
 
 package org.apache.servicecomb.toolkit.oasv.compatibility;
 
-import static java.util.Collections.emptyList;
 
-import java.util.List;
+import static org.assertj.core.api.Assertions.assertThat;
 
-import io.swagger.v3.parser.OpenAPIV3Parser;
-import io.swagger.v3.parser.core.models.ParseOptions;
-import io.swagger.v3.parser.core.models.SwaggerParseResult;
-
-public abstract class CompatibilityCheckParser {
+import org.junit.Test;
 
-  private CompatibilityCheckParser() {
-    // singleton
-  }
+import io.swagger.v3.parser.core.models.SwaggerParseResult;
+import io.swagger.v3.parser.util.ClasspathHelper;
 
-  public static SwaggerParseResult parseYaml(String yaml) {
-    OpenAPIV3Parser parser = new OpenAPIV3Parser();
-    return parser.readContents(yaml, null, createParseOptions());
-  }
+public class CompatibilityCheckParserTest {
 
-  public static List<String> checkSyntax(String yaml) {
-    SwaggerParseResult result = parseYaml(yaml);
-    return result.getMessages() == null ? emptyList() : result.getMessages();
+  @Test
+  public void parseYaml() {
+    String yaml = loadRelative("parser-test.yaml");
+    SwaggerParseResult swaggerParseResult = 
CompatibilityCheckParser.parseYaml(yaml);
+    assertThat(swaggerParseResult).isNotNull();
+    assertThat(swaggerParseResult.getOpenAPI()).isNotNull();
+    assertThat(swaggerParseResult.getMessages()).isEmpty();
   }
 
-  private static ParseOptions createParseOptions() {
-
-    ParseOptions parseOptions = new ParseOptions();
-    parseOptions.setResolve(true);
-    parseOptions.setResolveCombinators(true);
-    parseOptions.setResolveFully(true);
-    parseOptions.setFlatten(false);
-    return parseOptions;
+  private String loadRelative(String filename) {
+    String basePath = getClass().getPackage().getName().replaceAll("\\.", "/");
+    return ClasspathHelper.loadFileFromClasspath(basePath + "/" + filename);
   }
 }
diff --git 
a/oas-validator/oas-validator-compatibility/src/test/resources/org/apache/servicecomb/toolkit/oasv/compatibility/parser-test.yaml
 
b/oas-validator/oas-validator-compatibility/src/test/resources/org/apache/servicecomb/toolkit/oasv/compatibility/parser-test.yaml
new file mode 100644
index 0000000..f7b88b5
--- /dev/null
+++ 
b/oas-validator/oas-validator-compatibility/src/test/resources/org/apache/servicecomb/toolkit/oasv/compatibility/parser-test.yaml
@@ -0,0 +1,48 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements.  See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License.  You may obtain a copy of the License at
+##
+##      http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+openapi: "3.0.0"
+info:
+  version: 1.0.0
+  title: Pet petstore
+paths:
+  /pets:
+    get:
+      summary: List all pets
+      operationId: listpets
+      responses:
+        '200':
+          description: A paged array of pets
+
+    post:
+      summary: List all pets
+      operationId: foo
+      requestBody:
+        content:
+          application/x-www-form-urlencoded:
+            schema:
+              type: object
+              properties:
+                foo:
+                  type: string
+                bar:
+                  type: string
+            encoding:
+              foo:
+                contentType: 'application/octet-stream'
+      responses:
+        '200':
+          description: A paged array of pets
diff --git 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
 
b/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
index 7f0bf4a..f98e577 100644
--- 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
+++ 
b/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
@@ -17,10 +17,6 @@
 
 package org.apache.servicecomb.toolkit.oasv.compliance;
 
-import static java.util.Collections.emptyList;
-
-import java.util.List;
-
 import io.swagger.v3.parser.OpenAPIV3Parser;
 import io.swagger.v3.parser.core.models.ParseOptions;
 import io.swagger.v3.parser.core.models.SwaggerParseResult;
@@ -36,11 +32,6 @@ public abstract class ComplianceCheckParser {
     return parser.readContents(yaml, null, createParseOptions());
   }
 
-  public static List<String> checkSyntax(String yaml) {
-    SwaggerParseResult result = parseYaml(yaml);
-    return result.getMessages() == null ? emptyList() : result.getMessages();
-  }
-
   private static ParseOptions createParseOptions() {
 
     ParseOptions parseOptions = new ParseOptions();
diff --git 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
 
b/oas-validator/oas-validator-compliance/src/test/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParserTest.java
similarity index 50%
copy from 
oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
copy to 
oas-validator/oas-validator-compliance/src/test/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParserTest.java
index 7f0bf4a..9760dee 100644
--- 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
+++ 
b/oas-validator/oas-validator-compliance/src/test/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParserTest.java
@@ -17,37 +17,27 @@
 
 package org.apache.servicecomb.toolkit.oasv.compliance;
 
-import static java.util.Collections.emptyList;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.Assert.*;
 
-import java.util.List;
+import org.junit.Test;
 
-import io.swagger.v3.parser.OpenAPIV3Parser;
-import io.swagger.v3.parser.core.models.ParseOptions;
 import io.swagger.v3.parser.core.models.SwaggerParseResult;
+import io.swagger.v3.parser.util.ClasspathHelper;
 
-public abstract class ComplianceCheckParser {
+public class ComplianceCheckParserTest {
 
-  private ComplianceCheckParser() {
-    // singleton
+  @Test
+  public void parseYaml() {
+    String yaml = loadRelative("parser-test.yaml");
+    SwaggerParseResult swaggerParseResult = 
ComplianceCheckParser.parseYaml(yaml);
+    assertThat(swaggerParseResult).isNotNull();
+    assertThat(swaggerParseResult.getOpenAPI()).isNotNull();
+    assertThat(swaggerParseResult.getMessages()).isEmpty();
   }
 
-  public static SwaggerParseResult parseYaml(String yaml) {
-    OpenAPIV3Parser parser = new OpenAPIV3Parser();
-    return parser.readContents(yaml, null, createParseOptions());
-  }
-
-  public static List<String> checkSyntax(String yaml) {
-    SwaggerParseResult result = parseYaml(yaml);
-    return result.getMessages() == null ? emptyList() : result.getMessages();
-  }
-
-  private static ParseOptions createParseOptions() {
-
-    ParseOptions parseOptions = new ParseOptions();
-    parseOptions.setResolve(true);
-    parseOptions.setResolveCombinators(false);
-    parseOptions.setResolveFully(false);
-    parseOptions.setFlatten(false);
-    return parseOptions;
+  private String loadRelative(String filename) {
+    String basePath = getClass().getPackage().getName().replaceAll("\\.", "/");
+    return ClasspathHelper.loadFileFromClasspath(basePath + "/" + filename);
   }
 }
diff --git 
a/oas-validator/oas-validator-compliance/src/test/resources/org/apache/servicecomb/toolkit/oasv/compliance/parser-test.yaml
 
b/oas-validator/oas-validator-compliance/src/test/resources/org/apache/servicecomb/toolkit/oasv/compliance/parser-test.yaml
new file mode 100644
index 0000000..f7b88b5
--- /dev/null
+++ 
b/oas-validator/oas-validator-compliance/src/test/resources/org/apache/servicecomb/toolkit/oasv/compliance/parser-test.yaml
@@ -0,0 +1,48 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements.  See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License.  You may obtain a copy of the License at
+##
+##      http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+openapi: "3.0.0"
+info:
+  version: 1.0.0
+  title: Pet petstore
+paths:
+  /pets:
+    get:
+      summary: List all pets
+      operationId: listpets
+      responses:
+        '200':
+          description: A paged array of pets
+
+    post:
+      summary: List all pets
+      operationId: foo
+      requestBody:
+        content:
+          application/x-www-form-urlencoded:
+            schema:
+              type: object
+              properties:
+                foo:
+                  type: string
+                bar:
+                  type: string
+            encoding:
+              foo:
+                contentType: 'application/octet-stream'
+      responses:
+        '200':
+          description: A paged array of pets
diff --git 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
 
b/oas-validator/oas-validator-core/src/main/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxChecker.java
similarity index 73%
copy from 
oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
copy to 
oas-validator/oas-validator-core/src/main/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxChecker.java
index 7f0bf4a..e0dc645 100644
--- 
a/oas-validator/oas-validator-compliance/src/main/java/org/apache/servicecomb/toolkit/oasv/compliance/ComplianceCheckParser.java
+++ 
b/oas-validator/oas-validator-core/src/main/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxChecker.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.servicecomb.toolkit.oasv.compliance;
+package org.apache.servicecomb.toolkit.oasv.util;
 
 import static java.util.Collections.emptyList;
 
@@ -25,29 +25,24 @@ import io.swagger.v3.parser.OpenAPIV3Parser;
 import io.swagger.v3.parser.core.models.ParseOptions;
 import io.swagger.v3.parser.core.models.SwaggerParseResult;
 
-public abstract class ComplianceCheckParser {
+public class SyntaxChecker {
 
-  private ComplianceCheckParser() {
+  private SyntaxChecker() {
     // singleton
   }
 
-  public static SwaggerParseResult parseYaml(String yaml) {
-    OpenAPIV3Parser parser = new OpenAPIV3Parser();
-    return parser.readContents(yaml, null, createParseOptions());
-  }
-
-  public static List<String> checkSyntax(String yaml) {
-    SwaggerParseResult result = parseYaml(yaml);
-    return result.getMessages() == null ? emptyList() : result.getMessages();
-  }
-
-  private static ParseOptions createParseOptions() {
+  public static List<String> check(String oasSpecContent) {
 
     ParseOptions parseOptions = new ParseOptions();
-    parseOptions.setResolve(true);
-    parseOptions.setResolveCombinators(false);
+    parseOptions.setResolve(false);
     parseOptions.setResolveFully(false);
+    parseOptions.setResolveCombinators(false);
     parseOptions.setFlatten(false);
-    return parseOptions;
+
+    OpenAPIV3Parser parser = new OpenAPIV3Parser();
+    SwaggerParseResult result = parser.readContents(oasSpecContent, null, 
parseOptions);
+    return result.getMessages() == null ? emptyList() : result.getMessages();
+
   }
+
 }
diff --git 
a/oas-validator/oas-validator-core/src/test/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxCheckerTest.java
 
b/oas-validator/oas-validator-core/src/test/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxCheckerTest.java
new file mode 100644
index 0000000..a7f7644
--- /dev/null
+++ 
b/oas-validator/oas-validator-core/src/test/java/org/apache/servicecomb/toolkit/oasv/util/SyntaxCheckerTest.java
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.toolkit.oasv.util;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.Assert.*;
+
+import java.util.List;
+
+import org.junit.Test;
+
+import io.swagger.v3.parser.util.ClasspathHelper;
+
+public class SyntaxCheckerTest {
+
+  @Test
+  public void checkGood() {
+    String yaml = loadRelative("syntax-good.yaml");
+    List<String> errors = SyntaxChecker.check(yaml);
+    assertThat(errors).isEmpty();
+  }
+
+  @Test
+  public void checkBad() {
+    String yaml = loadRelative("syntax-bad.yaml");
+    List<String> errors = SyntaxChecker.check(yaml);
+    assertThat(errors).containsExactly("attribute paths.'/pets'(post).summary2 
is unexpected");
+  }
+
+  private String loadRelative(String filename) {
+    String basePath = getClass().getPackage().getName().replaceAll("\\.", "/");
+    return ClasspathHelper.loadFileFromClasspath(basePath + "/" + filename);
+  }
+
+}
diff --git 
a/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-bad.yaml
 
b/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-bad.yaml
new file mode 100644
index 0000000..46b822e
--- /dev/null
+++ 
b/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-bad.yaml
@@ -0,0 +1,48 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements.  See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License.  You may obtain a copy of the License at
+##
+##      http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+openapi: "3.0.0"
+info:
+  version: 1.0.0
+  title: Pet petstore
+paths:
+  /pets:
+    get:
+      summary: List all pets
+      operationId: listpets
+      responses:
+        '200':
+          description: A paged array of pets
+
+    post:
+      summary2: List all pets
+      operationId: foo
+      requestBody:
+        content:
+          application/x-www-form-urlencoded:
+            schema:
+              type: object
+              properties:
+                foo:
+                  type: string
+                bar:
+                  type: string
+            encoding:
+              foo:
+                contentType: 'application/octet-stream'
+      responses:
+        '200':
+          description: A paged array of pets
diff --git 
a/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-good.yaml
 
b/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-good.yaml
new file mode 100644
index 0000000..f7b88b5
--- /dev/null
+++ 
b/oas-validator/oas-validator-core/src/test/resources/org/apache/servicecomb/toolkit/oasv/util/syntax-good.yaml
@@ -0,0 +1,48 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements.  See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License.  You may obtain a copy of the License at
+##
+##      http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+openapi: "3.0.0"
+info:
+  version: 1.0.0
+  title: Pet petstore
+paths:
+  /pets:
+    get:
+      summary: List all pets
+      operationId: listpets
+      responses:
+        '200':
+          description: A paged array of pets
+
+    post:
+      summary: List all pets
+      operationId: foo
+      requestBody:
+        content:
+          application/x-www-form-urlencoded:
+            schema:
+              type: object
+              properties:
+                foo:
+                  type: string
+                bar:
+                  type: string
+            encoding:
+              foo:
+                contentType: 'application/octet-stream'
+      responses:
+        '200':
+          description: A paged array of pets
diff --git 
a/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/CompatibilityController.java
 
b/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/CompatibilityController.java
index 5a045ee..f625789 100755
--- 
a/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/CompatibilityController.java
+++ 
b/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/CompatibilityController.java
@@ -27,6 +27,7 @@ import 
org.apache.servicecomb.toolkit.oasv.compatibility.CompatibilityCheckParse
 import 
org.apache.servicecomb.toolkit.oasv.diffvalidation.api.OasDiffValidationContext;
 import org.apache.servicecomb.toolkit.oasv.diffvalidation.api.OasDiffViolation;
 import 
org.apache.servicecomb.toolkit.oasv.diffvalidation.api.OasSpecDiffValidator;
+import org.apache.servicecomb.toolkit.oasv.util.SyntaxChecker;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.util.MimeTypeUtils;
@@ -66,8 +67,8 @@ public class CompatibilityController {
     String leftYaml = yaml.split("---\n")[0];
     String rightYaml = yaml.split("---\n")[1];
 
-    
importError.addLeftParseErrors(CompatibilityCheckParser.checkSyntax(leftYaml));
-    
importError.addRightParseErrors(CompatibilityCheckParser.checkSyntax(rightYaml));
+    importError.addLeftParseErrors(SyntaxChecker.check(leftYaml));
+    importError.addRightParseErrors(SyntaxChecker.check(rightYaml));
 
     if (importError.isNotEmpty()) {
       return importError;
diff --git 
a/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/ComplianceController.java
 
b/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/ComplianceController.java
index e6b5c99..636b91c 100755
--- 
a/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/ComplianceController.java
+++ 
b/oas-validator/oas-validator-web/src/main/java/org/apache/servicecomb/toolkit/oasv/web/api/controller/ComplianceController.java
@@ -24,6 +24,7 @@ import java.util.Map;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.servicecomb.toolkit.oasv.compliance.ComplianceCheckParser;
+import org.apache.servicecomb.toolkit.oasv.util.SyntaxChecker;
 import org.apache.servicecomb.toolkit.oasv.validation.api.OasSpecValidator;
 import org.apache.servicecomb.toolkit.oasv.validation.api.OasValidationContext;
 import org.apache.servicecomb.toolkit.oasv.validation.api.OasViolation;
@@ -64,7 +65,7 @@ public class ComplianceController {
   private ImportError doValidate(String yaml) {
 
     ImportError importError = new ImportError();
-    importError.addParseErrors(ComplianceCheckParser.checkSyntax(yaml));
+    importError.addParseErrors(SyntaxChecker.check(yaml));
     if (importError.isNotEmpty()) {
       return importError;
     }

Reply via email to