View Javadoc

1   /*
2    * $Id: HttpNamespaceHandlerTestCase.java 20385 2010-11-29 20:25:26Z dfeist $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.transport.http;
12  
13  import org.mule.api.endpoint.InboundEndpoint;
14  import org.mule.api.routing.filter.Filter;
15  import org.mule.transport.http.filters.HttpRequestWildcardFilter;
16  import org.mule.transport.http.transformers.HttpClientMethodResponseToObject;
17  import org.mule.transport.http.transformers.HttpResponseToString;
18  import org.mule.transport.http.transformers.MuleMessageToHttpResponse;
19  import org.mule.transport.http.transformers.ObjectToHttpClientMethodRequest;
20  
21  
22  public class HttpNamespaceHandlerTestCase extends AbstractNamespaceHandlerTestCase
23  {
24  
25      public HttpNamespaceHandlerTestCase()
26      {
27          super("http");
28      }
29  
30      public void testConnectorProperties()
31      {
32          HttpConnector connector =
33                  (HttpConnector) muleContext.getRegistry().lookupConnector("httpConnector");
34          testBasicProperties(connector);
35      }
36  
37      public void testPollingProperties()
38      {
39           HttpPollingConnector connector =
40                  (HttpPollingConnector) muleContext.getRegistry().lookupConnector("polling");
41          assertNotNull(connector);
42          assertEquals(3456, connector.getPollingFrequency());
43          assertFalse(connector.isCheckEtag());
44          assertFalse(connector.isDiscardEmptyContent());
45      }
46      
47      public void testTransformersOnEndpoints() throws Exception
48      {
49          Object transformer1 = lookupInboundEndpoint("ep1").getTransformers().get(0);
50          assertNotNull(transformer1);
51          assertEquals(HttpClientMethodResponseToObject.class, transformer1.getClass());
52  
53          Object transformer2 = lookupInboundEndpoint("ep2").getTransformers().get(0);
54          assertNotNull(transformer2);
55          assertEquals(HttpResponseToString.class, transformer2.getClass());
56          
57          Object transformer3 = lookupInboundEndpoint("ep3").getTransformers().get(0);
58          assertNotNull(transformer3);
59          assertEquals(MuleMessageToHttpResponse.class, transformer3.getClass());
60          
61          Object transformer4 = lookupInboundEndpoint("ep4").getTransformers().get(0);
62          assertNotNull(transformer4);
63          assertEquals(ObjectToHttpClientMethodRequest.class, transformer4.getClass());
64      }
65  
66      public void testFiltersOnEndpoints() throws Exception
67      {
68          Filter filter = lookupInboundEndpoint("ep5").getFilter();
69          assertNotNull(filter);
70          assertEquals(HttpRequestWildcardFilter.class, filter.getClass());
71          HttpRequestWildcardFilter requestWildcardFilter = (HttpRequestWildcardFilter) filter;
72          assertEquals("foo*", requestWildcardFilter.getPattern());
73      }
74      
75      private InboundEndpoint lookupInboundEndpoint(String endpointName) throws Exception
76      {
77          InboundEndpoint endpoint = muleContext.getEndpointFactory().getInboundEndpoint(endpointName);
78          assertNotNull(endpoint);
79          return endpoint;
80      }
81  }