示例#1
0
        public void ConstructorShouldCreateInstance_WhenValidParameterIsPassed()
        {
            //Arrange
            var coffeeMock = new Mock <ICoffee>();

            //Act
            var finalOrderViewModel = new FinalOrderViewModel(coffeeMock.Object);

            //Assert
            Assert.That(finalOrderViewModel, Is.InstanceOf <FinalOrderViewModel>());
        }
示例#2
0
        public void ConstructorShouldPopulatePriceProperty_WhenValidParameterIsPassed()
        {
            //Arrange
            var     coffeeMock = new Mock <ICoffee>();
            decimal cost       = 3.67m;

            coffeeMock.Setup(m => m.Cost()).Returns(cost);

            //Act
            var finalOrderViewModel = new FinalOrderViewModel(coffeeMock.Object);

            //Assert
            coffeeMock.Verify(p => p.FullDescription, Times.Once());
            Assert.That(finalOrderViewModel.Price, Is.EqualTo(cost));
        }
示例#3
0
        public void ConstructorShouldPopulateFullDescriptionProperty_WhenValidParameterIsPassed()
        {
            //Arrange
            var    coffeeMock  = new Mock <ICoffee>();
            string description = "Americano Milk";

            coffeeMock.Setup(p => p.FullDescription).Returns(description);

            //Act
            var finalOrderViewModel = new FinalOrderViewModel(coffeeMock.Object);

            //Assert
            coffeeMock.Verify(p => p.FullDescription, Times.Once());
            Assert.That(finalOrderViewModel.FullDescription, Contains.Substring(description));
        }
示例#4
0
        [HttpPost] //AJAX
        public ActionResult Index()
        {
            OrderWizardViewModel orderWizardVM = new OrderWizardViewModel(this.menuProvider);

            if (TryUpdateModel(orderWizardVM) && ModelState.IsValid)
            {
                var emptyOrder = this.orderFactory.CreateOrder();
                var order      = orderWizardVM.TransferDataTo(emptyOrder);

                var coffee = this.store.ProcessOrder(order);
                TempData["Order"] = coffee;

                FinalOrderViewModel finalOrderViewModel = new FinalOrderViewModel(coffee);

                return(PartialView("Success", finalOrderViewModel));
            }

            return(View(orderWizardVM));
        }