use of okhttp3.Connection in project okhttp by square.
the class URLConnectionTest method fullyBufferedPostIsTooLong.
@Test
public void fullyBufferedPostIsTooLong() throws Exception {
server.enqueue(new MockResponse().setBody("A"));
connection = urlFactory.open(server.url("/b").url());
connection.setRequestProperty("Content-Length", "3");
connection.setRequestMethod("POST");
OutputStream out = connection.getOutputStream();
out.write('a');
out.write('b');
out.write('c');
try {
out.write('d');
out.flush();
fail();
} catch (IOException expected) {
}
}
use of okhttp3.Connection in project okhttp by square.
the class URLConnectionTest method fullyBufferedPostIsTooShort.
@Test
public void fullyBufferedPostIsTooShort() throws Exception {
server.enqueue(new MockResponse().setBody("A"));
connection = urlFactory.open(server.url("/b").url());
connection.setRequestProperty("Content-Length", "4");
connection.setRequestMethod("POST");
OutputStream out = connection.getOutputStream();
out.write('a');
out.write('b');
out.write('c');
try {
out.close();
fail();
} catch (IOException expected) {
}
}
use of okhttp3.Connection in project okhttp by square.
the class URLConnectionTest method bufferedBodyWithClientRequestTimeout.
@Test
public void bufferedBodyWithClientRequestTimeout() throws Exception {
enqueueClientRequestTimeoutResponses();
HttpURLConnection connection = urlFactory.open(server.url("/").url());
connection.setRequestMethod("POST");
connection.getOutputStream().write("Hello".getBytes("UTF-8"));
assertEquals(200, connection.getResponseCode());
assertEquals("Body", readAscii(connection.getInputStream(), Integer.MAX_VALUE));
RecordedRequest request1 = server.takeRequest();
assertEquals("Hello", request1.getBody().readUtf8());
RecordedRequest request2 = server.takeRequest();
assertEquals("Hello", request2.getBody().readUtf8());
}
use of okhttp3.Connection in project okhttp by square.
the class URLConnectionTest method zeroLengthPayload.
private void zeroLengthPayload(String method) throws IOException, InterruptedException {
server.enqueue(new MockResponse());
connection = urlFactory.open(server.url("/").url());
connection.setRequestProperty("Content-Length", "0");
connection.setRequestMethod(method);
connection.setFixedLengthStreamingMode(0);
connection.setDoOutput(true);
assertContent("", connection);
RecordedRequest zeroLengthPayload = server.takeRequest();
assertEquals(method, zeroLengthPayload.getMethod());
assertEquals("0", zeroLengthPayload.getHeader("content-length"));
assertEquals(0L, zeroLengthPayload.getBodySize());
}
use of okhttp3.Connection in project okhttp by square.
the class URLConnectionTest method testAuthenticateWithStreamingPost.
private void testAuthenticateWithStreamingPost(StreamingMode streamingMode) throws Exception {
MockResponse pleaseAuthenticate = new MockResponse().setResponseCode(401).addHeader("WWW-Authenticate: Basic realm=\"protected area\"").setBody("Please authenticate.");
server.enqueue(pleaseAuthenticate);
Authenticator.setDefault(new RecordingAuthenticator());
urlFactory.setClient(urlFactory.client().newBuilder().authenticator(new JavaNetAuthenticator()).build());
connection = urlFactory.open(server.url("/").url());
connection.setDoOutput(true);
byte[] requestBody = { 'A', 'B', 'C', 'D' };
if (streamingMode == StreamingMode.FIXED_LENGTH) {
connection.setFixedLengthStreamingMode(requestBody.length);
} else if (streamingMode == StreamingMode.CHUNKED) {
connection.setChunkedStreamingMode(0);
}
OutputStream outputStream = connection.getOutputStream();
outputStream.write(requestBody);
outputStream.close();
try {
connection.getInputStream();
fail();
} catch (HttpRetryException expected) {
}
// no authorization header for the request...
RecordedRequest request = server.takeRequest();
assertNull(request.getHeader("Authorization"));
assertEquals("ABCD", request.getBody().readUtf8());
}
Aggregations