[
https://issues.apache.org/jira/browse/TEXT-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16223434#comment-16223434
]
Bruno P. Kinoshita edited comment on TEXT-106 at 10/28/17 11:33 AM:
--------------------------------------------------------------------
Thank you for creating the ticket, and for creating a patch (and big thanks for
the unit test!).
Created a pull request in GitHub with your patch, so that others can review it
too. Code looks good to me, and all tests pass. From your rationale I agree
with the suggested patch. Let's just give some time for other to review before
merging it.
Feel free to create a pull request in GitHub too, if you'd prefer. Whichever
works best for you :-)
Thanks one again.
Bruno
was (Author: kinow):
Thank you for creating the ticket, and for creating a patch (and big thanks for
the unit test!).
Created a pull request in GitHub with your patch, so that others can review it
too. Code looks good to me, and all tests pass. From your rationale I agree
with the suggested patch. Let's just give some time for other to review before
merging it.
Thanks one again.
Bruno
> Exception thrown in ExtendedMessageFormat using quotes with custom registry
> ---------------------------------------------------------------------------
>
> Key: TEXT-106
> URL: https://issues.apache.org/jira/browse/TEXT-106
> Project: Commons Text
> Issue Type: Bug
> Affects Versions: 1.1
> Reporter: BenoƮt Moreau
> Assignee: Bruno P. Kinoshita
> Attachments: ExtendedMessageFormat.java.patch,
> ExtendedMessageFormatTest.java.patch
>
>
> An exception is thrown when a quote is used just before end brace of format
> element definition when a custom registry is used.
> This exception is not thrown when a blank space is added before the end brace.
> {code:java}
> public static void main(String[] args)
> {
> String pattern = "TEST: {0,choice,0#0|0<'1'}";
> String patternWorkaround = "TEST: {0,choice,0#0|0<'1' }"; // a space
> after quote
> // Works fine
> MessageFormat format0 = new MessageFormat(pattern);
> System.out.println(format0.format(new Integer[] { 0 })); // "TEST: 0"
> System.out.println(format0.format(new Integer[] { 1 })); // "TEST: 1"
> // Works fine
> ExtendedMessageFormat format1 = new ExtendedMessageFormat(pattern);
> System.out.println(format1.format(new Integer[] { 0 })); // "TEST: 0"
> System.out.println(format1.format(new Integer[] { 1 })); // "TEST: 1"
> // Works fine
> ExtendedMessageFormat format2 = new
> ExtendedMessageFormat(patternWorkaround, new HashMap<String,
> FormatFactory>());
> System.out.println(format2.format(new Integer[] { 0 })); // "TEST: 0"
> System.out.println(format2.format(new Integer[] { 1 })); // "TEST: 1 "
> // Doesn't work
> ExtendedMessageFormat format3 = new ExtendedMessageFormat(pattern, new
> HashMap<String, FormatFactory>());
> System.out.println(format3.format(new Integer[] { 0 })); // Exception
> in thread "main" java.lang.IllegalArgumentException: Unterminated format
> element at position 9
> System.out.println(format3.format(new Integer[] { 1 }));
> }
> {code}
> Expected behavior: This exception should not be thrown.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)