You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by re...@apache.org on 2022/08/18 01:37:14 UTC

[cxf] branch 3.5.x-fixes updated (c9bed6ded3 -> fd9c3242df)

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

reta pushed a change to branch 3.5.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git


 discard c9bed6ded3 Attempt to fix flaky JaxRsServiceTest tests (CXF-8750 post merge): split into separate test cases (#986)
     new fd9c3242df Attempt to fix flaky JaxRsServiceTest tests (CXF-8750 post merge): split into separate test cases (#986)

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (c9bed6ded3)
            \
             N -- N -- N   refs/heads/3.5.x-fixes (fd9c3242df)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../cxf/osgi/itests/jaxrs/OpenApiServiceTest.java  | 29 ++++++++++++++++++++++
 1 file changed, 29 insertions(+)


[cxf] 01/01: Attempt to fix flaky JaxRsServiceTest tests (CXF-8750 post merge): split into separate test cases (#986)

Posted by re...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

reta pushed a commit to branch 3.5.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit fd9c3242df6bccbe238807117a769c2434a1e604
Author: Andriy Redko <dr...@gmail.com>
AuthorDate: Wed Aug 17 13:19:22 2022 -0400

    Attempt to fix flaky JaxRsServiceTest tests (CXF-8750 post merge): split into separate test cases (#986)
---
 .../apache/cxf/osgi/itests/jaxrs/BookStore.java    |  49 ---------
 .../cxf/osgi/itests/jaxrs/JaxRsServiceTest.java    |  46 +--------
 .../cxf/osgi/itests/jaxrs/JaxRsTestActivator.java  |  10 --
 .../cxf/osgi/itests/jaxrs/OpenApiBookStore.java    | 101 +++++++++++++++++++
 ...xRsServiceTest.java => OpenApiServiceTest.java} | 110 +++++++--------------
 ...estActivator.java => OpenApiTestActivator.java} |   6 +-
 6 files changed, 143 insertions(+), 179 deletions(-)

diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/BookStore.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/BookStore.java
index 6b15968659..09d60d9f5b 100644
--- a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/BookStore.java
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/BookStore.java
@@ -50,14 +50,7 @@ import org.apache.cxf.validation.BeanValidationProvider;
 import org.hibernate.validator.HibernateValidator;
 import org.hibernate.validator.HibernateValidatorConfiguration;
 
-import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.media.Content;
-import io.swagger.v3.oas.annotations.media.Schema;
-import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.tags.Tag;
-
 @Path("/bookstore")
-@Tag(name = "BookStore")
 @Produces("application/xml")
 public class BookStore {
     private Map<Long, Book> books = new HashMap<>();
@@ -80,15 +73,6 @@ public class BookStore {
 
     @GET
     @Path("/books/{id}")
-    @Operation(
-            summary = "Get book by ID",
-            description = "Get operation with path parameter",
-            responses = {
-                @ApiResponse(content = @Content(schema = @Schema(implementation = Book.class)),
-                    description = "Book found", responseCode = "200"),
-                @ApiResponse(description = "Book not found", responseCode = "404")
-            }
-    )
     public Response getBookRoot(@PathParam("id") Long id) {
         assertInjections();
         Book b = books.get(id);
@@ -98,14 +82,6 @@ public class BookStore {
         return Response.ok(b).build();
     }
 
-    @Operation(
-            summary = "Update book by ID",
-            description = "Put operation with path parameter",
-            responses = {
-                @ApiResponse(description = "Book found and updated", responseCode = "200"),
-                @ApiResponse(description = "Book not found", responseCode = "404")
-            }
-    )
     @PUT
     @Path("/books/{id}")
     public Response updateBook(@PathParam("id") Long id, Book book) {
@@ -118,14 +94,6 @@ public class BookStore {
         return Response.ok().build();
     }
 
-    @Operation(
-            summary = "Create a book with validation",
-            description = "Post operation with entity in body and validation",
-            responses = {
-                @ApiResponse(description = "Book created", responseCode = "201"),
-                @ApiResponse(description = "Validation failed", responseCode = "400")
-            }
-    )
     @POST
     @Path("/books-validate")
     public Response createBookValidate(Book book) {
@@ -155,15 +123,6 @@ public class BookStore {
         return createBook(book);
     }
 
-
-    @Operation(
-            summary = "Create new book",
-            description = "Post operation with entity in body",
-            responses = {
-                @ApiResponse(description = "Book created", responseCode = "201"),
-                @ApiResponse(description = "Book with given ID already exists", responseCode = "409")
-            }
-    )
     @POST
     @Path("/books")
     public Response createBook(Book book) {
@@ -178,14 +137,6 @@ public class BookStore {
         return Response.created(createdURI).build();
     }
 
-    @Operation(
-            summary = "Delete a book",
-            description = "Delete operation with path param",
-            responses = {
-                @ApiResponse(description = "Book deleted", responseCode = "200"),
-                @ApiResponse(description = "Book not found", responseCode = "404")
-            }
-    )
     @DELETE
     @Path("/books/{id}")
     public Response removeBook(@PathParam("id") Long id) {
diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java
index d0cf69b34a..8c48a2e08d 100644
--- a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java
@@ -26,10 +26,6 @@ import javax.ws.rs.client.WebTarget;
 import javax.ws.rs.core.Response;
 import javax.ws.rs.core.Response.Status;
 
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
-
 import org.apache.cxf.helpers.JavaUtils;
 import org.apache.cxf.osgi.itests.AbstractServerActivator;
 import org.apache.cxf.osgi.itests.CXFOSGiTestSupport;
@@ -48,9 +44,6 @@ import org.ops4j.pax.tinybundles.core.TinyBundles;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
 import static org.ops4j.pax.exam.CoreOptions.provision;
 import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.features;
 import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.logLevel;
@@ -62,13 +55,8 @@ public class JaxRsServiceTest extends CXFOSGiTestSupport {
 
     private static final String BASE_URL = "http://localhost:" + PORT + "/cxf/jaxrs/";
     private static final String BOOKSTORE_PATH = "bookstore";
-    private static final String SWAGGER_PATH = "api-docs";
-    private static final String OPEN_API_FILE_PATH = "openapi.json";
 
-    private final WebTarget wt = ClientBuilder
-        .newClient()
-        .register(JacksonJsonProvider.class)
-        .target(BASE_URL);
+    private final WebTarget wt = ClientBuilder.newClient().target(BASE_URL);
 
     @Test
     public void testJaxRsGet() throws Exception {
@@ -130,34 +118,6 @@ public class JaxRsServiceTest extends CXFOSGiTestSupport {
         assertStatus(Status.OK, response);
     }
 
-    @Test
-    public void testGetSwaggerUi() {
-        WebTarget swaggerWt = wt.path(SWAGGER_PATH).queryParam("url", "/cxf/jaxrs/openapi.json");
-        Response response = swaggerWt.request().get();
-        String swaggerFileHtml = response.readEntity(String.class);
-
-        assertStatus(Status.OK, response);
-        assertTrue(swaggerFileHtml.contains("<html"));
-        assertTrue(swaggerFileHtml.contains("<head>"));
-        assertTrue(swaggerFileHtml.contains("<title>Swagger UI</title>"));
-        assertTrue(swaggerFileHtml.contains("</html>"));
-    }
-
-    @Test
-    public void testGetOpenApiJsonFile() {
-        WebTarget openApiWt = wt.path(OPEN_API_FILE_PATH);
-        Response response = openApiWt.request().get();
-        String openApiJson = response.readEntity(String.class);
-
-        assertStatus(Status.OK, response);
-        try {
-            new ObjectMapper().readValue(openApiJson, Object.class);
-            assertTrue(openApiJson.contains("/bookstore/"));
-        } catch (JsonProcessingException e) {
-            fail();
-        }
-    }
-
     private static void assertStatus(Status expectedStatus, Response response) {
         assertEquals(expectedStatus.getStatusCode(), response.getStatus());
     }
@@ -166,9 +126,7 @@ public class JaxRsServiceTest extends CXFOSGiTestSupport {
     public Option[] config() {
         return OptionUtils.combine(
             cxfBaseConfig(),
-            features(cxfUrl, "cxf-core", "cxf-wsdl", "cxf-jaxrs", "cxf-bean-validation-core", "cxf-bean-validation",
-                    "cxf-rs-description-openapi-v3"),
-            mavenBundle("org.webjars", "swagger-ui").versionAsInProject(),
+            features(cxfUrl, "cxf-core", "cxf-wsdl", "cxf-jaxrs", "cxf-bean-validation-core", "cxf-bean-validation"),
             logLevel(LogLevel.INFO),
             testUtils(),
             provision(serviceBundle())
diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java
index b7176ba039..42eec4eada 100644
--- a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java
@@ -22,8 +22,6 @@ import org.apache.cxf.Bus;
 import org.apache.cxf.BusFactory;
 import org.apache.cxf.endpoint.Server;
 import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
-import org.apache.cxf.jaxrs.openapi.OpenApiFeature;
-import org.apache.cxf.jaxrs.swagger.ui.SwaggerUiConfig;
 import org.apache.cxf.osgi.itests.AbstractServerActivator;
 
 public class JaxRsTestActivator extends AbstractServerActivator {
@@ -35,14 +33,6 @@ public class JaxRsTestActivator extends AbstractServerActivator {
         JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
         sf.setBus(bus);
         sf.setResourceClasses(BookStore.class);
-
-        OpenApiFeature openApiFeature = new OpenApiFeature();
-        openApiFeature.setScan(false);
-        SwaggerUiConfig swaggerUiConfig = new SwaggerUiConfig();
-        swaggerUiConfig.setUrl("/cxf/jaxrs/openapi.json");
-        openApiFeature.setSwaggerUiConfig(swaggerUiConfig);
-
-        sf.getFeatures().add(openApiFeature);
         sf.setAddress("/jaxrs");
         return sf.create();
     }
diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiBookStore.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiBookStore.java
new file mode 100644
index 0000000000..8567dd373a
--- /dev/null
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiBookStore.java
@@ -0,0 +1,101 @@
+/**
+ * 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.cxf.osgi.itests.jaxrs;
+
+
+import javax.ws.rs.DELETE;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.core.Response;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.media.Content;
+import io.swagger.v3.oas.annotations.media.Schema;
+import io.swagger.v3.oas.annotations.responses.ApiResponse;
+import io.swagger.v3.oas.annotations.tags.Tag;
+
+@Tag(name = "BookStore")
+public class OpenApiBookStore extends BookStore {
+    @Operation(
+            summary = "Get book by ID",
+            description = "Get operation with path parameter",
+            responses = {
+                @ApiResponse(content = @Content(schema = @Schema(implementation = Book.class)),
+                    description = "Book found", responseCode = "200"),
+                @ApiResponse(description = "Book not found", responseCode = "404")
+            }
+    )
+    public Response getBookRoot(@PathParam("id") Long id) {
+        return super.getBookRoot(id);
+    }
+
+    @Operation(
+            summary = "Update book by ID",
+            description = "Put operation with path parameter",
+            responses = {
+                @ApiResponse(description = "Book found and updated", responseCode = "200"),
+                @ApiResponse(description = "Book not found", responseCode = "404")
+            }
+    )
+    public Response updateBook(@PathParam("id") Long id, Book book) {
+        return super.updateBook(id, book);
+    }
+
+    @Operation(
+            summary = "Create a book with validation",
+            description = "Post operation with entity in body and validation",
+            responses = {
+                @ApiResponse(description = "Book created", responseCode = "201"),
+                @ApiResponse(description = "Validation failed", responseCode = "400")
+            }
+    )
+    public Response createBookValidate(Book book) {
+        return super.createBookValidate(book);
+    }
+
+
+    @Operation(
+            summary = "Create new book",
+            description = "Post operation with entity in body",
+            responses = {
+                @ApiResponse(description = "Book created", responseCode = "201"),
+                @ApiResponse(description = "Book with given ID already exists", responseCode = "409")
+            }
+    )
+    public Response createBook(Book book) {
+        return super.createBook(book);
+    }
+
+    @Operation(
+            summary = "Delete a book",
+            description = "Delete operation with path param",
+            responses = {
+                @ApiResponse(description = "Book deleted", responseCode = "200"),
+                @ApiResponse(description = "Book not found", responseCode = "404")
+            }
+    )
+    @DELETE
+    @Path("/books/{id}")
+    public Response removeBook(@PathParam("id") Long id) {
+        return super.removeBook(id);
+    }
+}
+
+
diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiServiceTest.java
similarity index 65%
copy from osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java
copy to osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiServiceTest.java
index d0cf69b34a..80ea9a6921 100644
--- a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsServiceTest.java
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiServiceTest.java
@@ -19,16 +19,16 @@
 package org.apache.cxf.osgi.itests.jaxrs;
 
 import java.io.InputStream;
+import java.util.concurrent.TimeUnit;
+import java.util.function.Supplier;
 
 import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Entity;
 import javax.ws.rs.client.WebTarget;
 import javax.ws.rs.core.Response;
 import javax.ws.rs.core.Response.Status;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
 
 import org.apache.cxf.helpers.JavaUtils;
 import org.apache.cxf.osgi.itests.AbstractServerActivator;
@@ -47,7 +47,6 @@ import org.ops4j.pax.exam.spi.reactors.PerClass;
 import org.ops4j.pax.tinybundles.core.TinyBundles;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
@@ -58,81 +57,21 @@ import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.logLevel;
 
 @RunWith(PaxExam.class)
 @ExamReactorStrategy(PerClass.class)
-public class JaxRsServiceTest extends CXFOSGiTestSupport {
+public class OpenApiServiceTest extends CXFOSGiTestSupport {
 
     private static final String BASE_URL = "http://localhost:" + PORT + "/cxf/jaxrs/";
-    private static final String BOOKSTORE_PATH = "bookstore";
     private static final String SWAGGER_PATH = "api-docs";
     private static final String OPEN_API_FILE_PATH = "openapi.json";
 
-    private final WebTarget wt = ClientBuilder
-        .newClient()
-        .register(JacksonJsonProvider.class)
-        .target(BASE_URL);
-
-    @Test
-    public void testJaxRsGet() throws Exception {
-        Book book = wt.path(BOOKSTORE_PATH)
-            .path("/books/123")
-            .request("application/xml")
-            .get(Book.class);
-        assertNotNull(book);
-    }
-
-    @Test
-    public void testJaxRsPost() throws Exception {
-        Book book = new Book("New Book", 321);
-        Response response = wt.path(BOOKSTORE_PATH)
-            .path("/books/")
-            .request("application/xml")
-            .post(Entity.xml(book));
-        assertStatus(Status.CREATED, response);
-        assertNotNull(response.getLocation());
-    }
-    
-    @Test
-    public void postWithValidationError() throws Exception {
-        Book book = new Book(null, -1);
-        final Response response = wt.path(BOOKSTORE_PATH)
-            .path("/books-validate/")
-            .request("application/xml")
-            .post(Entity.xml(book));
-        assertStatus(Status.BAD_REQUEST, response);
-    }
-
-    @Test
-    public void postWithValidation() throws Exception {
-        Book book = new Book("A Book", 3212);
-        Response response = wt.path(BOOKSTORE_PATH)
-            .path("/books-validate/")
-            .request("application/xml")
-            .post(Entity.xml(book));
-        assertStatus(Status.CREATED, response);
-        assertNotNull(response.getLocation());
-    }
-
-    @Test
-    public void testJaxRsDelete() throws Exception {
-        Response response = wt.path(BOOKSTORE_PATH)
-            .path("/books/123")
-            .request("application/xml")
-            .delete();
-        assertStatus(Status.OK, response);
-    }
-
-    @Test
-    public void testJaxRsPut() throws Exception {
-        Book book = new Book("Updated Book", 123);
-        Response response = wt.path(BOOKSTORE_PATH)
-            .path("/books/123")
-            .request("application/xml")
-            .put(Entity.xml(book));
-        assertStatus(Status.OK, response);
-    }
+    private final WebTarget wt = ClientBuilder.newClient().target(BASE_URL);
 
     @Test
     public void testGetSwaggerUi() {
         WebTarget swaggerWt = wt.path(SWAGGER_PATH).queryParam("url", "/cxf/jaxrs/openapi.json");
+        
+        // It may take some time for all bundles to start and get activated
+        await(5, TimeUnit.SECONDS, () -> swaggerWt.request().head().getStatus() == 200);
+        
         Response response = swaggerWt.request().get();
         String swaggerFileHtml = response.readEntity(String.class);
 
@@ -146,6 +85,10 @@ public class JaxRsServiceTest extends CXFOSGiTestSupport {
     @Test
     public void testGetOpenApiJsonFile() {
         WebTarget openApiWt = wt.path(OPEN_API_FILE_PATH);
+        
+        // It may take some time for all bundles to start and get activated
+        await(5, TimeUnit.SECONDS, () -> openApiWt.request().head().getStatus() == 200);
+
         Response response = openApiWt.request().get();
         String openApiJson = response.readEntity(String.class);
 
@@ -179,20 +122,41 @@ public class JaxRsServiceTest extends CXFOSGiTestSupport {
         if (JavaUtils.isJava11Compatible()) {
             return TinyBundles.bundle()
                   .add(AbstractServerActivator.class)
-                  .add(JaxRsTestActivator.class)
+                  .add(OpenApiTestActivator.class)
                   .add(Book.class)
                   .add(BookStore.class)
-                  .set(Constants.BUNDLE_ACTIVATOR, JaxRsTestActivator.class.getName())
+                  .add(OpenApiBookStore.class)
+                  .set(Constants.BUNDLE_ACTIVATOR, OpenApiTestActivator.class.getName())
                   .set("Require-Capability", "osgi.ee;filter:=\"(&(osgi.ee=JavaSE)(version=11))\"")
                   .build(TinyBundles.withBnd());
         } else {
             return TinyBundles.bundle()
                 .add(AbstractServerActivator.class)
-                .add(JaxRsTestActivator.class)
+                .add(OpenApiTestActivator.class)
                 .add(Book.class)
                 .add(BookStore.class)
-                .set(Constants.BUNDLE_ACTIVATOR, JaxRsTestActivator.class.getName())
+                .add(OpenApiBookStore.class)
+                .set(Constants.BUNDLE_ACTIVATOR, OpenApiTestActivator.class.getName())
                 .build(TinyBundles.withBnd());
         }
     }
+    
+    private static void await(int timeout, TimeUnit unit, Supplier<Boolean> condition) {
+        final int periods = 10;
+        final long millis = Math.max(1, unit.toMillis(timeout) / periods);
+        
+        for (int i = 0; i < periods; ++i) {
+            if (condition.get()) {
+                return;
+            }
+            
+            try {
+                Thread.sleep(millis);
+            } catch (InterruptedException e) {
+                break;
+            }
+        }
+        
+        fail("Waited at most " + unit.toMillis(timeout) + "ms, but condition was not met");
+    }
 }
diff --git a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiTestActivator.java
similarity index 89%
copy from osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java
copy to osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiTestActivator.java
index b7176ba039..aafc17fe39 100644
--- a/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/JaxRsTestActivator.java
+++ b/osgi/itests/src/test/java/org/apache/cxf/osgi/itests/jaxrs/OpenApiTestActivator.java
@@ -26,15 +26,15 @@ import org.apache.cxf.jaxrs.openapi.OpenApiFeature;
 import org.apache.cxf.jaxrs.swagger.ui.SwaggerUiConfig;
 import org.apache.cxf.osgi.itests.AbstractServerActivator;
 
-public class JaxRsTestActivator extends AbstractServerActivator {
+public class OpenApiTestActivator extends AbstractServerActivator {
 
     @Override
     protected Server createServer() {
         Bus bus = BusFactory.newInstance().createBus();
-        bus.setExtension(JaxRsTestActivator.class.getClassLoader(), ClassLoader.class);
+        bus.setExtension(OpenApiTestActivator.class.getClassLoader(), ClassLoader.class);
         JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
         sf.setBus(bus);
-        sf.setResourceClasses(BookStore.class);
+        sf.setResourceClasses(OpenApiBookStore.class);
 
         OpenApiFeature openApiFeature = new OpenApiFeature();
         openApiFeature.setScan(false);