public void CheckForBinanceException(int statusCode, String body) { if (statusCode >= 200 && statusCode <= 299) { return; } else if (statusCode == 429) { throw RateLimitedException.CreateFromPayload(body); } else if (statusCode == 418) { throw IpBannedException.CreateFromPayload(body); } else if (statusCode >= 400 && statusCode <= 499) { throw MalformedRequestException.CreateFromPayload(body); } else if (statusCode >= 500 && statusCode <= 599) { throw InternalErrorException.CreateFromPayload(body); } else { throw new BinanceException(0, body); } }
public Task HandleMalformedRequest(MalformedRequestException ex, HttpContext httpContext) { httpContext.Response.StatusCode = 422; return(options.JsonSerializer.SerializeToResponse(httpContext.Response, new ErrorModel { Errors = ex.BindingErrors }, httpContext.RequestAborted)); }
public async Task RecordingAnExceptionLogHelperMeetsVerification() { // arrange var exception = new MalformedRequestException(); var sut = MakeSUT(); GetMock(sut.LoggerHelper) .Setup(x => x.LogException(sut.Log, sut.CorrelationID, exception)); // act await sut.ExceptionDetail(exception); // assert GetMock(sut.Log).VerifyAll(); GetMock(sut.LoggerHelper).VerifyAll(); }