forked from loafle/openapi-generator-original
validate pom.xml files (#11672)
This commit is contained in:
parent
16457d0921
commit
6e7c39e64f
@ -341,6 +341,11 @@
|
||||
<version>3.24.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openrewrite</groupId>
|
||||
<artifactId>rewrite-maven</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.reflections</groupId>
|
||||
<artifactId>reflections</artifactId>
|
||||
@ -374,6 +379,11 @@
|
||||
<artifactId>rgxgen</artifactId>
|
||||
<version>${rxgen.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-databind</artifactId>
|
||||
<version>${jackson.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||
<artifactId>jackson-datatype-joda</artifactId>
|
||||
|
@ -18,12 +18,16 @@ import io.swagger.v3.oas.models.media.Schema;
|
||||
import io.swagger.v3.oas.models.servers.Server;
|
||||
import io.swagger.v3.parser.core.models.ParseOptions;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.openapitools.codegen.MockDefaultGenerator.WrittenTemplateBasedFile;
|
||||
import org.openapitools.codegen.utils.ModelUtils;
|
||||
import org.openrewrite.maven.internal.RawPom;
|
||||
import org.testng.Assert;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
@ -125,6 +129,43 @@ public class TestUtils {
|
||||
assertFalse(generatedFiles.contains(path.toFile()), "File '" + path.toAbsolutePath() + "' was found in the list of generated files");
|
||||
}
|
||||
|
||||
public static void validatePomXmlFiles(final Map<String, String> fileMap) {
|
||||
fileMap.forEach( (fileName, fileContents) -> {
|
||||
if ("pom.xml".equals(fileName)) {
|
||||
assertValidPomXml(fileContents);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void validatePomXmlFiles(final List<File> files) {
|
||||
files.forEach( f -> {
|
||||
String fileName = f.getName();
|
||||
if ("pom.xml".equals(fileName)) {
|
||||
try {
|
||||
String fileContents = new String(Files.readAllBytes(f.toPath()), StandardCharsets.UTF_8);
|
||||
assertValidPomXml(fileContents);
|
||||
} catch (IOException exception) {
|
||||
throw new RuntimeException(exception);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
private static void assertValidPomXml(final String fileContents) {
|
||||
final InputStream input = new ByteArrayInputStream(fileContents.getBytes(StandardCharsets.UTF_8));
|
||||
try {
|
||||
RawPom pom = RawPom.parse(input, null);
|
||||
assertTrue(pom.getDependencies().getDependencies().size() > 0);
|
||||
assertNotNull(pom.getName());
|
||||
assertNotNull(pom.getArtifactId());
|
||||
assertNotNull(pom.getGroupId());
|
||||
assertNotNull(pom.getVersion());
|
||||
} finally {
|
||||
IOUtils.closeQuietly(input);
|
||||
}
|
||||
}
|
||||
|
||||
public static void validateJavaSourceFiles(Map<String, String> fileMap) {
|
||||
fileMap.forEach( (fileName, fileContents) -> {
|
||||
if (fileName.endsWith(".java")) {
|
||||
|
@ -126,6 +126,7 @@ public class JavaJerseyServerCodegenTest extends JavaJaxrsBaseTest {
|
||||
|
||||
Assert.assertTrue(files.size() > 0);
|
||||
TestUtils.validateJavaSourceFiles(files);
|
||||
TestUtils.validatePomXmlFiles(files);
|
||||
|
||||
return files.stream().collect(Collectors.toMap(e -> e.getName().replace(outputPath, ""), i -> i));
|
||||
}
|
||||
|
7
pom.xml
7
pom.xml
@ -1436,6 +1436,12 @@
|
||||
<version>${testng.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openrewrite</groupId>
|
||||
<artifactId>rewrite-maven</artifactId>
|
||||
<version>${openrewrite.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
<repositories>
|
||||
@ -1483,6 +1489,7 @@
|
||||
<slf4j.version>1.7.32</slf4j.version>
|
||||
<spotbugs-plugin.version>3.1.12.2</spotbugs-plugin.version>
|
||||
<maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
|
||||
<openrewrite.version>7.18.2</openrewrite.version>
|
||||
<swagger-core.version>2.1.12</swagger-core.version>
|
||||
<swagger-parser-groupid.version>io.swagger.parser.v3</swagger-parser-groupid.version>
|
||||
<swagger-parser.version>2.0.29</swagger-parser.version>
|
||||
|
Loading…
x
Reference in New Issue
Block a user