public ActionResult PlaceOrder()
        {
            var user = _userRepository.GetUserByEmail(HttpContext.User.Identity.Name);

            var viewModel = new CheckOutPlaceOrderViewModel
                                {
                                    UserProfile = user.UserProfile
                                };

            return View(viewModel);
        }
        public ActionResult PlaceOrder(CheckOutPlaceOrderViewModel model)
        {
            try {
                var order = _shoppingCartService.CreateOrder(HttpContext.User.Identity.Name, model.UserProfile);

                return RedirectToAction("Complete", order);
            }
            catch {
                return View(model);
            }
        }
        public void Client_can_place_order()
        {
            var viewModel = new CheckOutPlaceOrderViewModel
                                {
                                    UserProfile = User.UserProfile
                                };

            Assert.AreEqual(0, _shoppingCartService.Orders.Count);

            _checkOutController.PlaceOrder(viewModel);

            Assert.Greater(_shoppingCartService.Orders.Count, 0);
        }