You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "James Sawle (JIRA)" <ji...@apache.org> on 2014/11/17 17:18:34 UTC

[jira] [Commented] (LANG-1013) Adding to StringUtils truncate method and test cases

    [ https://issues.apache.org/jira/browse/LANG-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14214788#comment-14214788 ] 

James Sawle commented on LANG-1013:
-----------------------------------

I suppose the logic was to allow the feature to be as unobtrusive to the caller as possible; however, I agree that an IllegalArgumentException would make more sense. If you would like, a new patch could be made to fix this issue, as well as the StringUtils.EMPTY issue. This seems a useful feature that should be in the library as soon as possible.

> Adding to StringUtils truncate method and test cases
> ----------------------------------------------------
>
>                 Key: LANG-1013
>                 URL: https://issues.apache.org/jira/browse/LANG-1013
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: lang.*
>            Reporter: Thiago Andrade
>            Assignee: Benedikt Ritter
>              Labels: github
>             Fix For: Review Patch
>
>
> Adding the following methods from StringUtils:
> * {{public static String truncate(final String str, final int maxWidth)}}
> * {{public static String truncate(final String str, int offset, final int maxWidth)}}
> For example
> {code:java}
> StringUtils.truncate("abcdefg", 4) = "abcd"
> StringUtils.truncate("abcdefg", 6) = "abcdef"
> StringUtils.truncate("abcdefg", 7) = "abcdefg"
> StringUtils.truncate("abcdefg", 8) = "abcdefg"
> StringUtils.truncate("abcdefghijklmno", -1, 10) = "abcdefghij"
> StringUtils.truncate("abcdefghijklmno", 0, 10) = "abcdefghij"
> StringUtils.truncate("abcdefghijklmno", Integer.MIN_VALUE, 10) = "abcdefghij"
> StringUtils.truncate("abcdefghijklmno", Integer.MIN_VALUE, Integer.MAX_VALUE) = "abcdefghijklmno"
> StringUtils.truncate("abcdefghijklmno", 0, Integer.MAX_VALUE) = "abcdefghijklmno"
> StringUtils.truncate("abcdefghijklmno", 1, 10) = "bcdefghijk"
> StringUtils.truncate("abcdefghijklmno", 2, 10) = "cdefghijkl"
> StringUtils.truncate("abcdefghijklmno", 3, 10) = "defghijklm"
> StringUtils.truncate("abcdefghijklmno", 4, 10) = "efghijklmn"
> StringUtils.truncate("abcdefghijklmno", 5, 10) = "fghijklmno"
> StringUtils.truncate("abcdefghijklmno", 5, 5) = "fghij"
> StringUtils.truncate("abcdefghijklmno", 5, 3) = "fgh"
> StringUtils.truncate("abcdefghijklmno", 10, 3) = "klm"
> StringUtils.truncate("abcdefghijklmno", 10, Integer.MAX_VALUE) = "klmno"
> StringUtils.truncate("abcdefghijklmno", 13, 1) = "n"
> StringUtils.truncate("abcdefghijklmno", 13, Integer.MAX_VALUE) = "no"
> StringUtils.truncate("abcdefghijklmno", 14, 1) = "o"
> StringUtils.truncate("abcdefghijklmno", 14, Integer.MAX_VALUE) = "o"
> {code}
> See: https://github.com/apache/commons-lang/pull/24



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)