On Thu, Mar 17, 2011 at 7:43 PM, Barry Kaplan <grou...@memelet.com> wrote:
> I'm trying to test a component that sends email via smtp. But I'm not able to
> configure mock endpoint because it contains parameters that don't get
> resolved.
>
>  ccontext.addComponent("smtp", new MockComponent)
>  val uri = "smtp://host:9999?username=smtpusername&password=smtppassword"
>  ccontext.getEndpoint(uri,
> classOf[MockEndpoint]).expectedBodiesReceived(...)
>
> The getEndpoint fails complaining about ?username and &password paremeters.
>
> I would expect that mock endpoints would not care about parameters.
> Hopefully there must some way to test this that I must be aware of... ?
>

In Camel 2.7 you can more easily manipulate your routes using the weave
http://camel.apache.org/advicewith.html

You can also use the interceptSendToEndpoint and then
skipSendToOriginalEndpoint as shown here
http://camel.apache.org/advicewith.html

We should most likely let mocks be lenient about options so you can do
what Barry wanna do.
To substitute an endpoint uri with a mock by replacing the component.
Thats also very easy to understand how to do.

Fell free to create a JIRA, all it requires is to set isLenient()
return true. See camel-http for example.

> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/Mock-endpoints-and-parameters-tp3894208p3894208.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to