diff --git a/platform/platform-tests/testData/plugins/withModules/META-INF/plugin.xml b/platform/platform-tests/testData/plugins/withModules/META-INF/plugin.xml new file mode 100644 index 000000000000..f17b65dbb3dd --- /dev/null +++ b/platform/platform-tests/testData/plugins/withModules/META-INF/plugin.xml @@ -0,0 +1,5 @@ + + my.plugin + 0.1.0 + + \ No newline at end of file diff --git a/platform/platform-tests/testSrc/com/intellij/ide/plugins/PluginManagerTest.java b/platform/platform-tests/testSrc/com/intellij/ide/plugins/PluginManagerTest.java index f2cf5b115670..8619e7fddb95 100644 --- a/platform/platform-tests/testSrc/com/intellij/ide/plugins/PluginManagerTest.java +++ b/platform/platform-tests/testSrc/com/intellij/ide/plugins/PluginManagerTest.java @@ -122,6 +122,16 @@ public class PluginManagerTest { doPluginSortTest("ultimatePlugins", true); } + @Test + public void testModulePluginIdContract() throws Exception { + Path pluginsPath = Paths.get(PlatformTestUtil.getPlatformTestDataPath(), "plugins", "withModules"); + IdeaPluginDescriptorImpl descriptorBundled = loadDescriptorInTest(pluginsPath, Collections.emptySet(), true); + Map idMap = PluginManagerCore.buildPluginIdMap(Collections.singletonList(descriptorBundled)); + PluginId moduleId = PluginId.getId("foo.bar"); + PluginId corePlugin = PluginId.getId("my.plugin"); + assertEquals(corePlugin, idMap.get(moduleId).getPluginId()); + } + @Test public void testIdentifyPreInstalledPlugins() { Path pluginsPath = Paths.get(PlatformTestUtil.getPlatformTestDataPath(), "plugins", "updatedBundled");