use of com.qcadoo.plugin.api.Plugin in project qcadoo by qcadoo.
the class PluginDependencyManagerTest method shouldReturnEmptyDependencyToEnableWhenNoDependenciesSpecifiedInOnePlugin.
@Test
public void shouldReturnEmptyDependencyToEnableWhenNoDependenciesSpecifiedInOnePlugin() throws Exception {
// given
given(plugin1.getRequiredPlugins()).willReturn(Collections.<PluginDependencyInformation>emptySet());
// when
PluginDependencyResult result = manager.getDependenciesToEnable(singletonList((Plugin) plugin1), pluginStatusResolver);
// then
assertFalse(result.isCyclic());
assertEquals(0, result.getDependenciesToEnable().size());
assertEquals(0, result.getUnsatisfiedDependencies().size());
assertEquals(0, result.getDependenciesToDisable().size());
}
use of com.qcadoo.plugin.api.Plugin in project qcadoo by qcadoo.
the class PluginDependencyManagerTest method shouldReturnDisabledDependenciesForMultiplePlugins.
@Test
public void shouldReturnDisabledDependenciesForMultiplePlugins() throws Exception {
// given
Set<PluginDependencyInformation> disabledRequiredPlugins = new HashSet<PluginDependencyInformation>();
disabledRequiredPlugins.add(dependencyInfo2);
disabledRequiredPlugins.add(dependencyInfo4);
given(plugin1.getRequiredPlugins()).willReturn(disabledRequiredPlugins);
Set<PluginDependencyInformation> disabledRequiredPlugins2 = new HashSet<PluginDependencyInformation>();
disabledRequiredPlugins2.add(dependencyInfo3);
given(plugin2.getRequiredPlugins()).willReturn(disabledRequiredPlugins2);
given(plugin3.getState()).willReturn(PluginState.TEMPORARY);
given(plugin4.getState()).willReturn(PluginState.TEMPORARY);
given(pluginAccessor.getPlugin("testPlugin3")).willReturn(plugin3);
given(pluginAccessor.getPlugin("testPlugin4")).willReturn(plugin4);
List<Plugin> plugins = new ArrayList<Plugin>();
plugins.add(plugin1);
plugins.add(plugin2);
// when
PluginDependencyResult result = manager.getDependenciesToEnable(plugins, pluginStatusResolver);
// then
assertFalse(result.isCyclic());
assertEquals(2, result.getDependenciesToEnable().size());
assertTrue(result.getDependenciesToEnable().contains(new PluginDependencyInformation("testPlugin3")));
assertTrue(result.getDependenciesToEnable().contains(new PluginDependencyInformation("testPlugin4")));
assertEquals(0, result.getUnsatisfiedDependencies().size());
assertEquals(0, result.getDependenciesToDisable().size());
}
use of com.qcadoo.plugin.api.Plugin in project qcadoo by qcadoo.
the class PluginDependencyManagerTest method shouldSetCyclicFlagWhenCyclicDependenciesDependencies.
@Test
public void shouldSetCyclicFlagWhenCyclicDependenciesDependencies() throws Exception {
// given
Set<PluginDependencyInformation> disabledRequiredPlugins1 = new HashSet<PluginDependencyInformation>();
disabledRequiredPlugins1.add(dependencyInfo2);
given(plugin1.getRequiredPlugins()).willReturn(disabledRequiredPlugins1);
Set<PluginDependencyInformation> disabledRequiredPlugins2 = new HashSet<PluginDependencyInformation>();
disabledRequiredPlugins2.add(dependencyInfo3);
given(plugin2.getState()).willReturn(PluginState.DISABLED);
given(plugin2.getRequiredPlugins()).willReturn(disabledRequiredPlugins2);
Set<PluginDependencyInformation> disabledRequiredPlugins3 = new HashSet<PluginDependencyInformation>();
disabledRequiredPlugins3.add(dependencyInfo1);
given(plugin3.getState()).willReturn(PluginState.TEMPORARY);
given(plugin3.getRequiredPlugins()).willReturn(disabledRequiredPlugins3);
given(pluginAccessor.getPlugin("testPlugin1")).willReturn(plugin1);
given(pluginAccessor.getPlugin("testPlugin2")).willReturn(plugin2);
given(pluginAccessor.getPlugin("testPlugin3")).willReturn(plugin3);
given(pluginAccessor.getPlugin("testPlugin4")).willReturn(plugin4);
// when
PluginDependencyResult result = manager.getDependenciesToEnable(singletonList((Plugin) plugin1), pluginStatusResolver);
// then
assertTrue(result.isCyclic());
assertEquals(0, result.getDependenciesToEnable().size());
assertEquals(0, result.getUnsatisfiedDependencies().size());
assertEquals(0, result.getDependenciesToDisable().size());
}
use of com.qcadoo.plugin.api.Plugin in project qcadoo by qcadoo.
the class PluginDescriptorParserTest method shouldHaveModulesForXml1.
@Test
public void shouldHaveModulesForXml1() throws Exception {
// given
// when
Plugin result = parser.parse(xmlFile1);
// then
DefaultPlugin castedResult = (DefaultPlugin) result;
assertTrue(castedResult.getModules(testModule1Factory).contains(testModule1));
assertTrue(castedResult.getModules(testModule2Factory).contains(testModule2));
}
use of com.qcadoo.plugin.api.Plugin in project qcadoo by qcadoo.
the class PluginDescriptorParserTest method shouldHavePluginDependenciesInformationsForXml2.
@Test
public void shouldHavePluginDependenciesInformationsForXml2() {
// given
// when
Plugin result = parser.parse(xmlFile2);
// then
assertEquals(0, result.getRequiredPlugins().size());
}
Aggregations