From d359ad77ac654883db56cf9376df9b2a98c18ff9 Mon Sep 17 00:00:00 2001 From: decebals Date: Wed, 11 Dec 2019 19:38:19 +0200 Subject: [PATCH] Add test (deleteJarPlugin) in DefaultPluginManagerTest that replicates the issue #355 --- .../org/pf4j/DefaultPluginManagerTest.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/pf4j/src/test/java/org/pf4j/DefaultPluginManagerTest.java b/pf4j/src/test/java/org/pf4j/DefaultPluginManagerTest.java index 8cb9b27..ae51282 100644 --- a/pf4j/src/test/java/org/pf4j/DefaultPluginManagerTest.java +++ b/pf4j/src/test/java/org/pf4j/DefaultPluginManagerTest.java @@ -19,6 +19,7 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; +import org.pf4j.plugin.PluginJar; import org.pf4j.plugin.PluginZip; import java.io.IOException; @@ -155,4 +156,38 @@ public class DefaultPluginManagerTest { assertSame(PluginState.DISABLED, plugin.getPluginState()); } + @Test + public void deleteZipPlugin() throws Exception { + PluginZip pluginZip = new PluginZip.Builder(pluginsPath.resolve("my-plugin-1.2.3.zip"), "myPlugin") + .pluginVersion("1.2.3") + .build(); + + pluginManager.loadPlugin(pluginZip.path()); + pluginManager.startPlugin(pluginZip.pluginId()); + + assertEquals(1, pluginManager.getPlugins().size()); + + boolean deleted = pluginManager.deletePlugin(pluginZip.pluginId()); + assertTrue(deleted); + + assertFalse(pluginZip.file().exists()); + } + + @Test + public void deleteJarPlugin() throws Exception { + PluginJar pluginJar = new PluginJar.Builder(pluginsPath.resolve("my-plugin-1.2.3.jar"), "myPlugin") + .pluginVersion("1.2.3") + .build(); + + pluginManager.loadPlugin(pluginJar.path()); + pluginManager.startPlugin(pluginJar.pluginId()); + + assertEquals(1, pluginManager.getPlugins().size()); + + boolean deleted = pluginManager.deletePlugin(pluginJar.pluginId()); + assertTrue(deleted); + + assertFalse(pluginJar.file().exists()); + } + } -- 2.39.5