public void TestEvaluate() { // 1. Arrange var products = GenerateTestProducts(); // 2. Act var topProd = ProductEvaluator.Evaluate(products); // 3. Assert Assert.Equal("High rating prod", topProd.ProductName); }
public async Task <IActionResult> Post(IFormFile file) { // full path to file in temp location var filePath = Path.GetTempFileName(); // Create a NULL reference to product Product topProduct = null; using (var stream = new FileStream(filePath, FileMode.Create)) { await file.CopyToAsync(stream); stream.Position = 0; TextReader textReader = new StreamReader(stream); using (var csv = new CsvReader(textReader, CultureInfo.InvariantCulture)) { var products = csv.GetRecords <Product>().ToList(); topProduct = ProductEvaluator.Evaluate(products); } } return(new OkObjectResult(new { top_product = topProduct.ProductName, product_rating = topProduct.Rating })); }