You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2018/06/08 17:02:42 UTC

commons-io git commit: [IO-580] Update org.apache.commons.io.FilenameUtils.isExtension(String, String[]) to use var args.

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 <ga...@gmail.com>
Authored: Fri Jun 8 11:02:38 2018 -0600
Committer: Gary Gregory <ga...@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));