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);
        }
示例#2
0
        public void Initialize()
        {
            var loader = new FixtureLoader("v2", FailToCreateRecordsFixture);

            _jToken    = JObject.Parse(loader.ExtractJsonPayload());
            _exception = new DnsimpleValidationException(_jToken);
        }
示例#3
0
        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));
        }
示例#4
0
 public MockResponse(FixtureLoader loader)
 {
     Content = loader.ExtractJsonPayload();
     Headers = loader.ExtractHeaders();
 }