Beispiel #1
0
        public Guid AddTask(TaskTO task)
        {
            //Step 1: Test Entries
            if (task is null)
            {
                throw new ArgumentNullException(nameof(task));
            }

            if (task.Id != Guid.Empty)
            {
                throw new Exception("Task should not be created from a existing task");
            }
            if (task.IsArchived)
            {
                throw new Exception("Task should not be created as archived");
            }
            if (task.IsCompleted)
            {
                throw new Exception("Task should not be created as completed");
            }
            if (string.IsNullOrWhiteSpace(task.Name))
            {
                throw new Exception("Task should not be created when no name is provided");
            }
            //Step 2 Implement Use case
            //Step 3 return required values

            return(taskRepository.Add(task));
        }
        public void AddTask_ThrowException_WhenTaskIsNull()
        {
            //ARRANGE
            TaskTO task = null;

            //ACT
            var user = new UserRole(TestHelper.GetMockRepository());

            //ASSERT
            var exMessage = Assert.ThrowsException <ArgumentNullException>(() => user.AddTask(task));
        }
        public void AddTask_ReturnTaskId_WhenValidTaskIsProvided()
        {
            //ARRANGE
            var task = new TaskTO
            {
                Name = $"Test Add Task"
            };
            //ACT
            var user   = new UserRole(TestHelper.GetMockRepository());
            var result = user.AddTask(task);

            //ASSERT
            Assert.AreNotEqual(Guid.Empty, result);
        }
        public void AddTask_ThrowException_WhenTaskNameIsEmpty()
        {
            //ARRANGE
            var task = new TaskTO
            {
                Name = string.Empty
            };

            //ACT
            var user = new UserRole(TestHelper.GetMockRepository());

            //ASSERT
            var exMessage = Assert.ThrowsException <Exception>(() => user.AddTask(task));

            Assert.AreEqual("Task should not be created when no name is provided", exMessage.Message);
        }
        public void AddTask_ThrowException_WhenTaskIsArchived()
        {
            //ARRANGE
            var task = new TaskTO
            {
                Name       = $"Test Add Task",
                IsArchived = true
            };
            //ACT
            var user = new UserRole(TestHelper.GetMockRepository());

            //ASSERT
            var exMessage = Assert.ThrowsException <Exception>(() => user.AddTask(task));

            Assert.AreEqual("Task should not be created as archived", exMessage.Message);
        }
        public void AddTask_ThrowException_WhenTaskIdIsNotEmpty()
        {
            //ARRANGE
            var task = new TaskTO
            {
                Id   = Guid.NewGuid(),
                Name = $"Test Add Task"
            };

            //ACT
            var user = new UserRole(TestHelper.GetMockRepository());

            //ASSERT
            var exMessage = Assert.ThrowsException <Exception>(() => user.AddTask(task));

            Assert.AreEqual("Task should not be created from a existing task", exMessage.Message);
        }
 public JsonResult AddTask(TaskTO task)
 {
     return(new JsonResult(userRole.AddTask(task)));
 }