public async Task Create_ThrowsExeption_DuplicateName() { ITodoItemProvider provider = new TodoItemProvider(mockContext.Object); var item = new TodoItemDAO { Id = 22, Name = "TestItem1" }; await Assert.ThrowsAsync <ArgumentException>(() => provider.Create(item)); }
public async Task Create_ThrowsExeption_PriorityOutOf1to5Range() { ITodoItemProvider provider = new TodoItemProvider(mockContext.Object); var item = new TodoItemDAO { Id = 22, Priority = 10 }; await Assert.ThrowsAsync <ArgumentException>(() => provider.Create(item)); }
public async Task Create_ThrowsExeption_InvalidDeadlineDate() { ITodoItemProvider provider = new TodoItemProvider(mockContext.Object); var item = new TodoItemDAO { Id = 22, Name = "TestItem1", DeadLineDate = DateTime.UtcNow.Subtract(new TimeSpan(1, 0, 0)) }; await Assert.ThrowsAsync <ArgumentException>(() => provider.Create(item)); }
public async Task Create_Returns_createdIdAndAddsTodoItem() { ITodoItemProvider provider = new TodoItemProvider(mockContext.Object); var item = new TodoItemDAO { Id = 22, Name = "TestTodoItem" }; var addedItemId = await provider.Create(item); mockSet.Verify(set => set.Add(It.IsAny <TodoItemDAO>()), Times.Once); mockContext.Verify(context => context.SaveChangesAsync(new CancellationToken()), Times.Once); Assert.Equal(item.Id, addedItemId); }