예제 #1
0
        public async Task CreateTodoAsync_NonExistingUser_UserNotFoundException()
        {
            // Arrange
            const string userId = "c54a85fa-ca7c-49d7-b830-6b07ea49cfa8";
            var          model  = new CreateTodoViewModel
            {
                Description = "Buy a pie from Frank Pepe's",
                Due         = DateTime.Now
            };

            // Act
            // Assert
            await Assert.ThrowsAsync <UserNotFoundException>(() => _service.CreateTodoAsync(model, userId));
        }
        public async void CreateTodo_Throws_ArgumentNullException_When_TodoModel_IsNull()
        {
            // Arrange
            var todoRepository = Substitute.For <ITodoRepository>();
            var todoService    = new TodoService(todoRepository);

            // Act & Assert
            await Assert.ThrowsAsync <ArgumentNullException>(() => todoService.CreateTodoAsync(null));
        }
예제 #3
0
        public async Task AddTodoAsync()
        {
            var fakeUserId = Guid.NewGuid();
            var todo       = new Todo {
                Title = "测试标题", OffTime = DateTime.Now
            };

            todo.AddModel(fakeUserId);
            _mockTodoRepository.Setup(x => x.AddAsync(todo))
            .ReturnsAsync(true);

            var todoService = new TodoService(_mockTodoRepository.Object, null, null);
            var result      = await todoService.CreateTodoAsync(todo);

            Assert.True(result);
        }