public void TastStateConditions() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.AreEqual(vm.CurrentState, State.NoData); vm.Init(null); catsData.TokenCource = new CancellationTokenSource(); vm.Init(null); Assert.AreEqual(vm.CurrentState, State.Loading); catsData.TokenCource.Cancel(); catsData.TokenCource = null; Assert.AreEqual(vm.CurrentState, State.Error); catsData.Cats = new List <ImageModel> { new ImageModel(0, String.Empty, String.Empty, String.Empty) }; vm.Init(null); Assert.AreEqual(vm.CurrentState, State.Normal); }
public void AddToFavoriteTest() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); catsStorage.Cats = new List <ImageModel> { new ImageModel(27, String.Empty, String.Empty, String.Empty), new ImageModel(37, String.Empty, String.Empty, String.Empty), }; var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.IsTrue(vm.FavoriteCommand.CanExecute(catsStorage.Cats.First())); vm.FavoriteCommand.Execute(catsStorage.Cats.First()); Assert.IsTrue(vm.Cats.First().IsFavorite); Assert.IsFalse(vm.Cats.Last().IsFavorite); Assert.IsTrue(catsStorage.Cats.First().IsFavorite); Assert.IsFalse(catsStorage.Cats.Last().IsFavorite); Assert.AreEqual(catsStorage.CatsFavoritesIds.Count, 1); Assert.AreEqual(catsStorage.CatsFavoritesIds.First(), catsStorage.Cats.First().Id); }
public void ThereAreFavoritesInStorageTest() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); catsStorage.Cats = new List <ImageModel> { new ImageModel(27, String.Empty, String.Empty, String.Empty), new ImageModel(37, String.Empty, String.Empty, String.Empty), }; var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.IsFalse(vm.Cats.Any(model => model.IsFavorite)); catsStorage.CatsFavoritesIds = new List <int> { catsStorage.Cats.First().Id }; vm.Init(null); Assert.AreEqual(1, vm.Cats.Count(model => model.IsFavorite)); }
public void StorageTest() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); catsData.Cats = new List <ImageModel> { new ImageModel(27, String.Empty, String.Empty, String.Empty), new ImageModel(37, String.Empty, String.Empty, String.Empty), }; var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.AreEqual(catsStorage.Cats.Count, 2); Assert.AreEqual(catsStorage.Cats.Last().Id, 37); vm.Init(null); Assert.AreEqual(catsData.InvokingCount, 1); }
public void ItemWasChangedTest() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); catsStorage.Cats = new List <ImageModel> { new ImageModel(27, String.Empty, String.Empty, String.Empty), new ImageModel(37, String.Empty, String.Empty, String.Empty), }; var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.AreEqual(catsStorage.SetCatsCount, 1); Assert.IsTrue(vm.ItemWasChangedCommand.CanExecute(catsStorage.Cats.First())); vm.ItemWasChangedCommand.Execute(catsStorage.Cats.First()); Assert.AreEqual(catsStorage.SetCatsCount, 2); }
public void RepeatTest() { var catsStorage = new CatsStorage(); var catsData = new CatsData(); var vm = new ImagesViewModel(catsStorage, catsData); vm.Init(null); Assert.IsNull(vm.Cats); catsData.Cats = new List <ImageModel> { new ImageModel(27, String.Empty, String.Empty, String.Empty), new ImageModel(37, String.Empty, String.Empty, String.Empty), }; Assert.IsTrue(vm.RepeatCommand.CanExecute(null)); vm.RepeatCommand.Execute(null); Assert.AreEqual(vm.Cats.Count, 2); }