Search in sources :

Example 6 with URLFetchResponse

use of com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse in project appengine-java-standard by GoogleCloudPlatform.

the class URLFetchServiceImplTest method testSync_Redirects_doNotFollowRedirects.

@Test
public void testSync_Redirects_doNotFollowRedirects() throws Exception {
    URL url = new URL("http://non-existent-domain.com/foo");
    HTTPRequest request = new HTTPRequest(url, HTTPMethod.GET, doNotFollowRedirects());
    URLFetchRequest requestProto = URLFetchRequest.newBuilder().setUrl(url.toString()).setMethod(RequestMethod.GET).setFollowRedirects(false).build();
    URLFetchResponse responseProto = URLFetchResponse.newBuilder().setStatusCode(302).build();
    when(delegate.makeSyncCall(same(ApiProxy.getCurrentEnvironment()), eq(URLFetchServiceImpl.PACKAGE), eq("Fetch"), eq(requestProto.toByteArray()))).thenReturn(responseProto.toByteArray());
    HTTPResponse response = new URLFetchServiceImpl().fetch(request);
    assertThat(response.getResponseCode()).isEqualTo(302);
    verify(delegate).makeSyncCall(any(), any(), any(), any());
}
Also used : URLFetchResponse(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse) URLFetchRequest(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest) URL(java.net.URL) Test(org.junit.Test)

Example 7 with URLFetchResponse

use of com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse in project appengine-java-standard by GoogleCloudPlatform.

the class URLFetchServiceImplTest method testSync_SimplePOST.

@Test
public void testSync_SimplePOST() throws Exception {
    String requestContent = "this=is&post=content";
    String responseContent = "<p>This is the desired response.</p>";
    URL url = new URL("http://google.com/foo");
    HTTPRequest request = new HTTPRequest(url, HTTPMethod.POST);
    request.setPayload(requestContent.getBytes(UTF_8));
    URLFetchRequest requestProto = URLFetchRequest.newBuilder().setUrl(url.toString()).setMethod(RequestMethod.POST).setPayload(ByteString.copyFromUtf8(requestContent)).setFollowRedirects(true).build();
    URLFetchResponse responseProto = URLFetchResponse.newBuilder().setStatusCode(200).setContent(ByteString.copyFromUtf8(responseContent)).build();
    when(delegate.makeSyncCall(same(ApiProxy.getCurrentEnvironment()), eq(URLFetchServiceImpl.PACKAGE), eq("Fetch"), eq(requestProto.toByteArray()))).thenReturn(responseProto.toByteArray());
    HTTPResponse response = new URLFetchServiceImpl().fetch(request);
    assertThat(response.getResponseCode()).isEqualTo(200);
    assertThat(new String(response.getContent(), UTF_8)).isEqualTo(responseContent);
}
Also used : URLFetchResponse(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse) ByteString(com.google.protobuf.ByteString) URLFetchRequest(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest) URL(java.net.URL) Test(org.junit.Test)

Example 8 with URLFetchResponse

use of com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse in project appengine-java-standard by GoogleCloudPlatform.

the class LocalURLFetchCertValidationTest method testCertNotVerifiedWithoutAsking.

@Test
public void testCertNotVerifiedWithoutAsking() throws Exception {
    LocalRpcService.Status status = new LocalRpcService.Status();
    URLFetchRequest request = URLFetchRequest.newBuilder().setMethod(RequestMethod.GET).setUrl(urlWithInvalidCert).setMustValidateServerCertificate(false).setFollowRedirects(false).build();
    URLFetchResponse response = fetchService.fetch(status, request);
    assertThat(status.getErrorCode()).isEqualTo(ErrorCode.OK.getNumber());
    assertThat(response.getStatusCode()).isEqualTo(302);
}
Also used : URLFetchResponse(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse) LocalRpcService(com.google.appengine.tools.development.LocalRpcService) URLFetchRequest(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest) Test(org.junit.Test)

Example 9 with URLFetchResponse

use of com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse in project appengine-java-standard by GoogleCloudPlatform.

