public void GetByName_TagNameIsNull_ThrowsArgumentNullException() { // Arrange ITagService target = new TagService(new Mock<IUnitOfWork>().Object, this._tagValidationMock.Object); // Act and Assert Assert.Throws<ArgumentNullException>(() => target.GetByName(null)); }
public void GetByName_TagNameIsValid_ReturnsTag() { // Arrange Tag testTag = new Tag { TagId = 1, Name = "tag_name" }; // Arrange - mock tagRepository Mock<ITagRepository> tagRepositoryMock = new Mock<ITagRepository>(); tagRepositoryMock.Setup(r => r.GetByName(testTag.Name)) .Returns(testTag); // Arrange - mock unitOfWork Mock<IUnitOfWork> unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.SetupGet(u => u.TagRepository) .Returns(tagRepositoryMock.Object); // Arrange - create target ITagService target = new TagService(unitOfWorkMock.Object, this._tagValidationMock.Object); // Act Tag tag = target.GetByName(testTag.Name); // Assert Assert.AreSame(testTag, tag); }
public void GetByName_NonexistentTagName_ReturnsNull() { // Arrange string tagName = "nonexistent_tag_name"; // Arrange - mock tagRepository Mock<ITagRepository> tagRepositoryMock = new Mock<ITagRepository>(); tagRepositoryMock.Setup(r => r.GetByName(tagName)) .Returns((Tag)null); // Arrange - mock unitOfWork Mock<IUnitOfWork> unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.SetupGet(u => u.TagRepository) .Returns(tagRepositoryMock.Object); // Arrange - create target ITagService target = new TagService(unitOfWorkMock.Object, this._tagValidationMock.Object); // Act Tag tag = target.GetByName(tagName); // Assert Assert.IsNull(tag); }