Repository: commons-io Updated Branches: refs/heads/master e5f5eac9e -> 029830593
[IO-580] Update org.apache.commons.io.FilenameUtils.isExtension(String, String[]) to use var args. Project: http://git-wip-us.apache.org/repos/asf/commons-io/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-io/commit/02983059 Tree: http://git-wip-us.apache.org/repos/asf/commons-io/tree/02983059 Diff: http://git-wip-us.apache.org/repos/asf/commons-io/diff/02983059 Branch: refs/heads/master Commit: 0298305934801cf65136ce20c59dd133d8ee4d17 Parents: e5f5eac Author: Gary Gregory <garydgreg...@gmail.com> Authored: Fri Jun 8 11:02:38 2018 -0600 Committer: Gary Gregory <garydgreg...@gmail.com> Committed: Fri Jun 8 11:02:38 2018 -0600 ---------------------------------------------------------------------- src/changes/changes.xml | 3 +++ .../org/apache/commons/io/FilenameUtils.java | 2 +- .../commons/io/FilenameUtilsTestCase.java | 27 ++++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-io/blob/02983059/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 81af008..279eef1 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -71,6 +71,9 @@ The <action> type attribute can be add,update,fix,remove. <action issue="IO-559" type="fix"> FilenameUtils.normalize now verifies hostname syntax in UNC path. </action> + <action issue="IO-580" dev="ggregory" type="update"> + Update org.apache.commons.io.FilenameUtils.isExtension(String, String[]) to use var args. + </action> </release> <release version="2.6" date="2017-10-15" description="Java 7 required, Java 9 supported."> http://git-wip-us.apache.org/repos/asf/commons-io/blob/02983059/src/main/java/org/apache/commons/io/FilenameUtils.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/io/FilenameUtils.java b/src/main/java/org/apache/commons/io/FilenameUtils.java index 1493e43..e3c3916 100644 --- a/src/main/java/org/apache/commons/io/FilenameUtils.java +++ b/src/main/java/org/apache/commons/io/FilenameUtils.java @@ -1256,7 +1256,7 @@ public class FilenameUtils { * @return true if the fileName is one of the extensions * @throws java.lang.IllegalArgumentException if the supplied fileName contains null bytes */ - public static boolean isExtension(final String fileName, final String[] extensions) { + public static boolean isExtension(final String fileName, final String... extensions) { if (fileName == null) { return false; } http://git-wip-us.apache.org/repos/asf/commons-io/blob/02983059/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java ---------------------------------------------------------------------- diff --git a/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java b/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java index f9bd80d..d87a255 100644 --- a/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java +++ b/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java @@ -1110,6 +1110,33 @@ public class FilenameUtilsTestCase { } @Test + public void testIsExtensionVarArgs() { + assertTrue(FilenameUtils.isExtension("file.txt", "txt")); + assertFalse(FilenameUtils.isExtension("file.txt", "rtf")); + assertTrue(FilenameUtils.isExtension("file", "rtf", "")); + assertTrue(FilenameUtils.isExtension("file.txt", "rtf", "txt")); + + assertTrue(FilenameUtils.isExtension("a/b/file.txt", "txt")); + assertFalse(FilenameUtils.isExtension("a/b/file.txt", "rtf")); + assertTrue(FilenameUtils.isExtension("a/b/file.txt", "rtf", "txt")); + + assertTrue(FilenameUtils.isExtension("a.b/file.txt", "txt")); + assertFalse(FilenameUtils.isExtension("a.b/file.txt", "rtf")); + assertTrue(FilenameUtils.isExtension("a.b/file.txt", "rtf", "txt")); + + assertTrue(FilenameUtils.isExtension("a\\b\\file.txt", "txt")); + assertFalse(FilenameUtils.isExtension("a\\b\\file.txt", "rtf")); + assertTrue(FilenameUtils.isExtension("a\\b\\file.txt", "rtf", "txt")); + + assertTrue(FilenameUtils.isExtension("a.b\\file.txt", "txt")); + assertFalse(FilenameUtils.isExtension("a.b\\file.txt", "rtf")); + assertTrue(FilenameUtils.isExtension("a.b\\file.txt", "rtf", "txt")); + + assertFalse(FilenameUtils.isExtension("a.b\\file.txt", "TXT")); + assertFalse(FilenameUtils.isExtension("a.b\\file.txt", "TXT", "RTF")); + } + + @Test public void testIsExtensionCollection() { assertFalse(FilenameUtils.isExtension(null, (Collection<String>) null)); assertFalse(FilenameUtils.isExtension("file.txt", (Collection<String>) null));