如何检查端点是否用于munit测试

时间:2014-10-17 18:48:59

标签: java xml unit-testing testing mule

我正在尝试编写一个mule munit测试(在java中),我想检查消息是否通过特定的出站端点传递(或在这种情况下退出),因为流中有路由并且消息可以根据条件通过不同的?

我的设置是实际使用2个不同的流文件,其中一个使用流逻辑,使用通用端点,如

<outbound-endpoint ref="out.endpoint" />

然后是另一个带有实际端点定义的流文件,例如

<vm:endpoint name="out.endpoint" path="out.path" />

以下java代码可以使用

verifyCallOfMessageProcessor("outbound-endpoint").times(1);

但是,我希望能够指定端点的特定名称。我尝试了以下但没有工作

verifyCallOfMessageProcessor("outbound-endpoint").withAttributes(attribute("name").withValue("out.endpoint")).times(1);
verifyCallOfMessageProcessor("outbound-endpoint").withAttributes(attribute("ref").withValue("out.endpoint")).times(1);
verifyCallOfMessageProcessor("endpoint").withAttributes(attribute("name").withValue("out.endpoint")).times(1);
verifyCallOfMessageProcessor("endpoint").withAttributes(attribute("ref").withValue("out.endpoint")).times(1);

所有这4个(对我来说有意义的)都失败了。有没有人知道如何实现这一点(最好通过java,否则使用xml)?

1 个答案:

答案 0 :(得分:1)

这应该是这样的:

verifyCallOfMessageProcessor("outbound-endpoint").ofNamespace("vm").withAttributes(attribute("name").ofNamespace("doc").withValue("out.endpoint")).times(1);

检查属性名称是否具有名称空间“doc。