Exemplo n.º 1
0
        public void GetToDoItemsTest()
        {
            var mediator  = new Mock <IMediator>();
            var patchToDo = new Mock <IPatchToDo>();
            List <ToDoItemExt> toDoItemExt = new List <ToDoItemExt>
            {
                new ToDoItemExt()
                {
                    Id    = 1,
                    Name  = "Item 1",
                    Label = "Label 1"
                },
                new ToDoItemExt()
                {
                    Id    = 2,
                    Name  = "Item 2",
                    Label = "Label 2"
                }
            };
            EmptyQuery <List <Domain.Models.ToDoItemExt> > command = new EmptyQuery <List <Domain.Models.ToDoItemExt> >();

            mediator.Setup(e => e.Send(command, new System.Threading.CancellationToken())).Returns(Task.FromResult(toDoItemExt));
            ToDoItemsController controller = new ToDoItemsController(patchToDo.Object, mediator.Object);
            var result               = controller.GetToDoItems(command);
            var response             = result.Result as OkObjectResult;
            List <ToDoItemExt> items = (List <ToDoItemExt>)response.Value;

            Assert.AreEqual(1, items[0].Id);
            Assert.AreEqual("Item 1", items[0].Name);
            Assert.AreEqual("Label 1", items[0].Label);

            Assert.AreEqual(2, items[1].Id);
            Assert.AreEqual("Item 2", items[1].Name);
            Assert.AreEqual("Label 2", items[1].Label);
        }
Exemplo n.º 2
0
        public ToDoItemsControllerTests()
        {
            var options = new DbContextOptionsBuilder <ToDoItemContext>().UseSqlite("DataSource=:memory:")
                          .Options;

            _context = new ToDoItemContext(options);
            _context.Database.OpenConnection();
            _context.Database.EnsureCreated();
            _sut = new ToDoItemsController(_context);
        }
        public void GetReturnsNotFound()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ToDoItem> >();
            var controller     = new ToDoItemsController(mockRepository.Object, _mapper);

            // Act
            IHttpActionResult actionResult = controller.Get(10);

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(NotFoundResult));
        }
Exemplo n.º 4
0
        public void Find_ReturnsNotFoundResult_WhenNonExistingIdIsPassed()
        {
            // Arrange
            String testId   = "123";
            var    mockRepo = new Mock <IToDoRepository>();

            mockRepo.Setup(repo => repo.Find(testId)).Returns((ToDoItem)null);
            var controller = new ToDoItemsController(mockRepo.Object);

            // Act
            var result = controller.Find(testId);

            // Assert
            Assert.IsType <NotFoundObjectResult>(result);
        }
Exemplo n.º 5
0
        public void DeleteToDoItemTest()
        {
            var mediator  = new Mock <IMediator>();
            var patchToDo = new Mock <IPatchToDo>();
            DeleteToDoItemQuery command = new DeleteToDoItemQuery
            {
                ItemId = 1
            };

            mediator.Setup(e => e.Send(command, new System.Threading.CancellationToken())).Returns(Task.FromResult(1));
            ToDoItemsController controller = new ToDoItemsController(patchToDo.Object, mediator.Object);
            var result   = controller.DeleteToDoItem(command);
            var response = result.Result as OkObjectResult;

            Assert.AreEqual(1, (int)response.Value);
        }
        public void PostMethodReturnsIteSavedItem()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ToDoItem> >();
            var controller     = new ToDoItemsController(mockRepository.Object, _mapper);

            // Act
            IHttpActionResult actionResult = controller.Post(new ToDoItemDTO {
                Id = 10, Title = "Test Action"
            });
            var postedResult = actionResult as OkNegotiatedContentResult <ToDoItemDTO>;

            // Assert
            Assert.IsNotNull(postedResult);
            Assert.IsNotNull(postedResult.Content);
            Assert.AreEqual(10, postedResult.Content.Id);
            Assert.AreEqual("Test Action", postedResult.Content.Title);
        }
        public void DeleteReturnsOkNegotiatedContentResultDTO()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ToDoItem> >();

            mockRepository.SetReturnsDefault(new ToDoItem()
            {
                Id = 10
            });

            var controller = new ToDoItemsController(mockRepository.Object, _mapper);

            // Act
            IHttpActionResult actionResult = controller.Delete(10);

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(OkNegotiatedContentResult <ToDoItemDTO>));
        }
