@Override
    public boolean isPluginOfType(final String extension, String pluginId) {
        return goPluginOSGiFramework.hasReferenceFor(GoPlugin.class, pluginId, extension);
    }
@Test
    void shouldSayAPluginIsNotOfAnExtensionTypeWhenReferenceIsNotFound() {
        final String pluginThatDoesNotImplement = "plugin-that-does-not-implement";
        String extensionType = "extension-type";
        when(goPluginOSGiFramework.hasReferenceFor(GoPlugin.class, pluginThatDoesNotImplement, extensionType)).thenReturn(false);

        DefaultPluginManager pluginManager = new DefaultPluginManager(monitor, registry, goPluginOSGiFramework, jarChangeListener, pluginRequestProcessorRegistry, systemEnvironment, pluginLoader);
        boolean pluginIsOfExtensionType = pluginManager.isPluginOfType(extensionType, pluginThatDoesNotImplement);

        assertThat(pluginIsOfExtensionType).isFalse();
        verify(goPluginOSGiFramework).hasReferenceFor(GoPlugin.class, pluginThatDoesNotImplement, extensionType);
        verify(goPluginOSGiFramework, never()).doOn(eq(GoPlugin.class), eq(pluginThatDoesNotImplement), eq(extensionType), any(ActionWithReturn.class));
    }