private static SegonaResponse <T> CreateNonSuccessful <T>(HttpStatusCode statusCode, string message)
        {
            var response = new SegonaResponse <T> {
                IsSuccessful = false, Result = default(T), StatusCode = statusCode, HttpMessage = message
            };

            switch (statusCode)
            {
            case HttpStatusCode.BadRequest:
            case HttpStatusCode.Unauthorized:
            case HttpStatusCode.Forbidden:
            case HttpStatusCode.NotFound:
            case HttpStatusCode.InternalServerError:
            case HttpStatusCode.ServiceUnavailable:
                response.Error = JsonConvert.DeserializeObject <ErrorObject>(message);
                break;
            }

            return(response);
        }
Example #2
0
 protected IActionResult ProcessResponse <T>(SegonaResponse <T> response)
 {
     return(Ok(response.HttpMessage));
 }
 protected void AssertInvalidResponse <T>(SegonaResponse <T> response)
 {
     Assert.NotNull(response);
     Assert.False(response.IsSuccessful);
     Assert.NotNull(response.Error);
 }
 protected void AssertValidResponse <T>(SegonaResponse <T> response)
 {
     Assert.NotNull(response);
     Assert.True(response.IsSuccessful);
     Assert.NotNull(response.Result);
 }