commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ramesh Dhungel (Jira)" <j...@apache.org>
Subject [jira] [Commented] (LANG-1463) StringUtils abbreviate returns String of length greater than maxWidth
Date Sat, 02 Nov 2019 17:11:00 GMT

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

Ramesh Dhungel commented on LANG-1463:
--------------------------------------

In StringUtils.abbreviate in line 335 you are checking if the string is empty or the abbreviation
marker is empty and if one of them is true its returning the original string. This means that
for the string "much too long text" it is not empty however it is returning the exact string
without the abbreviation because the abbreviation is empty. You can fix this by checking if
only the string is empty and returning the string then add another if statement to check if
the abbreviation is empty or null if it is then you would return the string abbreviated. However
this causes an issue due to incorrect test case in line 305 in StringUtilsTest. It states
that the max width is 10 and passes in the string"paranaguacu" which is a 11 letter string.
However the excepted string is "paranaguacu" rather than "paranaguac".

> StringUtils abbreviate returns String of length greater than maxWidth
> ---------------------------------------------------------------------
>
>                 Key: LANG-1463
>                 URL: https://issues.apache.org/jira/browse/LANG-1463
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.*
>    Affects Versions: 3.9
>            Reporter: Thomas Wessendorf
>            Priority: Minor
>
> In the JavaDoc of StringUtils.abbreviate(final String str, final String abbrevMarker,
final int maxWidth) is written, that the method in no case will return a String of length
greater than maxWidth. This doesn't hold, if abbrevMarker is an empty string.
> Expected behaviour:
> abbreviate("much too long text", "", 13).equals("much too long")
>  
> Actual behaviour:
> abbreviate("much too long text", "", 13).equals("much too long text")



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message