Get latest posts
This commit is contained in:
parent
1837f126a3
commit
b4281bea62
2 changed files with 69 additions and 3 deletions
|
@ -58,5 +58,55 @@ namespace Robware.Api.Blog.Tests {
|
|||
var controller = new BlogController(logger, repo);
|
||||
(await controller.Get("1")).Result.Should().BeOfType<NotFoundObjectResult>();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetLatestPosts_WithCountOfZero_ReturnsCollectionOfTenBlogPosts() {
|
||||
var logger = Substitute.For<ILogger<BlogController>>();
|
||||
var repo = Substitute.For<IBlogRepository>();
|
||||
|
||||
repo.GetLatestPostsAsync(10).Returns(new BlogPost[10]);
|
||||
|
||||
var expectation = new BlogPost[10];
|
||||
|
||||
var controller = new BlogController(logger, repo);
|
||||
(await controller.GetLatestPosts()).Value.Should().BeEquivalentTo(expectation);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetLatestPosts_WithCountOf1_ReturnsCollectionOf1BlogPosts() {
|
||||
var logger = Substitute.For<ILogger<BlogController>>();
|
||||
var repo = Substitute.For<IBlogRepository>();
|
||||
|
||||
repo.GetLatestPostsAsync(1).Returns(new BlogPost[1]);
|
||||
|
||||
var expectation = new BlogPost[1];
|
||||
|
||||
var controller = new BlogController(logger, repo);
|
||||
(await controller.GetLatestPosts(1)).Value.Should().BeEquivalentTo(expectation);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetLatestPosts_WithCountOf1AndOffsetOf1_ReturnsCollectionOf1BlogPosts() {
|
||||
var logger = Substitute.For<ILogger<BlogController>>();
|
||||
var repo = Substitute.For<IBlogRepository>();
|
||||
|
||||
repo.GetLatestPostsAsync(1, 1).Returns(new BlogPost[1]);
|
||||
|
||||
var expectation = new BlogPost[1];
|
||||
|
||||
var controller = new BlogController(logger, repo);
|
||||
(await controller.GetLatestPosts(1, 1)).Value.Should().BeEquivalentTo(expectation);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetLatestPosts_WithCountOf1AndOffsetOfOutOfRange_ReturnsCollectionOf1BlogPosts() {
|
||||
var logger = Substitute.For<ILogger<BlogController>>();
|
||||
var repo = Substitute.For<IBlogRepository>();
|
||||
|
||||
repo.GetLatestPostsAsync(1, 1000).Throws(new ItemNotFoundException("", null));
|
||||
|
||||
var controller = new BlogController(logger, repo);
|
||||
(await controller.GetLatestPosts(1, 1000)).Result.Should().BeOfType<NotFoundObjectResult>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue