...
Notice how the hello bean is using pure Spring property placeholders using the ${ } notation. And in the Camel routes we use the Camel placeholder notation with {{ }}.
Overriding properties from Camel test kit
Available as of Camel 2.10
When Testing with Camel and using the Properties component, you may want to be able to provide the properties to be used from directly within the unit test source code.
This is now possible from Camel 2.10 onwards, as the Camel test kits, eg CamelTestSupport
class offers the following methods
- useOverridePropertiesWithPropertiesComponent
- ignoreMissingLocationWithPropertiesComponent
So for example in your unit test classes, you can override the useOverridePropertiesWithPropertiesComponent
method and return a java.util.Properties
that contains the properties which should be preferred to be used.
Wiki Markup |
---|
{snippet:id=e1|lang=java|title=Providing properties from within unit test source|url=camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminOverridePropertiesTest.java} |
This can be done from any of the Camel Test kits, such as camel-test, camel-test-spring, and camel-test-blueprint.
The ignoreMissingLocationWithPropertiesComponent
can be used to instruct Camel to ignore any locations which was not discoverable, for example if you run the unit test, in an environment that does not have access to the location of the properties.