Exemplo n.º 1
0
        public async Task Create_ReturnsViewResultWithCreateInvoiceViewModel()
        {
            var suppliers = new List <Supplier> {
                new Supplier()
                {
                    Id = 1
                }
            };
            var subscribers = new List <Subscriber> {
                new Subscriber()
                {
                    Id = 1
                }
            };
            // Arrange
            var mockRepo = new Mock <IInvoicesRepository>();

            mockRepo.Setup(repo => repo.ListSuppliersAsync()).ReturnsAsync(suppliers);
            mockRepo.Setup(repo => repo.ListSubscribersAsync()).ReturnsAsync(subscribers);
            var controller = new InvoicesController(mockRepo.Object);

            // Act
            var result = await controller.Create();

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <CreateInvoiceViewModel>(viewResult.ViewData.Model);

            Assert.Equal(suppliers.First().Id, int.Parse(model.Suppliers.First().Value));
            Assert.Equal(subscribers.First().Id, int.Parse(model.Subscribers.First().Value));
        }
Exemplo n.º 2
0
        public async Task Create_Redirects()
        {
            var invoice = new Invoice();
            // Arrange
            var mockRepo = new Mock <IInvoicesRepository>();

            mockRepo.Setup(repo => repo.AddInvoiceAsync(invoice))
            .ReturnsAsync(invoice);
            var controller = new InvoicesController(mockRepo.Object);

            // Act
            var invoiceViewModel = new CreateInvoiceViewModel();
            var result           = await controller.Create(invoiceViewModel);

            // Assert
            var redirect = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Index", redirect.ActionName);
        }
        public void Create_ShouldReturn_Success()
        {
            // Arrange
            mockInvoicesService.Setup(i => i.Add("userId", "number"));
            InvoicesController controller = new InvoicesController(new DeliveryMessage(), mockInvoicesService.Object);

            try
            {
                // Act
                result = controller.Create(new SearchInvoiceViewModel()) as ViewResult;
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message + " | " + ex.StackTrace;
            }

            // Assert
            Assert.IsNotNull(result, errorMessage);
        }