Ejemplo n.º 1
0
        public void Should_Init_Item_With_Count_1()
        {
            // Arrange
            var title = "some bought item";

            // Act
            var boughtItem = new BoughtItem(title);

            // Assert
            Assert.Equal(1, boughtItem.BoughtCount);
        }
Ejemplo n.º 2
0
 public void Add(BoughtItem item)
 {
     var boughtItem = Items.FirstOrDefault(x => x.Title == item.Title);
     if (boughtItem == null)
     {
         this.Items.Add(item);
     }
     else
     {
         boughtItem.BoughtCount++;
     }
 }
Ejemplo n.º 3
0
        private View GetItemView(int position, BoughtItem item, View convertView)
        {
            var view = convertView ?? this._inflater.Inflate(Resource.Layout.PurchasedItem, null);

            var count = view.FindViewById<TextView>(Resource.Id.Count);
            count.Text = item.BoughtCount.ToString();

            var title = view.FindViewById<TextView>(Resource.Id.Title);
            title.Text = item.Title;

            return view;
        }
        public void Add_Item()
        {
            // Arrange
            var shoppingService = new ShoppingService(_sqliteConnection);
            var vm = new PastPurchasesViewModel(shoppingService);
            var item = new BoughtItem("item 1");

            // Act
            vm.Add(item);

            // Assert
            Assert.Contains<BoughtItem>(vm.Items, x => x == item);
        }
        public void Copy_Item_To_Shopping_List()
        {
            // Arrange
            var shoppingService = new ShoppingService(_sqliteConnection);
            var vm = new PastPurchasesViewModel(shoppingService);
            var itemTitle = "item1";
            var item = new BoughtItem(itemTitle);
            vm.Add(item);

            // Act
            vm.CopyItemToShoppingList(item);

            // Assert
            Assert.Equal(1, shoppingService.Items.Count);
            Assert.Contains<Item>(shoppingService.Items, x => x.Title == itemTitle);
        }
        public void Add_Item_Already_Added()
        {
            // Arrange
            var shoppingService = new ShoppingService(_sqliteConnection);
            var vm = new PastPurchasesViewModel(shoppingService);
            var item = new BoughtItem("item 1");
            vm.Add(item);
            var item2 = new BoughtItem("item 1");

            // Act
            vm.Add(item);

            // Assert
            Assert.Equal(1, vm.Items.Count);
            Assert.Equal(2, vm.Items.First().BoughtCount);
        }
Ejemplo n.º 7
0
        public void AddToBoughtItems(Item item)
        {
            var boughtItem = this.BoughtItems.FirstOrDefault(x => x.Title == item.Title);

            if (boughtItem != null)
            {
                ++boughtItem.BoughtCount;
                var bi = _sqliteConnection.Table<BoughtItem>().FirstOrDefault(x => x.Title == item.Title);
                bi.BoughtCount++;
                lock(_locker)
                {
                    _sqliteConnection.Update(bi);
                    _sqliteConnection.Commit();
                }
            }
            else
            {
                var newBoughtItem = new BoughtItem()
                {
                    Title = item.Title,
                    BoughtCount = 1
                };
                this.BoughtItems.Add(newBoughtItem);
            }

            this.BoughtItems = new ObservableCollection<BoughtItem>(this.BoughtItems.OrderByDescending(x => x.BoughtCount));
            BoughtItems.CollectionChanged += BoughtItems_CollectionChanged;
        }