public void Invoke_DoesNotReturnNull() { // Given var sut = new GetPostCommand(); // When var result = sut.Invoke(); // Then Assert.NotNull(result); }
public void Invoke_EagerLoadsAssociatedTags( Mock<Common.IServiceLocator> serviceLocator, Mock<IRepository<Post>> repository) { // Given serviceLocator.Setup(s => s.GetInstance<IRepository<Post>>()).Returns(repository.Object); var sut = new GetPostCommand(); ServiceLocator.SetCurrentInstance(serviceLocator.Object); // When sut.Invoke<Post>().Any(); // Then repository.Verify(m => m.Find("Tags")); }
public void Invoke_WithException_ThrowsSameException( Mock<Common.IServiceLocator> serviceLocator, Mock<IRepository<Post>> repository, InvalidOperationException exception) { // Given serviceLocator.Setup(s => s.GetInstance<IRepository<Post>>()).Returns(repository.Object); repository.Setup(s => s.Find(It.IsAny<string[]>())).Throws(exception); var sut = new GetPostCommand(); ServiceLocator.SetCurrentInstance(serviceLocator.Object); // Then Assert.Throws(exception.GetType(), () => sut.Invoke<Post>().Any()); }
public void Invoke_WithSomePosts_ReturnsSameNumberOfPosts( Mock<Common.IServiceLocator> serviceLocator, Mock<IRepository<Post>> repository, Post[] posts) { // Given serviceLocator.Setup(s => s.GetInstance<IRepository<Post>>()).Returns(repository.Object); repository.Setup(s => s.Find(It.IsAny<string[]>())).Returns(posts); var sut = new GetPostCommand(); ServiceLocator.SetCurrentInstance(serviceLocator.Object); // When var result = sut.Invoke<Post>(); // Then Assert.Equal(posts.Count(), result.Count()); }
public void Invoke_WithNoPosts_ReturnsEmptySequenceOfPost( Mock<Common.IServiceLocator> serviceLocator, Mock<IRepository<Post>> repository) { // Given serviceLocator.Setup(s => s.GetInstance<IRepository<Post>>()).Returns(repository.Object); var sut = new GetPostCommand(); ServiceLocator.SetCurrentInstance(serviceLocator.Object); // When var result = sut.Invoke<Post>(); // Then Assert.False(result.Any()); }