public void AddsAllMruProducts() { for (int i = 0; i < 2; i++) factories.MruProducts.AddProduct(factories.Products[i]); var sut = new ProductListingViewModel.CategoriesAndProductsLoader(viewModel, true); sut.LoadAsync(); Assert.AreEqual(factories.Products.Count + 2, viewModel.Products.Count); Assert.AreEqual(factories.Products, viewModel.Products.Select(vm => vm.Product).Distinct()); }
public void AddsMruProductWithMruCategory() { factories.MruProducts.AddProduct(factories.Products.First()); var sut = new ProductListingViewModel.CategoriesAndProductsLoader(viewModel, true); sut.LoadAsync(); Assert.AreEqual(factories.Products.Count + 1, viewModel.Products.Count); var mruProducts = viewModel.Products .Where(product => product.Product == factories.Products.First()).ToList(); Assert.AreEqual(2, mruProducts.Count); Assert.AreNotEqual(viewModel.Categories.First(), mruProducts[0].Category); Assert.AreEqual(viewModel.Categories.First(), mruProducts[1].Category); Assert.AreEqual(mruProducts[0].WidthOfFilledCuRect, mruProducts[1].WidthOfFilledCuRect); }
public void WhenFlagIsFalseDoesNotAddMruCategory() { factories.MruProducts.AddProduct(factories.Products.First()); var sut = new ProductListingViewModel.CategoriesAndProductsLoader(viewModel, false); sut.LoadAsync(); Assert.AreEqual(factories.Categories.Count, sut.Categories.Count); }
public void WhenCreatedWithoutViewModelDoesNotAddMruCategory() { factories.MruProducts.AddProduct(factories.Products.First()); var sut = new ProductListingViewModel.CategoriesAndProductsLoader(factories, new BackgroundWorkerSyncFactory()); Assert.AreEqual(factories.Categories.Count, sut.Categories.Count); }
public void WhenMruProductsArePresentDoesAddMruCategory() { factories.MruProducts.AddProduct(factories.Products.First()); factories.Settings.MruProductMaxCount = 15; var sut = new ProductListingViewModel.CategoriesAndProductsLoader(viewModel, true); sut.LoadAsync(); Assert.AreEqual(factories.Categories.Count + 1, sut.Categories.Count); Assert.AreEqual(Translations.RecentlyUsed.Replace("{0}", "15"), sut.Categories.First().Name); }
public void WhenMruProductsAreNotPresentDoesNotAddMruCategory() { var sut = new ProductListingViewModel.CategoriesAndProductsLoader(viewModel, true); sut.LoadAsync(); Assert.AreEqual(factories.Categories.Count, sut.Categories.Count); }