Exemple #1
0
        public void AddProductNoActiveTransaction()
        {
            Mock <DataContext>         dbMock = new Mock <DataContext>();
            Mock <ITransactionManager> transactionManagerMock = new Mock <ITransactionManager>();
            TransactionController      controller             = new TransactionController(dbMock.Object, transactionManagerMock.Object);

            // arrange
            IActionResult result = controller.AddProduct();

            // assert
            Assert.IsType <RedirectToActionResult>(result);
        }
Exemple #2
0
        public void AddProductActiveTransaction()
        {
            Mock <DataContext> dbMock = new Mock <DataContext>();

            dbMock.Setup(q => q.Products).Returns(new[]
            {
                new Product()
                {
                    Id          = 1,
                    Name        = "Poster van Marcel van de Beek",
                    PointsWorth = 7,
                },
                new Product()
                {
                    Id          = 2,
                    Name        = "Noud zijn t-shirt",
                    PointsWorth = 10,
                },
                new Product()
                {
                    Id          = 3,
                    Name        = "CD van Nick en Simon",
                    PointsWorth = 1,
                }
            }.AsQueryable().BuildMockDbSet().Object);
            Mock <ITransactionManager> transactionManagerMock = new Mock <ITransactionManager>();

            transactionManagerMock.SetupGet(q => q.ActiveTransaction).Returns(new Transaction()
            {
                TransactionId = 1
            });
            TransactionController controller = new TransactionController(dbMock.Object, transactionManagerMock.Object);

            // arrange
            IActionResult result = controller.AddProduct();

            // assert
            ViewResult viewResult = Assert.IsType <ViewResult>(result);
            var        viewModel  = Assert.IsAssignableFrom <TransactionAddProductViewModel>(viewResult.ViewData.Model);

            Assert.Equal(3, viewModel.Products.Count());
        }