View Javadoc

1   /*
2    * $Id: URIBuilderTestCase.java 20321 2010-11-24 15:21:24Z 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.config.spring.parsers.specific;
12  
13  import org.mule.api.endpoint.EndpointURI;
14  import org.mule.endpoint.URIBuilder;
15  import org.mule.tck.AbstractMuleTestCase;
16  
17  import java.util.HashMap;
18  import java.util.Map;
19  
20  public class URIBuilderTestCase extends AbstractMuleTestCase
21  {
22  
23      private static final Map queries;
24  
25      static
26      {
27          queries = new HashMap();
28          queries.put("aname", "avalue");
29          queries.put("bname", "bvalue");
30      }
31  
32      public void testAddressForProtocol()
33      {
34          URIBuilder uri = new URIBuilder(muleContext);
35          uri.setProtocol("foo");
36          uri.setAddress("foo://bar");
37          assertEquals("foo://bar", uri.toString());
38      }
39  
40      public void testAddressForMeta()
41      {
42          URIBuilder uri = new URIBuilder(muleContext);
43          uri.setMeta("foo");
44          uri.setAddress("baz://bar");
45          assertEquals("foo:baz://bar", uri.toString());
46      }
47  
48      public void testQueriesWithAddress()
49      {
50          URIBuilder uri = new URIBuilder(muleContext);
51          uri.setAddress("foo://bar");
52          uri.setQueryMap(queries);
53          assertEquals("foo://bar?aname=avalue&bname=bvalue", uri.toString());
54      }
55  
56      public void testLiteralQueries()
57      {
58          URIBuilder uri = new URIBuilder(muleContext);
59          uri.setAddress("foo://bar?cname=cvalue");
60          uri.setQueryMap(queries);
61          assertEquals("foo://bar?cname=cvalue&aname=avalue&bname=bvalue", uri.toString());
62      }
63  
64      public void testFromString()
65      {
66          URIBuilder uri = new URIBuilder("test://bar", muleContext);
67          EndpointURI endpointURI = uri.getEndpoint();
68          assertEquals("test://bar", endpointURI.getUri().toString());
69          assertEquals("test", endpointURI.getSchemeMetaInfo());
70          uri = new URIBuilder("meta:test://bar", muleContext);
71          endpointURI = uri.getEndpoint();
72          assertEquals("test://bar", endpointURI.getUri().toString());
73          assertEquals("meta", endpointURI.getSchemeMetaInfo());
74      }
75  
76  }