KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > servicemix > components > xslt > XsltSplitTest


1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17 package org.apache.servicemix.components.xslt;
18
19 import org.apache.servicemix.tck.MessageList;
20 import org.apache.servicemix.tck.TestSupport;
21 import org.springframework.context.support.AbstractXmlApplicationContext;
22 import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;
23
24 import javax.xml.namespace.QName JavaDoc;
25 import java.util.Date JavaDoc;
26
27 /**
28  * @version $Revision: 426415 $
29  */

30 public class XsltSplitTest extends TestSupport {
31
32     public void testUseXsltAsRouter() throws Exception JavaDoc {
33         QName JavaDoc service = new QName JavaDoc("http://servicemix.org/cheese/", "transformer");
34
35         sendMessages(service, 20);
36         assertMessagesReceived(20);
37
38         MessageList messageList1 = assertMessagesReceived("service1", 20);
39         MessageList messageList2 = assertMessagesReceived("service2", 20);
40         MessageList messageList3 = assertMessagesReceived("service3", 40);
41
42         assertMessageXPath(messageList1, 0, "/cheese", "Edam");
43         assertMessageXPath(messageList1, 1, "/cheese", "Edam");
44         assertMessageXPath(messageList1, 19, "/cheese", "Edam");
45         assertMessageXPath(messageList1, 0, "/cheese/@id", "1");
46         assertMessageXPath(messageList1, 1, "/cheese/@id", "2");
47
48         assertMessageXPath(messageList2, 0, "/beer", "Stella");
49         assertMessageXPath(messageList2, 19, "/beer", "Stella");
50
51         assertMessageXPath(messageList3, 0, "/lineitem", "Beer");
52         assertMessageXPath(messageList3, 1, "/lineitem", "Food");
53         assertMessageXPath(messageList3, 38, "/lineitem", "Beer");
54         assertMessageXPath(messageList3, 39, "/lineitem", "Food");
55     }
56
57     protected String JavaDoc createMessageXmlText(int index) {
58         return "<foo id='" + index + "' sent='" + new Date JavaDoc() + "'>"
59             + "<cheese>Edam</cheese><beer>Stella</beer><lineitem>Beer</lineitem><lineitem>Food</lineitem></foo>";
60     }
61
62     protected AbstractXmlApplicationContext createBeanFactory() {
63         return new ClassPathXmlApplicationContext("org/apache/servicemix/components/xslt/split.xml");
64     }
65 }
66
Popular Tags