use of org.webpieces.webserver.test.HttpDummyRequest in project webpieces by deanhiller.
the class Requests method createJsonRequest.
public static HttpDummyRequest createJsonRequest(KnownHttpMethod method, String url) {
HttpRequest request = createRequest(method, url);
String json = "{ `query`: `cats and dogs`, `meta`: { `numResults`: 4 } }".replace("`", "\"");
DataWrapper body = gen.wrapByteArray(json.getBytes());
HttpData data = new HttpData(body, true);
request.addHeader(new Header(KnownHeaderName.CONTENT_LENGTH, body.getReadableSize() + ""));
return new HttpDummyRequest(request, data);
}
use of org.webpieces.webserver.test.HttpDummyRequest in project webpieces by deanhiller.
the class Requests method createPostRequestImpl.
private static HttpDummyRequest createPostRequestImpl(String url, String... argTuples) throws UnsupportedEncodingException {
if (argTuples.length % 2 != 0)
throw new IllegalArgumentException("argTuples.length must be of even size (key/value)");
HttpUri httpUri = new HttpUri(url);
HttpRequestLine requestLine = new HttpRequestLine();
requestLine.setMethod(KnownHttpMethod.POST);
requestLine.setUri(httpUri);
HttpRequest req = new HttpRequest();
req.setRequestLine(requestLine);
req.addHeader(new Header(KnownHeaderName.HOST, "myhost.com"));
String encodedParams = "";
for (int i = 0; i < argTuples.length; i += 2) {
String key = URLEncoder.encode(argTuples[i], StandardCharsets.UTF_8);
String value = URLEncoder.encode(argTuples[i + 1], StandardCharsets.UTF_8);
if (!"".equals(encodedParams))
encodedParams += "&";
encodedParams += key + "=" + value;
}
byte[] bytes = encodedParams.getBytes(StandardCharsets.UTF_8);
DataWrapper body = gen.wrapByteArray(bytes);
HttpData data = new HttpData(body, true);
req.addHeader(new Header(KnownHeaderName.CONTENT_LENGTH, "" + body.getReadableSize()));
req.addHeader(new Header(KnownHeaderName.CONTENT_TYPE, "application/x-www-form-urlencoded"));
return new HttpDummyRequest(req, data);
}
use of org.webpieces.webserver.test.HttpDummyRequest in project webpieces by deanhiller.
the class Requests method createBadJsonRequest.
public static HttpDummyRequest createBadJsonRequest(KnownHttpMethod method, String url) {
HttpRequest request = createRequest(method, url);
String json = "{ `query `cats and dogs`, `meta`: { `numResults`: 4 } }".replace("`", "\"");
DataWrapper body = gen.wrapByteArray(json.getBytes());
HttpData data = new HttpData(body, true);
request.addHeader(new Header(KnownHeaderName.CONTENT_LENGTH, body.getReadableSize() + ""));
return new HttpDummyRequest(request, data);
}
use of org.webpieces.webserver.test.HttpDummyRequest in project webpieces by deanhiller.
the class TestBeans method testDeveloperMistypesBeanNameVsFormNamesButNullableIsUsed.
@Test
public void testDeveloperMistypesBeanNameVsFormNamesButNullableIsUsed() {
HttpDummyRequest req = Requests.createPostRequest("/postusernullable", "entity.firstName", "D&D", "entity.lastName", "Hiller", "entity.fullName", "Dean Hiller", "password", "hi");
http11Socket.send(req);
FullResponse response = ResponseExtract.assertSingleResponse(http11Socket);
response.assertStatusCode(KnownStatusCode.HTTP_303_SEEOTHER);
}
use of org.webpieces.webserver.test.HttpDummyRequest in project webpieces by deanhiller.
the class TestJson method testAsyncWriteOnlyPost.
@Test
public void testAsyncWriteOnlyPost() {
HttpDummyRequest req = Requests.createJsonRequest(KnownHttpMethod.POST, "/json/writeasync");
http11Socket.send(req);
FullResponse response = ResponseExtract.assertSingleResponse(http11Socket);
response.assertStatusCode(KnownStatusCode.HTTP_200_OK);
Assert.assertEquals("", response.getBodyAsString());
}
Aggregations