public void ListingTestPercentageDistributionByMake() { var listings = new List <Listing>() { new Listing(1101, "Audi", 3000, 1200, "private") { }, new Listing(1009, "Audi", 2000, 1000, "private") { }, new Listing(1005, "Audi", 1000, 1000, "private") { }, new Listing(1007, "VW", 500, 1000, "dealer") { }, new Listing(1008, "VW", 2000, 1000, "dealer") { }, }; var calculationEngine = new ListingCalculator(); var result = calculationEngine.GetPercentageDistributionResult(listings); Assert.IsNotNull(result); Assert.AreEqual(result.Count, 2); Assert.AreEqual(result[0].Make, "Audi"); Assert.AreEqual(result[0].DistributionPercentage, 60); Assert.AreEqual(result[1].Make, "VW"); Assert.AreEqual(result[1].DistributionPercentage, 40); }
public void ListingTestAveragePricePerSellerType() { var listings = new List <Listing>() { new Listing(1101, "Audi", 3000, 1200, "private") { }, new Listing(1009, "Audi", 2000, 1000, "private") { }, new Listing(1005, "Audi", 1000, 1000, "private") { }, new Listing(1007, "VW", 500, 1000, "dealer") { }, new Listing(1008, "VW", 2000, 1000, "dealer") { }, }; var calculationEngine = new ListingCalculator(); var result = calculationEngine.GetAveragePricePerSellerType(listings); Assert.IsNotNull(result); Assert.AreEqual(result[0].SellerType, "private"); Assert.AreEqual(result[0].AveragePrice, 2000); Assert.AreEqual(result[1].SellerType, "dealer"); Assert.AreEqual(result[1].AveragePrice, 1250); }
/// <summary> /// /// </summary> public ReportResult GetReportResult(string base64FileListings) { var returnResult = new ReportResult(); var listings = CsvParser.ParseCsv <Listing>(base64FileListings); CalculationEngine.ListingCalculator calculator = new ListingCalculator(); returnResult.averagePriceResult = calculator.GetAveragePricePerSellerType(listings); returnResult.percesntageDistributionResult = calculator.GetPercentageDistributionResult(listings); return(returnResult); }