the class URLFetchServiceImplTest method testSync_SimpleDELETE.

@Test
public void testSync_SimpleDELETE() throws Exception {
    String responseContent = "<p>This is the desired response.</p>";
    URL url = new URL("http://google.com/foo");
    HTTPRequest request = new HTTPRequest(url, HTTPMethod.DELETE);
    URLFetchRequest requestProto = URLFetchRequest.newBuilder().setUrl(url.toString()).setMethod(RequestMethod.DELETE).setFollowRedirects(true).build();
    URLFetchResponse responseProto = URLFetchResponse.newBuilder().setStatusCode(200).setContent(ByteString.copyFromUtf8(responseContent)).build();
    when(delegate.makeSyncCall(same(ApiProxy.getCurrentEnvironment()), eq(URLFetchServiceImpl.PACKAGE), eq("Fetch"), eq(requestProto.toByteArray()))).thenReturn(responseProto.toByteArray());
    HTTPResponse response = new URLFetchServiceImpl().fetch(request);
    assertThat(response.getResponseCode()).isEqualTo(200);
    assertThat(new String(response.getContent(), UTF_8)).isEqualTo(responseContent);
}
Also used : URLFetchResponse(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse) ByteString(com.google.protobuf.ByteString) URLFetchRequest(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest) URL(java.net.URL) Test(org.junit.Test)

Example 10 with URLFetchResponse

use of com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse in project appengine-java-standard by GoogleCloudPlatform.

the class URLFetchServiceImplTest method testSync_SimpleGET.

@Test
public void testSync_SimpleGET() throws Exception {
    URL url = new URL("http://google.com/foo");
    HTTPRequest request = new HTTPRequest(url);
    String responseContent = "<p>This is the desired response.</p>";
    URLFetchRequest requestProto = URLFetchRequest.newBuilder().setUrl(url.toString()).setMethod(RequestMethod.GET).setFollowRedirects(true).build();
    URLFetchResponse responseProto = URLFetchResponse.newBuilder().setStatusCode(200).setContent(ByteString.copyFromUtf8(responseContent)).build();
    when(delegate.makeSyncCall(same(ApiProxy.getCurrentEnvironment()), eq(URLFetchServiceImpl.PACKAGE), eq("Fetch"), eq(requestProto.toByteArray()))).thenReturn(responseProto.toByteArray());
    HTTPResponse response = new URLFetchServiceImpl().fetch(request);
    assertThat(response.getResponseCode()).isEqualTo(200);
    assertThat(new String(response.getContent(), UTF_8)).isEqualTo(responseContent);
    assertThat(response.getFinalUrl()).isNull();
}
Also used : URLFetchResponse(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse) ByteString(com.google.protobuf.ByteString) URLFetchRequest(com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest) URL(java.net.URL) Test(org.junit.Test)

Aggregations

URLFetchResponse (com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchResponse)21 URLFetchRequest (com.google.appengine.api.urlfetch.URLFetchServicePb.URLFetchRequest)19 URL (java.net.URL)18 Test (org.junit.Test)16 ByteString (com.google.protobuf.ByteString)11 SocketTimeoutException (java.net.SocketTimeoutException)3 ApiProxy (com.google.apphosting.api.ApiProxy)2 IOException (java.io.IOException)2 FutureWrapper (com.google.appengine.api.utils.FutureWrapper)1 LatencyPercentiles (com.google.appengine.tools.development.LatencyPercentiles)1 LocalRpcService (com.google.appengine.tools.development.LocalRpcService)1 ApplicationException (com.google.apphosting.api.ApiProxy.ApplicationException)1 SSLException (javax.net.ssl.SSLException)1 HttpEntity (org.apache.http.HttpEntity)1 HttpResponse (org.apache.http.HttpResponse)1 HttpRequestBase (org.apache.http.client.methods.HttpRequestBase)1 BasicHttpParams (org.apache.http.params.BasicHttpParams)1 HttpParams (org.apache.http.params.HttpParams)1