Class QuarkusMock

java.lang.Object
io.quarkus.test.junit.QuarkusMock

public class QuarkusMock extends Object
Utility class that can be used to mock CDI normal scoped beans. This includes beans that are ApplicationScoped and RequestScoped. To use this inject the bean into a test, and then invoke the mock method with your mock. Mocks installed in BeforeAll will be present for every test, while mocks installed within a test are cleared after the test has run. Note that you will likely need to use TestInstance.Lifecycle.PER_CLASS to have a non-static before all method that can access injected beans. Note that as the bean is replaced globally you cannot use parallel test execution, as this will result in race conditions where mocks from one test are active in another.
  • Constructor Details

    • QuarkusMock

      public QuarkusMock()
  • Method Details

    • installMockForInstance

      public static <T> void installMockForInstance(T mock, T instance)
      Installs a mock for a CDI normal scoped bean
      Type Parameters:
      T - The bean type
      Parameters:
      mock - The mock object
      instance - The CDI normal scoped bean that was injected into your test
    • installMockForType

      public static <T> void installMockForType(T mock, Class<? super T> instance, Annotation... qualifiers)
      Installs a mock for a CDI normal scoped bean
      Type Parameters:
      T - The bean type
      Parameters:
      mock - The mock object
      instance - The type of the CDI normal scoped bean to replace
      qualifiers - The CDI qualifiers of the bean to mock
    • installMockForType

      public static <T> void installMockForType(T mock, jakarta.enterprise.util.TypeLiteral<? super T> typeLiteral, Annotation... qualifiers)
      Installs a mock for a CDI normal scoped bean by typeLiteral and qualifiers
      Type Parameters:
      T - The bean type
      Parameters:
      mock - The mock object
      typeLiteral - TypeLiteral representing the required type
      qualifiers - The CDI qualifiers of the bean to mock