public override void Context()
        {
            base.Context();
            _basket = GetCurrentViewModelAsBasket();
            _basketItem = _basket.BasketItems.First(x => x.ProductId == ProductOneId);
            _basketItem.UpdatedQuantity = UpdatedQuantity;
            BasketControllerClient.Expect(x => x.UpdateProductQuantityAsync(ProductOneId, UpdatedQuantity)).Return(TaskEx.FromResult(0));

            _basket.UpdateProductQuantityCommand.Execute(ProductOneId);
        }
 public virtual async Task LoadBasketItems()
 {
     var basketItemDtos = await _basketControllerClient.GetBasketItemsAsync();
     _basketItems.Clear();
     basketItemDtos.Each(x =>
     {
         var basketItem = new BasketItemViewModel(x);
         basketItem.PropertyChanged += (sender, args) =>
         {
             if (args.PropertyName == "Quantity")
             {
                 _updateSubtotal();
             }
         }; 
         _basketItems.Add(basketItem);
     });
     _updateSubtotal();
 }