use of okhttp3.mockwebserver.MockWebServer in project Parse-SDK-Android by ParsePlatform.
the class ParseHttpClientTest method doSingleParseHttpClientExecuteWithResponse.
private void doSingleParseHttpClientExecuteWithResponse(int responseCode, String responseStatus, String responseContent, ParseHttpClient client) throws Exception {
MockWebServer server = new MockWebServer();
// Make mock response
int responseContentLength = responseContent.length();
MockResponse mockResponse = new MockResponse().setStatus("HTTP/1.1 " + responseCode + " " + responseStatus).setBody(responseContent);
// Start mock server
server.enqueue(mockResponse);
server.start();
// Make ParseHttpRequest
Map<String, String> requestHeaders = new HashMap<>();
requestHeaders.put("User-Agent", "Parse Android SDK");
String requestUrl = server.url("/").toString();
JSONObject json = new JSONObject();
json.put("key", "value");
String requestContent = json.toString();
int requestContentLength = requestContent.length();
String requestContentType = "application/json";
ParseHttpRequest parseRequest = new ParseHttpRequest.Builder().setUrl(requestUrl).setMethod(ParseHttpRequest.Method.POST).setBody(new ParseByteArrayHttpBody(requestContent, requestContentType)).setHeaders(requestHeaders).build();
// Execute request
ParseHttpResponse parseResponse = client.execute(parseRequest);
RecordedRequest recordedApacheRequest = server.takeRequest();
// Verify request method
assertEquals(ParseHttpRequest.Method.POST.toString(), recordedApacheRequest.getMethod());
// Verify request headers, since http library automatically adds some headers, we only need to
// verify all parseRequest headers are in recordedRequest headers.
Headers recordedApacheHeaders = recordedApacheRequest.getHeaders();
Set<String> recordedApacheHeadersNames = recordedApacheHeaders.names();
for (String name : parseRequest.getAllHeaders().keySet()) {
assertTrue(recordedApacheHeadersNames.contains(name));
assertEquals(parseRequest.getAllHeaders().get(name), recordedApacheHeaders.get(name));
}
// Verify request body
assertEquals(requestContentLength, recordedApacheRequest.getBodySize());
assertArrayEquals(requestContent.getBytes(), recordedApacheRequest.getBody().readByteArray());
// Verify response status code
assertEquals(responseCode, parseResponse.getStatusCode());
// Verify response status
assertEquals(responseStatus, parseResponse.getReasonPhrase());
// Verify all response header entries' keys and values are not null.
for (Map.Entry<String, String> entry : parseResponse.getAllHeaders().entrySet()) {
assertNotNull(entry.getKey());
assertNotNull(entry.getValue());
}
// Verify response body
byte[] content = ParseIOUtils.toByteArray(parseResponse.getContent());
assertArrayEquals(responseContent.getBytes(), content);
// Verify response body size
assertEquals(responseContentLength, content.length);
// Shutdown mock server
server.shutdown();
}
use of okhttp3.mockwebserver.MockWebServer in project Parse-SDK-Android by ParsePlatform.
the class ParseHttpClientTest method doSingleParseHttpClientExecuteWithGzipResponse.
private void doSingleParseHttpClientExecuteWithGzipResponse(int responseCode, String responseStatus, final String responseContent, ParseHttpClient client) throws Exception {
MockWebServer server = new MockWebServer();
// Make mock response
Buffer buffer = new Buffer();
ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
GZIPOutputStream gzipOut = new GZIPOutputStream(byteOut);
gzipOut.write(responseContent.getBytes());
gzipOut.close();
buffer.write(byteOut.toByteArray());
MockResponse mockResponse = new MockResponse().setStatus("HTTP/1.1 " + responseCode + " " + responseStatus).setBody(buffer).setHeader("Content-Encoding", "gzip");
// Start mock server
server.enqueue(mockResponse);
server.start();
// We do not need to add Accept-Encoding header manually, httpClient library should do that.
String requestUrl = server.url("/").toString();
ParseHttpRequest parseRequest = new ParseHttpRequest.Builder().setUrl(requestUrl).setMethod(ParseHttpRequest.Method.GET).build();
// Execute request
ParseHttpResponse parseResponse = client.execute(parseRequest);
RecordedRequest recordedRequest = server.takeRequest();
// Verify request method
assertEquals(ParseHttpRequest.Method.GET.toString(), recordedRequest.getMethod());
// Verify request headers
Headers recordedHeaders = recordedRequest.getHeaders();
assertEquals("gzip", recordedHeaders.get("Accept-Encoding"));
// Verify we do not have Content-Encoding header
assertNull(parseResponse.getHeader("Content-Encoding"));
// Verify response body
byte[] content = ParseIOUtils.toByteArray(parseResponse.getContent());
assertArrayEquals(responseContent.getBytes(), content);
// Shutdown mock server
server.shutdown();
}
use of okhttp3.mockwebserver.MockWebServer in project sonarqube by SonarSource.
the class OAuth2IdentityProviderTest method setUp.
@Before
public void setUp() throws Exception {
fakeServerAuthProvider = new MockWebServer();
fakeServerAuthProvider.start();
fakeServerAuthProviderUrl = fakeServerAuthProvider.url("").url().toString();
userRule.resetUsers();
resetSettings(ORCHESTRATOR, null, "sonar.auth.fake-oauth2-id-provider.enabled", "sonar.auth.fake-oauth2-id-provider.url", "sonar.auth.fake-oauth2-id-provider.user", "sonar.auth.fake-oauth2-id-provider.throwUnauthorizedMessage", "sonar.auth.fake-oauth2-id-provider.allowsUsersToSignUp");
}
use of okhttp3.mockwebserver.MockWebServer in project zipkin by openzipkin.
the class ZipkinServerTest method connectsToConfiguredBackend.
@Test
public void connectsToConfiguredBackend() throws Exception {
try (MockWebServer es = new MockWebServer()) {
es.start(elasticsearchPort);
es.enqueue(new MockResponse().setBody("{\"version\":{\"number\":\"2.4.0\"}}"));
// template
es.enqueue(new MockResponse());
// search (will fail because no content, but that's ok)
es.enqueue(new MockResponse());
client.newCall(new Request.Builder().url(HttpUrl.parse("http://localhost:" + zipkinPort + "/api/v1/services")).get().build()).execute();
// version
assertEquals("/", es.takeRequest().getPath());
assertEquals("/_template/zipkin_template", es.takeRequest().getPath());
assertTrue(es.takeRequest().getPath().replaceAll("\\?.*", "").endsWith("/span/_search"));
}
}
use of okhttp3.mockwebserver.MockWebServer in project mosby by sockeqwe.
the class HomePresenterTest method beforeEachTest.
@Before
public void beforeEachTest() throws Exception {
mockWebServer = new MockWebServer();
mockWebServer.start();
// Set the apps url to the local mock server
DependencyInjection.BASE_URL = mockWebServer.url("").toString();
}
Aggregations