[
https://issues.apache.org/activemq/browse/CAMEL-772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen updated CAMEL-772:
------------------------------
Attachment: CAMEL-772.patch
A patch
> Predicates with two types should consider casting to desired type before
> evaluating
> -----------------------------------------------------------------------------------
>
> Key: CAMEL-772
> URL: https://issues.apache.org/activemq/browse/CAMEL-772
> Project: Apache Camel
> Issue Type: Improvement
> Components: camel-core
> Affects Versions: 1.4.0
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Fix For: 2.0.0
>
> Attachments: CAMEL-772.patch
>
>
> I had this unit test where I want to assert that the message body contains
> this string part
> {code}
> MockEndpoint error = getMockEndpoint("mock:errorQueue");
> error.expectedMessageCount(1);
>
> error.message(0).body().contains("<patientCpr>0101701234</patientCpr>");
> {code}
> But the expression fails because the body is byte array and is not casted to
> String as the contains type is.
> If I change the code to:
> {code}
>
> error.message(0).body().convertTo(String.class).contains("<patientCpr>0101701234</patientCpr>");
> {code}
> Then it of course works. But what if there already is a type convert in Camel
> that could have done the cast for me?
> But is it dangerous to add such automatic type casting behind the end-users
> back? Any thoughts?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.