public void Add_GivenNewItem_ShouldAddToList() { //---------------Set up test pack------------------- var newItem = new ItemDto() { Id = 4, Description = "Description four", ItemName = "AnotherItemName" }; var itemsList = new List<ItemDto>(); var context = Substitute.For<ILendingLibraryContext>(); SetContextWithDtos(context,itemsList); var repo = new ItemRepository(context); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- repo.Add(newItem); //var result = repo.GetItemList(); var result = context.Items.Where(x => x.Id == newItem.Id); Assert.IsNotNull(result); }
public void Add_GivenNullItem_ShouldNotAddToListAndThrow() { //---------------Set up test pack------------------- var itemList = new List<ItemDto> { null }; var context = Substitute.For<ILendingLibraryContext>(); SetContextWithDtos(context, itemList); var repo = new ItemRepository(context); const string message = "Null item cannot be added"; //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- var result = Assert.Throws<ApplicationException>(() => repo.Add((ItemDto) null)); //---------------Test Result ----------------------- Assert.AreEqual(message, result.Message); }