]> source.dussan.org Git - pf4j.git/commitdiff
Add test (deleteJarPlugin) in DefaultPluginManagerTest that replicates the issue...
authordecebals <decebal.suiu@gmail.com>
Wed, 11 Dec 2019 17:38:19 +0000 (19:38 +0200)
committerdecebals <decebal.suiu@gmail.com>
Wed, 11 Dec 2019 17:38:19 +0000 (19:38 +0200)
pf4j/src/test/java/org/pf4j/DefaultPluginManagerTest.java

index 8cb9b2769476256904d753418ae12892ac1c4bc4..ae512823f33a9f610cefb84b9a9320e987c42cf8 100644 (file)
@@ -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());
+    }
+
 }