DependencyProvider { public List<Plugin> getDependenciesOf(Class<? extends Plugin> pluginClass) { return getDependenciesOf(pluginClass, DependencyType.ALL); } DependencyProvider(PluginRegistry pluginRegistry, FacetRegistry facetRegistry); List<Plugin> getDependenciesOf(Class<? extends Plugin> pluginClass); List<Plugin> getRequiredPluginsOf(Class<? extends Plugin> pluginClass); List<Plugin> getDependentPluginsOf(Class<? extends Plugin> pluginClass); List<T> getFacets(Class<? extends Plugin> pluginClass, Class<T> facet); T getFacet(Class<? extends Plugin> pluginClass, Class<T> facet);  }
@Test public void test_provide_all_dependencies() { List<Plugin> dependencies = underTest.getDependenciesOf(WithDepsPlugin.class); Assertions.assertThat(dependencies).hasSize(3); Assertions.assertThat(dependencies).containsOnly(requiredPlugin1, requiredPlugin2, dependentPlugin); }