1   /*
2    * $Id: JettyEndpointTestCase.java 7963 2007-08-21 08:53:15Z dirk.olmes $
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  
11  package org.mule.providers.http;
12  
13  import org.mule.impl.endpoint.MuleEndpoint;
14  import org.mule.impl.endpoint.MuleEndpointURI;
15  import org.mule.providers.http.jetty.JettyConnector;
16  import org.mule.tck.AbstractMuleTestCase;
17  import org.mule.umo.endpoint.UMOEndpointURI;
18  
19  public class JettyEndpointTestCase extends AbstractMuleTestCase
20  {
21      public void testHostPortOnlyUrl() throws Exception
22      {
23          UMOEndpointURI endpointUri = new MuleEndpointURI("jetty:http://localhost:8080");
24          assertEquals("http", endpointUri.getScheme());
25          assertEquals("http://localhost:8080", endpointUri.getAddress());
26          assertNull(endpointUri.getEndpointName());
27          assertEquals(8080, endpointUri.getPort());
28          assertEquals("localhost", endpointUri.getHost());
29          assertEquals("http://localhost:8080", endpointUri.toString());
30          assertEquals(0, endpointUri.getParams().size());
31          assertEquals("jetty", endpointUri.getSchemeMetaInfo());
32      }
33  
34      public void testHostPortOnlyUrlAndUserInfo() throws Exception
35      {
36          UMOEndpointURI endpointUri = new MuleEndpointURI("jetty:http://admin:pwd@localhost:8080");
37          assertEquals("http", endpointUri.getScheme());
38          assertEquals("http://localhost:8080", endpointUri.getAddress());
39          assertNull(endpointUri.getEndpointName());
40          assertEquals(8080, endpointUri.getPort());
41          assertEquals("localhost", endpointUri.getHost());
42          assertEquals("http://localhost:8080", endpointUri.getAddress());
43          assertEquals(0, endpointUri.getParams().size());
44          assertEquals("admin:pwd", endpointUri.getUserInfo());
45          assertEquals("admin", endpointUri.getUsername());
46          assertEquals("pwd", endpointUri.getPassword());
47          assertEquals("jetty", endpointUri.getSchemeMetaInfo());
48      }
49  
50      public void testHostPortAndPathUrl() throws Exception
51      {
52          UMOEndpointURI endpointUri = new MuleEndpointURI("jetty:http://localhost:8080/app/path");
53          assertEquals("http", endpointUri.getScheme());
54          assertEquals("http://localhost:8080/app/path", endpointUri.getAddress());
55          assertNull(endpointUri.getEndpointName());
56          assertEquals(8080, endpointUri.getPort());
57          assertEquals("localhost", endpointUri.getHost());
58          assertEquals("http://localhost:8080/app/path", endpointUri.getAddress());
59          assertEquals(endpointUri.getPath(), "/app/path");
60          assertEquals(0, endpointUri.getParams().size());
61          assertEquals("jetty", endpointUri.getSchemeMetaInfo());
62      }
63  
64      public void testHostPortAndPathUrlAndUserInfo() throws Exception
65      {
66          UMOEndpointURI endpointUri = new MuleEndpointURI("jetty:http://admin:pwd@localhost:8080/app/path");
67          assertEquals("http", endpointUri.getScheme());
68          assertEquals("http://localhost:8080/app/path", endpointUri.getAddress());
69          assertNull(endpointUri.getEndpointName());
70          assertEquals(8080, endpointUri.getPort());
71          assertEquals("localhost", endpointUri.getHost());
72          assertEquals("http://localhost:8080/app/path", endpointUri.getAddress());
73          assertEquals(endpointUri.getPath(), "/app/path");
74          assertEquals(0, endpointUri.getParams().size());
75          assertEquals("admin:pwd", endpointUri.getUserInfo());
76          assertEquals("admin", endpointUri.getUsername());
77          assertEquals("pwd", endpointUri.getPassword());
78          assertEquals("jetty", endpointUri.getSchemeMetaInfo());
79      }
80  
81      public void testRestHostPortAndPathUrlAndUserInfo() throws Exception
82      {
83          UMOEndpointURI endpointUri = new MuleEndpointURI("jetty:rest://admin:pwd@localhost:8080/app/path");
84          assertEquals("rest", endpointUri.getScheme());
85          assertEquals("rest://localhost:8080/app/path", endpointUri.getAddress());
86          assertNull(endpointUri.getEndpointName());
87          assertEquals(8080, endpointUri.getPort());
88          assertEquals("localhost", endpointUri.getHost());
89          assertEquals("rest://localhost:8080/app/path", endpointUri.getAddress());
90          assertEquals(endpointUri.getPath(), "/app/path");
91          assertEquals(0, endpointUri.getParams().size());
92          assertEquals("admin:pwd", endpointUri.getUserInfo());
93          assertEquals("admin", endpointUri.getUsername());
94          assertEquals("pwd", endpointUri.getPassword());
95          assertEquals("jetty", endpointUri.getSchemeMetaInfo());
96      }
97  
98      public void testJettyRestEndpointCreation() throws Exception
99      {
100         MuleEndpoint ep = new MuleEndpoint("jetty:rest://localhost:8080/loanbroker", true);
101         assertNotNull(ep);
102         assertTrue(ep.getConnector() instanceof JettyConnector);
103 
104     }
105 
106     public void testJettyHttpEndpointCreation() throws Exception
107     {
108         MuleEndpoint ep = new MuleEndpoint("jetty:http://localhost:8080/loanbroker", true);
109         assertNotNull(ep);
110         assertTrue(ep.getConnector() instanceof JettyConnector);
111     }
112 }