1
2
3
4
5
6
7 package org.mule.config.spring.parsers.specific;
8
9 import org.mule.api.MuleContext;
10 import org.mule.api.endpoint.EndpointURI;
11 import org.mule.endpoint.URIBuilder;
12 import org.mule.tck.junit4.AbstractMuleTestCase;
13
14 import java.util.HashMap;
15 import java.util.Map;
16
17 import org.junit.Test;
18
19 import static org.junit.Assert.assertEquals;
20
21 public class URIBuilderTestCase extends AbstractMuleTestCase
22 {
23
24 private static final Map queries;
25
26 static
27 {
28 queries = new HashMap();
29 queries.put("aname", "avalue");
30 queries.put("bname", "bvalue");
31 }
32
33 private MuleContext unusedMuleContext = null;
34
35 @Test
36 public void testAddressForProtocol()
37 {
38 URIBuilder uri = new URIBuilder(unusedMuleContext);
39 uri.setProtocol("foo");
40 uri.setAddress("foo://bar");
41 assertEquals("foo://bar", uri.toString());
42 }
43
44 @Test
45 public void testAddressForMeta()
46 {
47 URIBuilder uri = new URIBuilder(unusedMuleContext);
48 uri.setMeta("foo");
49 uri.setAddress("baz://bar");
50 assertEquals("foo:baz://bar", uri.toString());
51 }
52
53 @Test
54 public void testQueriesWithAddress()
55 {
56 URIBuilder uri = new URIBuilder(unusedMuleContext);
57 uri.setAddress("foo://bar");
58 uri.setQueryMap(queries);
59 assertEquals("foo://bar?aname=avalue&bname=bvalue", uri.toString());
60 }
61
62 @Test
63 public void testLiteralQueries()
64 {
65 URIBuilder uri = new URIBuilder(unusedMuleContext);
66 uri.setAddress("foo://bar?cname=cvalue");
67 uri.setQueryMap(queries);
68 assertEquals("foo://bar?cname=cvalue&aname=avalue&bname=bvalue", uri.toString());
69 }
70
71 @Test
72 public void testFromString()
73 {
74 URIBuilder uri = new URIBuilder("test://bar", unusedMuleContext);
75 EndpointURI endpointURI = uri.getEndpoint();
76 assertEquals("test://bar", endpointURI.getUri().toString());
77 assertEquals("test", endpointURI.getSchemeMetaInfo());
78 uri = new URIBuilder("meta:test://bar", unusedMuleContext);
79 endpointURI = uri.getEndpoint();
80 assertEquals("test://bar", endpointURI.getUri().toString());
81 assertEquals("meta", endpointURI.getSchemeMetaInfo());
82 }
83
84 }