1   /*
2    * $Id: RestServiceComponentTestCase.java 11988 2008-06-10 15:18:14Z rossmason $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSource, Inc.  All rights reserved.  http://www.mulesource.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  package org.mule.transport.http.components;
11  
12  import org.mule.api.component.Component;
13  import org.mule.routing.filters.WildcardFilter;
14  import org.mule.routing.filters.logic.NotFilter;
15  import org.mule.tck.FunctionalTestCase;
16  
17  public class RestServiceComponentTestCase extends FunctionalTestCase
18  {
19      
20      public static final String SERVICE_NAME = "WORMS";
21      public static final String SERVICE_URL = "${header:serviceUrl}";
22      //public static final String SERVICE_URL = "http://www.webservicex.net/stockquote.asmx/GetQuote";
23  
24      protected String getConfigResources()
25      {
26          return "rest-service-component-test.xml";
27      }
28  
29      public void testResetServiceNamespaceHandler() throws Exception
30      {
31  
32          Component component = muleContext.getRegistry().lookupService(SERVICE_NAME).getComponent();
33          assertTrue(component instanceof RestServiceWrapper);
34          RestServiceWrapper restServiceWrapper = (RestServiceWrapper) component;
35          assertEquals(restServiceWrapper.getServiceUrl(), SERVICE_URL);
36          assertEquals(restServiceWrapper.getHttpMethod(), "POST");
37          assertNotNull(restServiceWrapper.getFilter());
38          assertEquals(NotFilter.class, restServiceWrapper.getFilter().getClass());
39          NotFilter filter = (NotFilter) restServiceWrapper.getFilter();
40          assertEquals(filter.getFilter().getClass(), WildcardFilter.class);
41          WildcardFilter innerFilter = (WildcardFilter) filter.getFilter();
42          assertEquals(innerFilter.getPattern(), "*xyz*");
43          assertNotNull(restServiceWrapper.getPayloadParameterNames());
44          assertEquals(restServiceWrapper.getPayloadParameterNames().size(), 2);
45          assertEquals(restServiceWrapper.getPayloadParameterNames().get(0), "test-property1");
46          assertEquals(restServiceWrapper.getPayloadParameterNames().get(1), "test-property2");
47  
48          assertNotNull(restServiceWrapper.getRequiredParams());
49          assertEquals(restServiceWrapper.getRequiredParams().size(), 2);
50          assertEquals(restServiceWrapper.getRequiredParams().get("r1"), "rv1");
51          assertEquals(restServiceWrapper.getRequiredParams().get("r2"), "rv2");
52  
53          assertNotNull(restServiceWrapper.getOptionalParams());
54          assertEquals(restServiceWrapper.getOptionalParams().size(), 2);
55          assertEquals(restServiceWrapper.getOptionalParams().get("o1"), "ov1");
56          assertEquals(restServiceWrapper.getOptionalParams().get("o2"), "ov2");
57      }
58  }