public async Task <int> GenerateItemsAsync(int count) { int generatedCount = 0; int failedAttempts = 0; var productGenerator = new RandomProductGenerator(HostingEnvironment.ContentRootPath + "\\TestImages"); while (generatedCount < count && failedAttempts < 3) { var productsEnumerable = productGenerator.GetRandomProducts(count - generatedCount); var productList = productsEnumerable.ToList(); await CreateOrUpdateRelatedDataAsync(productList); foreach (var product in productList) { var catIds = product.ProductToCategory.Select(x => x.Category.Id); var result = await ShopManager.CreateProductAsync(product, product.Images, catIds, product.Descriptions); if (!result.Succeeded) { failedAttempts++; } else { generatedCount++; } } } return(generatedCount); }
public void GeneratesProducts() { //arrange var prodGen = new RandomProductGenerator(imagesPath); var genCount = 3; //act var prods = prodGen.GetRandomProducts(genCount); Assert.True(prods.Count() == genCount); }