Camel Junit?에서 XML 메시지를 비교하는 방법이 있습니까? ,Camel Junit의 XML 메시지 비교
@RunWith(CamelSpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:camel-context-test.xml" })
@DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD)
@MockEndpoints("*")
public class CamelRoutesTest/* extends XMLTestCase */{
private static final Log LOG = LogFactory.getLog(CamelRoutesTest.class);
@Autowired
protected CamelContext camelContext;
@EndpointInject(uri = "mock:d2")
protected MockEndpoint direct1;
@Produce(uri = "direct:d1")
protected ProducerTemplate d1;
@Test
public void test1() throws Exception {
LOG.info("Starting testTradeSaveToPL test");
//node1 comes BEFORE node2
String sendMsg = "<test><node1>1</node1><node2>2</node2></test>";
//node1 comes AFTER node2
String valMsg1 = "<test><node2>2</node2><node1>1</node1></test>";
direct1.expectedBodiesReceivedInAnyOrder(valMsg1);
d1.sendBody(sendMsg);
direct1.assertIsSatisfied(camelContext);
}
}
내 문제는 응답 노드 2에서 노드 1 앞에 오는 동안이 경로에 보내는 XML 메시지에, 노드 1은 노드 2 앞에 오는 :
나는 다음과 같은 코드를 사용하고 있습니다.
나는 두 XML이 동일하다는 것을 알고 있지만 코드는 문자열 비교를하기 때문에 실패합니다.
XMLJUnit은 도구를 비교하고 있지만 해당 테스트 케이스에 어떻게 통합 할 수 있습니까?