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 2015/04/07 10:16:13 UTC

[jira] [Commented] (LANG-701) StringUtils join with var args

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

James Sawle commented on LANG-701:
----------------------------------

Sorry took a new job in October and have been trying to get up to speed with different technologies.

Whilst I totally understand that the messages are not public APIs as not documented, as they are returned and visible to the end user, they are as good as public APIs, and possibly worse as there is no documentation when they change. I am not suggesting that we document them, nor that we never change them. But if they are asserted over, then if they are changed, then the tests will need to be changed; and this is more likely to be highlighted in a code review and lead to stable exception messages. Cases where I think we should be asserting even if we don't on general messages is where there is dynamic data within the message.

I suppose my thought is, that for a library that prides itself on stability, it seems a way of suring up hidden API that every library has. But I understand this is outside of the scope, so will remove it from the pull request; update the request to be up-to-date with master and bring this up in a separate issue with references.

> StringUtils join with var args
> ------------------------------
>
>                 Key: LANG-701
>                 URL: https://issues.apache.org/jira/browse/LANG-701
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: lang.*
>            Reporter: Gabriele Kahlout
>            Priority: Minor
>             Fix For: Review Patch
>
>         Attachments: VarArgJoinTest.java
>
>
> {code:java}
> final String apple = "apple";
> final String banana = "banana";
> final String orange = "orange";
> final String expected = apple +  SPACE + banana + SPACE + orange;
> final String  actual = join(SPACE, apple, banana, orange);
> final int expLength = expected.length();
> final int actLength = actual.length();
> assertEquals(expLength, actLength);
> assertEquals(expected, actual);
> {code}
> I missed the functionality of joining strings with the space separator in one line. BTW, why space ' ' not a constant field anywhere?



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