public override JToken Execute(IRestRequest request) { RequestUrlSent = new RestClient($"{_baseUrl}/v2/").BuildUri(request).ToString(); MethodSent = request.Method; var rawPayload = _fixtureLoader.ExtractJsonPayload(); string message; switch (StatusCode) { case HttpStatusCode.BadRequest: throw new DnSimpleValidationException(JObject.Parse(rawPayload)); case HttpStatusCode.NotImplemented: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new DnSimpleException(message); case HttpStatusCode.GatewayTimeout: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new DnSimpleException(message); case HttpStatusCode.NotFound: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new NotFoundException(message); } return(!string.IsNullOrEmpty(rawPayload) ? JObject.Parse(rawPayload) : null); }
public void Initialize() { var loader = new FixtureLoader("v2", FailToCreateRecordsFixture); _jToken = JObject.Parse(loader.ExtractJsonPayload()); _exception = new DnsimpleValidationException(_jToken); }
public override IRestResponse Execute(IRestRequest request) { RequestUrlSent = new RestClient($"{_baseUrl}/v2/").BuildUri(request).ToString(); MethodSent = request.Method; try { PayloadSent = (string)request.Parameters.Find(x => x.ContentType.Equals("application/json")).Value; } catch (Exception) { // ignored } var rawPayload = _fixtureLoader.ExtractJsonPayload(); string message; switch (StatusCode) { case HttpStatusCode.BadRequest: throw new DnsimpleValidationException(JObject.Parse(rawPayload)); case HttpStatusCode.NotImplemented: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new DnsimpleException(message); case HttpStatusCode.GatewayTimeout: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new DnsimpleException(message); case HttpStatusCode.NotFound: message = JObject.Parse(rawPayload)["message"]?.ToString(); throw new NotFoundException(message); } return(new MockResponse(_fixtureLoader)); }
public MockResponse(FixtureLoader loader) { Content = loader.ExtractJsonPayload(); Headers = loader.ExtractHeaders(); }