Class BundleInstallerExtension

java.lang.Object
org.osgi.test.junit5.inject.InjectingExtension<InjectBundleInstaller>
org.osgi.test.junit5.context.BundleInstallerExtension
All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterAllCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.Extension, org.junit.jupiter.api.extension.ParameterResolver

public class BundleInstallerExtension extends InjectingExtension<InjectBundleInstaller>
A JUnit 5 Extension to get a BundleInstaller for the test bundle.

The BundleContext implementation used by this extension will automatically clean up all service registrations, bundle, service and framework listeners, as well as installed bundles left behind.

Example:

 @ExtendWith(BundleInstallerExtension.class)
 class MyTests {

        @InjectBundleInstaller
        BundleInstaller bundleInstaller;

        @Test
        public void aTest() {
                // use bundleInstaller
        }
 }
 
Since:
1.1
  • Field Details

  • Constructor Details

    • BundleInstallerExtension

      public BundleInstallerExtension()
  • Method Details

    • getBundleInstaller

      public static BundleInstaller getBundleInstaller(org.junit.jupiter.api.extension.ExtensionContext extensionContext)
    • resolveValue

      protected Object resolveValue(TargetType targetType, InjectBundleInstaller injection, org.junit.jupiter.api.extension.ExtensionContext extensionContext) throws org.junit.jupiter.api.extension.ParameterResolutionException
      Description copied from class: InjectingExtension
      Resolve the value for the specified TargetType and injection annotation for the specified ExtensionContext.
      Specified by:
      resolveValue in class InjectingExtension<InjectBundleInstaller>
      Throws:
      org.junit.jupiter.api.extension.ParameterResolutionException