diff --git a/pf4j/src/test/java/ro/fortsoft/pf4j/DefaultPluginFactoryTest.java b/pf4j/src/test/java/ro/fortsoft/pf4j/DefaultPluginFactoryTest.java index bed82f9..8ab6d50 100644 --- a/pf4j/src/test/java/ro/fortsoft/pf4j/DefaultPluginFactoryTest.java +++ b/pf4j/src/test/java/ro/fortsoft/pf4j/DefaultPluginFactoryTest.java @@ -18,6 +18,7 @@ package ro.fortsoft.pf4j; import org.junit.After; import org.junit.Before; import org.junit.Test; +import ro.fortsoft.pf4j.plugin.AnotherFailTestPlugin; import ro.fortsoft.pf4j.plugin.FailTestPlugin; import ro.fortsoft.pf4j.plugin.TestPlugin; @@ -81,4 +82,23 @@ public class DefaultPluginFactoryTest { Plugin result = instance.create(pluginWrapper); assertNull(result); } + + /** + * Test of create method, of class DefaultPluginFactory. + */ + @Test + public void testCreateFailConstructor() { + PluginDescriptor pluginDescriptor = mock(PluginDescriptor.class); + when(pluginDescriptor.getPluginClass()).thenReturn(AnotherFailTestPlugin.class.getName()); + + PluginWrapper pluginWrapper = mock(PluginWrapper.class); + when(pluginWrapper.getDescriptor()).thenReturn(pluginDescriptor); + when(pluginWrapper.getPluginClassLoader()).thenReturn(getClass().getClassLoader()); + + DefaultPluginFactory instance = new DefaultPluginFactory(); + + Plugin result = instance.create(pluginWrapper); + assertNull(result); + } + } diff --git a/pf4j/src/test/java/ro/fortsoft/pf4j/plugin/AnotherFailTestPlugin.java b/pf4j/src/test/java/ro/fortsoft/pf4j/plugin/AnotherFailTestPlugin.java new file mode 100644 index 0000000..5cfe611 --- /dev/null +++ b/pf4j/src/test/java/ro/fortsoft/pf4j/plugin/AnotherFailTestPlugin.java @@ -0,0 +1,30 @@ +/* + * Copyright 2015 Decebal Suiu + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package ro.fortsoft.pf4j.plugin; + +import ro.fortsoft.pf4j.Plugin; + +/** + * + * @author Mario Franco + */ +public class AnotherFailTestPlugin extends Plugin { + + public AnotherFailTestPlugin() { + super(null); + } + +}