Ejemplo n.º 1
0
        public void DeleteItemsTest()
        {
            IListModel <IEventModel> model = new ListModel <IEventModel>();

            List <IItemModelAdapter <IEventModel> > items = new List <IItemModelAdapter <IEventModel> >();

            ItemModelAdapterForPassive <IEventModel> ivanovo = new ItemModelAdapterForPassive <IEventModel>(new EventModel(235235, "Ivanovo", DateTime.Now, "Ivanovo station. 5 min."));

            items.Add(ivanovo);

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(945853, "Airport", DateTime.Now, "Airport station. 15 min.")));

            ItemModelAdapterForPassive <IEventModel> lake = new ItemModelAdapterForPassive <IEventModel>(new EventModel(124590, "Lake", DateTime.Now, "Lake station. 5 min. Temporarily closed."));

            items.Add(lake);

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(744935, "Central station.", DateTime.Now, "Central station. 7 min.")));

            model.AddItems(items);

            List <IItemModelAdapter <IEventModel> > eventsForDelete = new List <IItemModelAdapter <IEventModel> >();

            eventsForDelete.Add(ivanovo);
            eventsForDelete.Add(lake);

            model.DeleteItems(eventsForDelete);

            var restOfEvents = model.GetItems();

            Assert.IsTrue(!restOfEvents.Contains(ivanovo) && !restOfEvents.Contains(lake));
        }
