2014-02-25 54 views
0

我一直在关注发送消息到死信通道的例子,但还没有计算出如何测试这个。消息确实被路由到DLC,但我想确保这是经过测试的。阿帕奇骆驼测试死信通道

例如,我将如何测试在日志:dead端点上收到的消息。此代码是从CamelTestSupport延伸的测试类:

@Override 
protected RouteBuilder createRouteBuilder() throws Exception { 

    return new RouteBuilder() { 
     @Override 
     public void configure() throws Exception { 
      errorHandler(deadLetterChannel("log:dead?level=ERROR").logHandled(true)); 

      from("direct:testdlc").process(new Processor() { 
       @Override 
       public void process(Exchange exchange) throws Exception { 
        throw new IllegalArgumentException("kaboom!"); 
       } 
      }).to("mock:file"); 
     } 
    }; 
} 

一种选择是将其写入到一个新的途径,但我希望用出的现成的记录。

回答

0

您可以在记录后将消息发送到模拟端点。

from("log:dead?level=ERROR").to("mock:logger");