protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, System.Threading.CancellationToken cancellationToken)
{
MockLogger.Test("{0} SendAsync, responseType: {1}", prefix, ResponseType);
HttpRequestMessage = request;
switch (ResponseType)
{
case ResponseType.CLIENT_PROTOCOL_EXCEPTION:
throw new WebException("testResponseError");
case ResponseType.WRONG_JSON:
return GetOkResponse("not a json response");
case ResponseType.EMPTY_JSON:
return GetOkResponse("{ }");
case ResponseType.INTERNAL_SERVER_ERROR:
return GetMockResponse("{ \"message\": \"testResponseError\"}", HttpStatusCode.InternalServerError);
case ResponseType.MESSAGE:
return GetOkResponse("{ \"message\": \"response OK\"}");
case ResponseType.ATTRIBUTION:
//return GetOkResponse("{ \"attribution\" : {\"nothing\" : \"somevalue\"}}");
return GetOkResponse("{ \"attribution\" : {" +
"\"tracker_token\" : \"ttValue\" , " +
"\"tracker_name\" : \"tnValue\" , " +
"\"network\" : \"nValue\" , " +
"\"campaign\" : \"cpValue\" , " +
"\"adgroup\" : \"aValue\" , " +
"\"creative\" : \"ctValue\" , " +
"\"click_label\" : \"clValue\" } }");
case ResponseType.ASK_IN:
return GetOkResponse("{ \"ask_in\" : 4000 }");
}
return null;
}