Ejemplo n.º 2
0
        public void UpdateTest()
        {
            IListModel <IEventModel> model = new ListModel <IEventModel>();

            List <IItemModelAdapter <IEventModel> > items = new List <IItemModelAdapter <IEventModel> >();

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(235235, "Ivanovo", DateTime.Now, "Ivanovo station. 5 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(945853, "Airport", DateTime.Now, "Airport station. 15 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(124590, "Lake", DateTime.Now, "Lake station. 5 min. Temporarily closed.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(744935, "Central station.", DateTime.Now, "Central station. 7 min.")));

            model.AddItems(items);

            List <IItemModelAdapter <IEventModel> > itemsFromUpdate = new List <IItemModelAdapter <IEventModel> >();

            model.Updated += (sender, e) =>
            {
                itemsFromUpdate.AddRange(e.List.GetItems());
            };

            model.Update();

            //множества совпадают
            Assert.IsTrue(items.Except(itemsFromUpdate).Count() == 0 && itemsFromUpdate.Except(items).Count() == 0);
        }
        public void ProcessCanNotBeUpdatedWhileItEdit()
        {
            IListModel <IEventModel> model = new ListModel <IEventModel>();

            List <IItemModelAdapter <IEventModel> > items = new List <IItemModelAdapter <IEventModel> >();

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(235235, "Ivanovo", DateTime.Now, "Ivanovo station. 5 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(945853, "Airport", DateTime.Now, "Airport station. 15 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(124590, "Lake", DateTime.Now, "Lake station. 5 min. Temporarily closed.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(744935, "Central station.", DateTime.Now, "Central station. 7 min.")));

            model.AddItems(items);

            var creator           = new EventViewModelCreator();
            var eventModelCreator = new EventModelAdapterCreator();

            var vmFirst = new ListViewModel <IEventModel, IEventViewModel, IDetailEventViewModel>(model, creator, eventModelCreator);

            vmFirst.LetUpdate = false;
            IListViewModel <IEventModel, IEventViewModel, IDetailEventViewModel> viewModelFirst = vmFirst;

            var itemsVMFirst = viewModelFirst.ItemsVM;

            var vmSecond = new ListViewModel <IEventModel, IEventViewModel, IDetailEventViewModel>(model, creator, eventModelCreator);

            vmSecond.LetUpdate = false;
            IListViewModel <IEventModel, IEventViewModel, IDetailEventViewModel> viewModelSecond = vmSecond;

            var itemsVMSecond = viewModelSecond.ItemsVM;


            viewModelFirst.EditListCommand.Execute(null);

            viewModelSecond.EditListCommand.Execute(null);

            viewModelSecond.AddItemCommand.Execute(null);

            viewModelSecond.CurrentVM.DataViewModel.Id          = 5374623654;
            viewModelSecond.CurrentVM.DataViewModel.Name        = "XX century";
            viewModelSecond.CurrentVM.DataViewModel.Description = "station was built in XX century.";

            viewModelSecond.CurrentVM.SaveCommand.Execute(null);

            viewModelSecond.SaveListCommand.Execute(null);

            Assert.IsNull(itemsVMFirst.FirstOrDefault(ev => ev.DataViewModel.Name == "XX century"));

            Assert.IsTrue(itemsVMFirst.Count == 4);
        }
Ejemplo n.º 4
0
        public void AddItemsTest()
        {
            IListModel <IEventModel> model = new ListModel <IEventModel>();

            List <IItemModelAdapter <IEventModel> > items = new List <IItemModelAdapter <IEventModel> >();

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(235235, "Ivanovo", DateTime.Now, "Ivanovo station. 5 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(945853, "Airport", DateTime.Now, "Airport station. 15 min.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(124590, "Lake", DateTime.Now, "Lake station. 5 min. Temporarily closed.")));

            items.Add(new ItemModelAdapterForPassive <IEventModel>(new EventModel(744935, "Central station.", DateTime.Now, "Central station. 7 min.")));

            model.AddItems(items);

            var addedEvents = model.GetItems();

            Assert.IsTrue(items.Count == addedEvents.Count());
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            ShopModel FishAndMeatShop = new ShopModel("FishAndMeat", "Oswin St, 3", "Very, very good");


            List <IItemModelAdapter <ProductModel> > fishAndMeatItems = new List <IItemModelAdapter <ProductModel> >();

            fishAndMeatItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Milk", 5, 4.56)));

            fishAndMeatItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Mushroom", 5, 9.88)));

            fishAndMeatItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Chicken", 2, 6.17)));

            fishAndMeatItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Soup", 3, 2.34)));

            fishAndMeatItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Cheese", 7, 3.96)));

            FishAndMeatShop.AddItems(fishAndMeatItems);



            ShopModel PenAndAppleShop = new ShopModel("PenAndApple", "Rushworth St, 34", "Super shop");


            List <IItemModelAdapter <ProductModel> > PenAndAppleItems = new List <IItemModelAdapter <ProductModel> >();

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Milk", 10, 5.56)));

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Wieners", 4, 4.38)));

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Chicken", 3, 5.22)));

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Fish", 2, 4.55)));

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Bread", 5, 1.24)));

            PenAndAppleItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Сhips", 3, 4.21)));

            PenAndAppleShop.AddItems(PenAndAppleItems);



            ShopModel GoodFoodShop = new ShopModel("GoodFood", "Scott Lidgett Cres, 24", "Sale everytime");


            List <IItemModelAdapter <ProductModel> > goodFoodItems = new List <IItemModelAdapter <ProductModel> >();

            goodFoodItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Milk", 4, 3.55)));

            goodFoodItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Mushroom", 5, 9.88)));

            goodFoodItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Wine", 2, 3.23)));

            goodFoodItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Soup", 5, 3.88)));

            goodFoodItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Bread", 3, 4.66)));

            GoodFoodShop.AddItems(goodFoodItems);



            ShopModel _7DaysShop = new ShopModel("7Days", "Plough Way, 55", "Open everytime");


            List <IItemModelAdapter <ProductModel> > _7DaysShopItems = new List <IItemModelAdapter <ProductModel> >();

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Milk", 2, 4.55)));

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Wieners", 10, 5.32)));

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Chicken", 2, 5.66)));

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Сhips", 5, 2.10)));

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Soup", 4, 5.24)));

            _7DaysShopItems.Add(new ItemModelAdapterForPassive <ProductModel>(new ProductModel("Cheese", 2, 4.33)));

            _7DaysShop.AddItems(_7DaysShopItems);


            IListModel <ShopModel> shopsModel = new ListModel <ShopModel>();

            List <IItemModelAdapter <ShopModel> > shops = new List <IItemModelAdapter <ShopModel> >();

            shops.Add(new ItemModelAdapterForPassive <ShopModel>(FishAndMeatShop));

            shops.Add(new ItemModelAdapterForPassive <ShopModel>(PenAndAppleShop));

            shops.Add(new ItemModelAdapterForPassive <ShopModel>(GoodFoodShop));

            shops.Add(new ItemModelAdapterForPassive <ShopModel>(_7DaysShop));

            shopsModel.AddItems(shops);


            var shopCreator      = new ViewModelShopCreator();
            var shopModelCreator = new ShopModelAdapterCreator();

            var vmList = new ListViewModelWithTimer <ShopModel, ShopViewModel, ShopDetailViewModel>(shopsModel, shopCreator, shopModelCreator, 10);

            //var vmList = new ListViewModel<ShopModel, ShopViewModel, ShopDetailViewModel>(shopsModel, shopCreator, shopModelCreator);
            vmList.LetUpdate = true;
            ShopsTop         = vmList;

            vmList           = new ListViewModelWithTimer <ShopModel, ShopViewModel, ShopDetailViewModel>(shopsModel, shopCreator, shopModelCreator, 10);
            vmList.LetUpdate = true;
            ShopsBottom      = vmList;

            this.DataContext = this;
        }