private void SetupMeals() { var meal = new Meal(); meal.SetOwner(factories); meal.Id = Guid.NewGuid(); var mealItem = new MealItem(); mealItem.SetOwner(factories); mealItem.Value = 100; meal.InitializeItems(new List<MealItem> { mealItem }); factories.Meals.Returns(new List<Meal> { meal }); factories.CreateMeal().Returns(_ => { factories.Meals.Add(meal); return meal; }); }
public void InvalidatesProductNameAfterAllChangesAreDoneWhenAddsCopyOfItem() { var mealItem = new MealItem(); mealItem.SetOwner(factories); factories.CreateMealItem().Returns(mealItem); factories.Finder.Returns(new FinderImpl(factories)); factories.Products.Returns(new Fixture().CreateMany<Product>().ToList()); sut.Load(); backNavigation.AddCopyOfThisItem = new MealItem { ProductId = factories.Products.First().Id }; backNavigation.AddCopyOfThisItem.SetOwner(factories); var productName = string.Empty; sut.Subject.Items.CollectionChanged += delegate { var item = sut.Subject.Items.First(); item.PropertyChanged += (_, e) => { if (e.PropertyName == "ProductName") productName = item.ProductName; }; }; sut.ReturnedFromNavigation(); Assert.AreEqual(factories.Products.First().Name, productName); }
public MealItem CreateMealItem() { var mealItem = new MealItem(); mealItem.SetOwner(this); return mealItem; }
public void TestInitialize() { factories = Substitute.For<Factories>(); meal = new Meal(); sut = new MealViewModel(meal, factories); meal.SetOwner(factories); meal.InitializeItems(new List<MealItem>()); factories.CreateMealItem().Returns(_ => { var mealItem = new MealItem(); mealItem.SetOwner(factories); return mealItem; }); var fixture = new Fixture(); factories.Products.Returns(fixture.CreateMany<Product>(10).ToList()); factories.Finder.Returns(new FinderImpl(factories)); }