public async Task ExamplesForCopenhagen() { var request = new RetríeveMunicipalityTaxRequest { Municipality = "Copenhagen", TaxDate = new DateTime(2016, 1, 1) }; var response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.1M, response.Tax); request.TaxDate = new DateTime(2016, 5, 2); response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.4M, response.Tax); request.TaxDate = new DateTime(2016, 7, 10); response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.2M, response.Tax); request.TaxDate = new DateTime(2016, 3, 16); response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.2M, response.Tax); }
public async Task NoTaxSceduleForDate() { var request = new RetríeveMunicipalityTaxRequest { Municipality = "Vaerloese", TaxDate = new DateTime(2016, 1, 1) }; var response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response == null); }
public async Task YearScheduleWhenOnlyYearSchedule() { var request = new RetríeveMunicipalityTaxRequest { Municipality = "Vaerloese", TaxDate = new DateTime(2020, 12, 24) }; var response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.1M, response.Tax); }
public async Task MonthSchedulePreferredForYearWhenDateInMonthSchedule() { var request = new RetríeveMunicipalityTaxRequest { Municipality = "Vaerloese", TaxDate = new DateTime(2020, 11, 10) }; var response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); Assert.True(response != null); Assert.Equal(0.2M, response.Tax); }
public async Task <ActionResult <decimal> > Get([FromQuery] RetríeveMunicipalityTaxRequest request) { // TODO implmement ExceptionHandlerFilter try { IRetríeveMunicipalityTaxResponse response = await businessMunicipalityTaxScheduleRetrieverEngine.RetríeveMunicipalityTax(request); if (response == null) { return(NotFound()); } return(Ok(response)); } catch (Exception) { return(Problem()); } }
public async Task <ActionResult <decimal> > Get([FromQuery] RetríeveMunicipalityTaxRequest request) { try { // TODO implement and use BusinessLogic Engines // TODO read host and path info from config // TODO Implement ExceptionHandlerFilter var result = await simpleRestClient.InvokeServiceAsync(new RestServiceRequest { Method = "get", Path = $"/municipalitytax?Municipality={request.Municipality}&TaxDate={request.TaxDate.ToString("yyyy-MM-dd")}", Host = "https://localhost:6001" }); return(HandleResponse(result)); } catch (Exception) { return(Problem()); } }