Added tests

This commit is contained in:
2026-05-29 13:49:44 +02:00
parent 0d5a6df27b
commit 51dd877a44
29 changed files with 2212 additions and 6 deletions
@@ -0,0 +1,38 @@
using FluentAssertions;
using Musify.Application.Pagination;
using X.PagedList;
using Xunit;
namespace Musify.Application.Tests.Pagination;
public sealed class PaginatedResponseTests
{
[Fact]
public void FromPagedList_maps_all_fields_for_a_middle_page()
{
var source = Enumerable.Range(1, 25).ToList();
var paged = new PagedList<int>(source, pageNumber: 2, pageSize: 10);
var response = PaginatedResponse<int>.FromPagedList(paged);
response.PageNumber.Should().Be(2);
response.PageSize.Should().Be(10);
response.PageCount.Should().Be(3);
response.TotalItemCount.Should().Be(25);
response.HasNextPage.Should().BeTrue();
response.HasPreviousPage.Should().BeTrue();
response.Items.Should().Equal(11, 12, 13, 14, 15, 16, 17, 18, 19, 20);
}
[Fact]
public void FromPagedList_first_page_has_no_previous_page()
{
var paged = new PagedList<int>(Enumerable.Range(1, 5).ToList(), pageNumber: 1, pageSize: 10);
var response = PaginatedResponse<int>.FromPagedList(paged);
response.HasPreviousPage.Should().BeFalse();
response.HasNextPage.Should().BeFalse();
response.TotalItemCount.Should().Be(5);
}
}