public void Setup() { //var repository = _controller.Repository; //repository.DataFilename = $"{AppDomain.CurrentDomain.BaseDirectory}\\..\\..\\..\\Vouchers\\data.json"; // This is to pre-load the vouchers. //repository.GetVouchers(); _controller.Get(0);//preload }
public void Get_ShouldReturnRequestedNumberOfVouchers() { for (var i = 0; i < 1000; i++) { _vouchers.Add(new Voucher { Id = new Guid() }); } var result = _controller.Get(100); Assert.AreEqual(100, result.Count); }
public void Issue_voucher_request_retries_5_after_4_failed_requests() { //GIVEN var requestCount = 0; var sut = new VoucherController(_voucherService); _mockHttpHandler.Clear(); var request = _mockHttpHandler.When(_voucherUrl) .Respond((e) => { requestCount++; if (requestCount < 5) { return(new HttpResponseMessage(HttpStatusCode.BadGateway)); } var successfulResponse = GetSuccessfulVoucherResponse(); return(successfulResponse); }); //WHEN sut.Get(); var numberOfTries = _mockHttpHandler.GetMatchCount(request); //THEN Assert.Equal(5, numberOfTries); }
public void Issue_voucher_request_throws_voucher_not_found_exception() { //GIVEN var sut = new VoucherController(_voucherService); _mockHttpHandler.Clear(); var request = _mockHttpHandler .When(_voucherUrl) .Respond(HttpStatusCode.NotFound); //WHEN //THEN Assert.Throws <VoucherNotFoundException>(() => sut.Get()); }