use nio api and added test for plugin directory check

This commit is contained in:
Sebastian Sdorra
2019-08-27 13:59:14 +02:00
parent 58e5667e82
commit b36c2dd698
2 changed files with 12 additions and 1 deletions

View File

@@ -71,6 +71,7 @@ import static java.util.stream.Collectors.toList;
*
* TODO don't mix nio and io
*/
@SuppressWarnings("squid:S3725") // performance is not critical, for this type of checks
public final class PluginProcessor
{
@@ -202,7 +203,7 @@ public final class PluginProcessor
}
private Predicate<Path> isPluginDirectory() {
return dir -> new File(dir.resolve("META-INF/scm/plugin.xml").toString()).exists();
return dir -> Files.exists(dir.resolve(DIRECTORY_METAINF).resolve("scm").resolve("plugin.xml"));
}
/**

View File

@@ -134,6 +134,16 @@ public class PluginProcessorTest
assertThat(plugin.getId(), is(PLUGIN_A.id));
}
@Test
public void shouldCollectPluginsAndDoNotFailOnNonPluginDirectories() throws IOException {
new File(pluginDirectory, "some-directory").mkdirs();
copySmp(PLUGIN_A);
PluginWrapper plugin = collectAndGetFirst();
assertThat(plugin.getId(), is(PLUGIN_A.id));
}
/**
* Method description
*