Search in sources :

Example 6 with Fields

use of org.eclipse.jetty.util.Fields in project jetty.project by eclipse.

the class HttpClientURITest method testPathWithQueryAndParamValueEncoded.

@Test
public void testPathWithQueryAndParamValueEncoded() throws Exception {
    final String name1 = "a";
    final String value1 = "€";
    final String encodedValue1 = URLEncoder.encode(value1, "UTF-8");
    final String name2 = "b";
    final String value2 = "¥";
    String encodedValue2 = URLEncoder.encode(value2, "UTF-8");
    final String query = name1 + "=" + encodedValue1 + "&" + name2 + "=" + encodedValue2;
    final String path = "/path";
    String pathQuery = path + "?" + query;
    start(new AbstractHandler() {

        @Override
        public void handle(String target, org.eclipse.jetty.server.Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            baseRequest.setHandled(true);
            Assert.assertEquals(path, request.getRequestURI());
            Assert.assertEquals(query, request.getQueryString());
            Assert.assertEquals(value1, request.getParameter(name1));
            Assert.assertEquals(value2, request.getParameter(name2));
        }
    });
    Request request = client.newRequest("localhost", connector.getLocalPort()).scheme(scheme).timeout(5, TimeUnit.SECONDS).path(path + "?" + name1 + "=" + encodedValue1).param(name2, value2);
    Assert.assertEquals(path, request.getPath());
    Assert.assertEquals(query, request.getQuery());
    Assert.assertTrue(request.getURI().toString().endsWith(pathQuery));
    Fields params = request.getParams();
    Assert.assertEquals(2, params.getSize());
    Assert.assertEquals(value1, params.get(name1).getValue());
    Assert.assertEquals(value2, params.get(name2).getValue());
    ContentResponse response = request.send();
    Assert.assertEquals(HttpStatus.OK_200, response.getStatus());
}
Also used : ContentResponse(org.eclipse.jetty.client.api.ContentResponse) Request(org.eclipse.jetty.client.api.Request) HttpServletRequest(javax.servlet.http.HttpServletRequest) HttpServletResponse(javax.servlet.http.HttpServletResponse) IOException(java.io.IOException) AbstractHandler(org.eclipse.jetty.server.handler.AbstractHandler) HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) Fields(org.eclipse.jetty.util.Fields) Test(org.junit.Test)

Example 7 with Fields

use of org.eclipse.jetty.util.Fields in project jetty.project by eclipse.

the class HttpClientURITest method testNoParameterNameWithParameterValue.

@Test
public void testNoParameterNameWithParameterValue() throws Exception {
    final String path = "/path";
    // Bogus query
    final String query = "=1";
    String pathQuery = path + "?" + query;
    start(new AbstractHandler() {

        @Override
        public void handle(String target, org.eclipse.jetty.server.Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            baseRequest.setHandled(true);
            Assert.assertEquals(path, request.getRequestURI());
            Assert.assertEquals(query, request.getQueryString());
        }
    });
    Request request = client.newRequest("localhost", connector.getLocalPort()).scheme(scheme).timeout(5, TimeUnit.SECONDS).path(pathQuery);
    Assert.assertEquals(path, request.getPath());
    Assert.assertEquals(query, request.getQuery());
    Assert.assertTrue(request.getURI().toString().endsWith(pathQuery));
    Fields params = request.getParams();
    Assert.assertEquals(0, params.getSize());
    ContentResponse response = request.send();
    Assert.assertEquals(HttpStatus.OK_200, response.getStatus());
}
Also used : ContentResponse(org.eclipse.jetty.client.api.ContentResponse) Request(org.eclipse.jetty.client.api.Request) HttpServletRequest(javax.servlet.http.HttpServletRequest) HttpServletResponse(javax.servlet.http.HttpServletResponse) IOException(java.io.IOException) AbstractHandler(org.eclipse.jetty.server.handler.AbstractHandler) HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) Fields(org.eclipse.jetty.util.Fields) Test(org.junit.Test)

Example 8 with Fields

use of org.eclipse.jetty.util.Fields in project jetty.project by eclipse.

the class HttpClientURITest method testNoParameterNameNoParameterValue.

@Test
public void testNoParameterNameNoParameterValue() throws Exception {
    final String path = "/path";
    // Bogus query
    final String query = "=";
    String pathQuery = path + "?" + query;
    start(new AbstractHandler() {

        @Override
        public void handle(String target, org.eclipse.jetty.server.Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            baseRequest.setHandled(true);
            Assert.assertEquals(path, request.getRequestURI());
            Assert.assertEquals(query, request.getQueryString());
        }
    });
    Request request = client.newRequest("localhost", connector.getLocalPort()).scheme(scheme).timeout(5, TimeUnit.SECONDS).path(pathQuery);
    Assert.assertEquals(path, request.getPath());
    Assert.assertEquals(query, request.getQuery());
    Assert.assertTrue(request.getURI().toString().endsWith(pathQuery));
    Fields params = request.getParams();
    Assert.assertEquals(0, params.getSize());
    ContentResponse response = request.send();
    Assert.assertEquals(HttpStatus.OK_200, response.getStatus());
}
Also used : ContentResponse(org.eclipse.jetty.client.api.ContentResponse) Request(org.eclipse.jetty.client.api.Request) HttpServletRequest(javax.servlet.http.HttpServletRequest) HttpServletResponse(javax.servlet.http.HttpServletResponse) IOException(java.io.IOException) AbstractHandler(org.eclipse.jetty.server.handler.AbstractHandler) HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) Fields(org.eclipse.jetty.util.Fields) Test(org.junit.Test)