Exemplo n.º 8
0
        public async Task GetToDoItems_Successfull()
        {
            //arrange
            Mock <IToDoItemRepo> repoMock = new Mock <IToDoItemRepo>();
            //HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);

            List <ToDoItem> data = new List <ToDoItem>()
            {
                new ToDoItem {
                    Id = 1, AssignedToEmail = "*****@*****.**", DateDue = DateTime.Now.AddDays(2), Description = "Description of to-do item 1", Subject = "Subject 1", Title = "To-do Item Number 1"
                },
                new ToDoItem {
                    Id = 1, AssignedToEmail = "*****@*****.**", DateDue = DateTime.Now.AddDays(2), Description = "Description of to-do item 2", Subject = "Subject 2", Title = "To-do Item Number 2"
                },
                new ToDoItem {
                    Id = 1, AssignedToEmail = "*****@*****.**", DateDue = DateTime.Now.AddDays(2), Description = "Description of to-do item 3", Subject = "Subject 3", Title = "To-do Item Number 3"
                },
                new ToDoItem {
                    Id = 1, AssignedToEmail = "*****@*****.**", DateDue = DateTime.Now.AddDays(2), Description = "Description of to-do item 4", Subject = "Subject 4", Title = "To-do Item Number 4"
                },
                new ToDoItem {
                    Id = 1, AssignedToEmail = "*****@*****.**", DateDue = DateTime.Now.AddDays(2), Description = "Description of to-do item 5", Subject = "Subject 5", Title = "To-do Item Number 5"
                }
            };

            repoMock.Setup(x => x.List()).Returns(Task.FromResult <IList <ToDoItem> >(data));

            ToDoItemsController controller = new ToDoItemsController(repoMock.Object);

            controller.Request = new HttpRequestMessage();
            controller.Request.Properties.Add(HttpPropertyKeys.HttpConfigurationKey, new HttpConfiguration());

            //act
            var result = await controller.GetToDoItems();

            var content = await result.Content.ReadAsAsync <List <ToDoItem> >();

            //assert
            repoMock.Verify(x => x.List(), Times.Once());
            Assert.IsInstanceOfType(result, typeof(HttpResponseMessage), "'result' type must be a HttpResponseMessage");
            Assert.IsInstanceOfType(content, typeof(IList <ToDoItem>), "'content' type must be of IList<ToDoItem>");
            Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
        }
Exemplo n.º 9
0
        public void UpdateToDoItemTest()
        {
            var mediator  = new Mock <IMediator>();
            var patchToDo = new Mock <IPatchToDo>();
            UpdateToDoItemCommand command = new UpdateToDoItemCommand
            {
                ToDoItem = new BaseToDoItem()
                {
                    LabelId    = 2,
                    Name       = "Item 3",
                    IsComplete = false
                }
            };

            mediator.Setup(e => e.Send(command, new System.Threading.CancellationToken())).Returns(Task.FromResult(1));
            ToDoItemsController controller = new ToDoItemsController(patchToDo.Object, mediator.Object);
            var result   = controller.UpdateToDoItem(1, command);
            var response = result.Result as OkObjectResult;

            Assert.AreEqual(1, (int)response.Value);
        }
        public void GetReturnsProductWithTheSameID()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ToDoItem> >();

            mockRepository.SetReturnsDefault(new ToDoItem()
            {
                Id = 10
            });

            var controller = new ToDoItemsController(mockRepository.Object, _mapper);

            // Act
            IHttpActionResult actionResult = controller.Get(10);
            var contentResult = actionResult as OkNegotiatedContentResult <ToDoItemDTO>;

            // Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(10, contentResult.Content.Id);
        }
Exemplo n.º 11
0
        public void AddToDoItemTest()
        {
            var mediator  = new Mock <IMediator>();
            var patchToDo = new Mock <IPatchToDo>();
            AddToDoItemCommand command = new AddToDoItemCommand
            {
                ToDoItem = new Domain.Models.BaseToDoItem()
                {
                    IsComplete = true,
                    LabelId    = 1,
                    Name       = "Item 1",
                    UserId     = 1
                }
            };

            mediator.Setup(e => e.Send(command, new System.Threading.CancellationToken())).Returns(Task.FromResult(1));
            ToDoItemsController controller = new ToDoItemsController(patchToDo.Object, mediator.Object);
            var result   = controller.AddToDoItem(command);
            var response = result.Result as OkObjectResult;

            Assert.AreEqual(1, (int)response.Value);
        }
        public void PutMethodReturnsModifiedItem()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ToDoItem> >();

            mockRepository.SetReturnsDefault(new ToDoItem {
                Id = 10, Title = "Item", Description = "Description"
            });
            var controller = new ToDoItemsController(mockRepository.Object, _mapper);

            var modifiedItem = new ToDoItemDTO {
                Title = "Updated Item", Description = "Updated Description"
            };
            // Act
            IHttpActionResult actionResult = controller.Put(10, modifiedItem);
            var updatedResult = actionResult as OkNegotiatedContentResult <ToDoItemDTO>;

            // Assert
            Assert.IsNotNull(updatedResult);
            Assert.IsNotNull(updatedResult.Content);
            Assert.AreEqual(modifiedItem.Description, updatedResult.Content.Description);
            Assert.AreEqual(modifiedItem.Title, updatedResult.Content.Title);
        }
Exemplo n.º 13
0
 public void SetUp()
 {
     mocksetTodo = new TestDbContext();
     controller  = new ToDoItemsController(mocksetTodo);
     toDoItem    = new ToDoItem();
 }