public void ShouldAddTenAdvicesToIngredientAndThenRemoveFive() { var ingredient = IngredientBuilder.BuildIngredient(); _ingredientRepository.Add(ingredient); _ingredientRepository.Persist(); for (int i = 0; i < 10; i++) { var newAdvice = AdviceBuilder.BuildAdvice <IngredientAdvice>("Advice_" + i); ingredient.AddAdvice(newAdvice); _ingredientRepository.Persist(); } var advices = _ingredientRepository.FindOne(i => i != null).IngredientAdvices; for (int i = 0; i < 5; i++) { var indexCopy = i; var adviceToDelete = _ingredientAdviceRepository.FindOne(a => a == advices[indexCopy]); _ingredientAdviceRepository.Delete(adviceToDelete); _ingredientAdviceRepository.Persist(); } _ingredientRepository.Refresh(ingredient); _ingredientRepository.FindOne(i => i != null).IngredientAdvices.Count.ShouldEqual(5); using (var dataContext = GetNewDataContext()) { var result = dataContext.GetTableForType(typeof(IngredientAdvice)).OfType <IngredientAdvice>().ToList(); result.Count.ShouldEqual(5); } }
public void ShouldFindOneAdviceOnProductIngredient() { var product = _productRepository.FindOne(p => p != null); var ingredientAdvice = AdviceBuilder.BuildAdvice <IngredientAdvice>(); product.Ingredients[0].IngredientAdvices.Add(ingredientAdvice); _productRepository.Persist(); using (var dataContext = GetNewDataContext()) { var prod = dataContext.GetTable <Product>().Where(p => p != null).Single(); prod.Ingredients[0].IngredientAdvices.Count.ShouldEqual(1); } }
public void ShouldAddTenAdvicesToIngredient() { var ingredient = IngredientBuilder.BuildIngredient(); _ingredientRepository.Add(ingredient); _ingredientRepository.Persist(); for (int i = 0; i < 10; i++) { var newAdvice = AdviceBuilder.BuildAdvice <IngredientAdvice>("Advice_" + i); ingredient.AddAdvice(newAdvice); _ingredientRepository.Persist(); } _ingredientRepository.FindOne(i => i != null).IngredientAdvices.Count.ShouldEqual(10); using (var dataContext = GetNewDataContext()) { var result = dataContext.GetTableForType(typeof(IngredientAdvice)).OfType <IngredientAdvice>().ToList(); result.Count.ShouldEqual(10); } }