1 package org.controlhaus.xfire.client;
2
3 import org.apache.beehive.controls.api.bean.Control;
4 import org.apache.xmlbeans.XmlObject;
5 import org.controlhaus.xfire.client.XFireClientControl.Encoding;
6 import org.controlhaus.xfire.client.XFireClientControl.ServiceUrl;
7
8 /***
9 * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
10 * @since Nov 5, 2004
11 */
12 public class XFireClientControlTest
13 extends AbstractControlTest
14 {
15 @Encoding("ENC")
16 @ServiceUrl("http://soap.amazon.com/onca/soap?Service=AWSECommerceService")
17 @Control XFireClientControl client;
18
19 @ServiceUrl("http://soap.amazon.com/onca/soap?Service=AWSECommerceService")
20 @Control XFireClientControl noEncClient;
21
22 public void testProperties()
23 throws Exception
24 {
25 assertNotNull(client);
26
27 XFireClientControlBean bean = (XFireClientControlBean) client;
28 assertEquals("ENC", bean.getEncodingValue());
29 assertEquals("http://soap.amazon.com/onca/soap?Service=AWSECommerceService", bean.getServiceUrlValue());
30
31 assertNotNull(noEncClient);
32
33 bean = (XFireClientControlBean) noEncClient;
34 assertEquals("UTF-8", bean.getEncodingValue());
35 assertEquals("http://soap.amazon.com/onca/soap?Service=AWSECommerceService",
36 bean.getServiceUrlValue());
37
38 }
39
40 public void testInvoke()
41 throws Exception
42 {
43 assertNotNull(client);
44
45 XmlObject request = XmlObject.Factory.parse( getClass().getResourceAsStream("amazon.xml") );
46
47 XmlObject[] response = client.invoke( new XmlObject[] { request } );
48 assertNotNull(response);
49 assertEquals(1, response.length);
50 assertEquals("ItemLookupResponse", response[0].getDomNode().getFirstChild().getLocalName());
51 }
52 }