public void CalculateMetrics_By_InputModel_Should_Calculate_Any_Development_Site(InputModel inputModel) { var siteCalculatorService = new SiteCalculatorService(); var output = siteCalculatorService.CalculateMetrics(inputModel); Assert.NotNull(output); Assert.NotNull(output.SiteArea); Assert.Equal(50000, output.SiteArea); Assert.NotNull(output.SitePerimeter); Assert.Equal(1200, output.SitePerimeter); }
public void CalculateMetrics_Should_Calculate_Any_Development_Site(IDevelopmentSite developmentSite) { var siteCalculatorService = new SiteCalculatorService(); var output = siteCalculatorService.CalculateMetrics(developmentSite); Assert.NotNull(output); Assert.NotNull(output.SiteArea); Assert.Equal(50000, output.SiteArea); Assert.NotNull(output.SitePerimeter); Assert.Equal(2100, output.SitePerimeter); if (developmentSite is SubDivisionSite) { Assert.NotNull(output.NumberOfLots); } else { Assert.NotNull(output.BuildingGfa); Assert.NotNull(output.BuildingFootPrint); } }