Example 9 with Fields

use of org.eclipse.jetty.util.Fields in project jetty.project by eclipse.

the class TypedContentProviderTest method testFormContentProviderWithDifferentContentType.

@Test
public void testFormContentProviderWithDifferentContentType() throws Exception {
    final String name1 = "a";
    final String value1 = "1";
    final String name2 = "b";
    final String value2 = "2";
    Fields fields = new Fields();
    fields.put(name1, value1);
    fields.add(name2, value2);
    final String content = FormContentProvider.convert(fields);
    final String contentType = "text/plain;charset=UTF-8";
    start(new AbstractHandler() {

        @Override
        public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            baseRequest.setHandled(true);
            Assert.assertEquals("POST", request.getMethod());
            Assert.assertEquals(contentType, request.getContentType());
            Assert.assertEquals(content, IO.toString(request.getInputStream()));
        }
    });
    ContentResponse response = client.newRequest("localhost", connector.getLocalPort()).scheme(scheme).method(HttpMethod.POST).content(new FormContentProvider(fields)).header(HttpHeader.CONTENT_TYPE, contentType).send();
    Assert.assertEquals(200, response.getStatus());
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) Fields(org.eclipse.jetty.util.Fields) ContentResponse(org.eclipse.jetty.client.api.ContentResponse) Request(org.eclipse.jetty.server.Request) HttpServletRequest(javax.servlet.http.HttpServletRequest) HttpServletResponse(javax.servlet.http.HttpServletResponse) IOException(java.io.IOException) AbstractHandler(org.eclipse.jetty.server.handler.AbstractHandler) AbstractHttpClientServerTest(org.eclipse.jetty.client.AbstractHttpClientServerTest) Test(org.junit.Test)

Example 10 with Fields

use of org.eclipse.jetty.util.Fields in project jetty.project by eclipse.

the class TypedContentProviderTest method testFormContentProvider.

@Test
public void testFormContentProvider() throws Exception {
    final String name1 = "a";
    final String value1 = "1";
    final String name2 = "b";
    final String value2 = "2";
    final String value3 = "€";
    start(new AbstractHandler() {

        @Override
        public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            baseRequest.setHandled(true);
            Assert.assertEquals("POST", request.getMethod());
            Assert.assertEquals(MimeTypes.Type.FORM_ENCODED.asString(), request.getContentType());
            Assert.assertEquals(value1, request.getParameter(name1));
            String[] values = request.getParameterValues(name2);
            Assert.assertNotNull(values);
            Assert.assertEquals(2, values.length);
            Assert.assertThat(values, Matchers.arrayContainingInAnyOrder(value2, value3));
        }
    });
    Fields fields = new Fields();
    fields.put(name1, value1);
    fields.add(name2, value2);
    fields.add(name2, value3);
    ContentResponse response = client.FORM(scheme + "://localhost:" + connector.getLocalPort(), fields);
    Assert.assertEquals(200, response.getStatus());
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) Fields(org.eclipse.jetty.util.Fields) ContentResponse(org.eclipse.jetty.client.api.ContentResponse) Request(org.eclipse.jetty.server.Request) HttpServletRequest(javax.servlet.http.HttpServletRequest) HttpServletResponse(javax.servlet.http.HttpServletResponse) IOException(java.io.IOException) AbstractHandler(org.eclipse.jetty.server.handler.AbstractHandler) AbstractHttpClientServerTest(org.eclipse.jetty.client.AbstractHttpClientServerTest) Test(org.junit.Test)

Aggregations

Fields (org.eclipse.jetty.util.Fields)11 IOException (java.io.IOException)10 ServletException (javax.servlet.ServletException)10 HttpServletRequest (javax.servlet.http.HttpServletRequest)10 HttpServletResponse (javax.servlet.http.HttpServletResponse)10 ContentResponse (org.eclipse.jetty.client.api.ContentResponse)10 AbstractHandler (org.eclipse.jetty.server.handler.AbstractHandler)10 Test (org.junit.Test)10 Request (org.eclipse.jetty.client.api.Request)9 AbstractHttpClientServerTest (org.eclipse.jetty.client.AbstractHttpClientServerTest)2 Request (org.eclipse.jetty.server.Request)2 Type (org.apache.camel.component.salesforce.SalesforceLoginConfig.Type)1 FormContentProvider (org.eclipse.jetty.client.util.FormContentProvider)1