From 40356d357b4084147df9dd587f39f20b7cc18f25 Mon Sep 17 00:00:00 2001 From: pem70 Date: Thu, 13 Nov 2025 21:24:21 -0600 Subject: [PATCH 1/2] Fix swagger generator core OD tests --- .../swagger/generator/core/TestApiResponse.java | 14 ++++++++++---- .../generator/core/TestOperationGenerator.java | 14 ++++++++++---- .../OperationMethodAnnotationProcessorTest.java | 14 ++++++++++---- 3 files changed, 30 insertions(+), 12 deletions(-) diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java index 58e1ebeb77f..25554e30b01 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java @@ -19,8 +19,9 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation; import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; -import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import io.swagger.v3.oas.annotations.headers.Header; @@ -31,10 +32,15 @@ import jakarta.ws.rs.core.MediaType; public class TestApiResponse { - static SwaggerOperations swaggerOperations = SwaggerOperations.generate(ApiResponseAnnotation.class); + SwaggerOperations swaggerOperations; - @AfterAll - public static void teardown() { + @BeforeEach + public void setUp() { + swaggerOperations = SwaggerOperations.generate(ApiResponseAnnotation.class); + } + + @AfterEach + public void tearDown() { swaggerOperations = null; } diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java index f238e91ff34..3cde1e2e1cc 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java @@ -25,8 +25,9 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation; import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; import org.hamcrest.MatcherAssert; -import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import io.swagger.v3.oas.annotations.OpenAPIDefinition; @@ -40,10 +41,15 @@ import io.swagger.v3.oas.annotations.tags.Tag; public class TestOperationGenerator { - static SwaggerOperations swaggerOperations = SwaggerOperations.generate(TestClass.class); + SwaggerOperations swaggerOperations; - @AfterAll - public static void teardown() { + @BeforeEach + public void setUp() { + swaggerOperations = SwaggerOperations.generate(TestClass.class); + } + + @AfterEach + public void tearDown() { swaggerOperations = null; } diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java index e164a97cadf..88637b9fb5e 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java @@ -26,8 +26,9 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; -import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import io.swagger.v3.oas.annotations.Operation; @@ -42,10 +43,15 @@ import jakarta.ws.rs.core.MediaType; public class OperationMethodAnnotationProcessorTest { - static SwaggerOperations swaggerOperations = SwaggerOperations.generate(TestClass.class); + SwaggerOperations swaggerOperations; - @AfterAll - public static void teardown() { + @BeforeEach + public void setUp() { + swaggerOperations = SwaggerOperations.generate(TestClass.class); + } + + @AfterEach + public void tearDown() { swaggerOperations = null; } From 6b3d3e4d88894e0b0c109129185bd2df0aab572e Mon Sep 17 00:00:00 2001 From: pem70 Date: Wed, 3 Dec 2025 14:11:42 -0600 Subject: [PATCH 2/2] Refactor to use PER_CLASS lifecycle to improve CI performance --- .../swagger/generator/core/TestApiResponse.java | 11 +++++++---- .../generator/core/TestOperationGenerator.java | 10 ++++++---- .../OperationMethodAnnotationProcessorTest.java | 10 ++++++---- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java index 25554e30b01..e39b3bbf858 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestApiResponse.java @@ -19,10 +19,11 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation; import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; -import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; import io.swagger.v3.oas.annotations.headers.Header; import io.swagger.v3.oas.annotations.media.Content; @@ -31,15 +32,17 @@ import io.swagger.v3.oas.annotations.responses.ApiResponses; import jakarta.ws.rs.core.MediaType; +@TestInstance(TestInstance.Lifecycle.PER_CLASS) public class TestApiResponse { + SwaggerOperations swaggerOperations; - @BeforeEach + @BeforeAll public void setUp() { swaggerOperations = SwaggerOperations.generate(ApiResponseAnnotation.class); } - @AfterEach + @AfterAll public void tearDown() { swaggerOperations = null; } diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java index 3cde1e2e1cc..b46b9bb8327 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java @@ -25,10 +25,11 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperation; import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; import org.hamcrest.MatcherAssert; -import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; import io.swagger.v3.oas.annotations.OpenAPIDefinition; import io.swagger.v3.oas.annotations.Operation; @@ -40,15 +41,16 @@ import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; +@TestInstance(TestInstance.Lifecycle.PER_CLASS) public class TestOperationGenerator { SwaggerOperations swaggerOperations; - @BeforeEach + @BeforeAll public void setUp() { swaggerOperations = SwaggerOperations.generate(TestClass.class); } - @AfterEach + @AfterAll public void tearDown() { swaggerOperations = null; } diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java index 88637b9fb5e..fdc3cea273e 100644 --- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java +++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/processor/annotation/OperationMethodAnnotationProcessorTest.java @@ -26,10 +26,11 @@ import org.apache.servicecomb.swagger.generator.core.model.SwaggerOperations; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; -import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Content; @@ -42,15 +43,16 @@ import jakarta.validation.constraints.NotNull; import jakarta.ws.rs.core.MediaType; +@TestInstance(TestInstance.Lifecycle.PER_CLASS) public class OperationMethodAnnotationProcessorTest { SwaggerOperations swaggerOperations; - @BeforeEach + @BeforeAll public void setUp() { swaggerOperations = SwaggerOperations.generate(TestClass.class); } - @AfterEach + @AfterAll public void tearDown() { swaggerOperations = null; }