using FluentAssertions; namespace WebApi.Test.Repository; public class BudgetArchiveRepositoryTest : RepositoryTestBase { private readonly IBudgetArchiveRepository _repository; public BudgetArchiveRepositoryTest() { _repository = new BudgetArchiveRepository(FreeSql); } [Fact] public async Task GetArchiveAsync_获取单条归档_Test() { await _repository.AddAsync(new BudgetArchive { Year = 2023, Month = 1 }); await _repository.AddAsync(new BudgetArchive { Year = 2023, Month = 2 }); var archive = await _repository.GetArchiveAsync(2023, 1); archive.Should().NotBeNull(); archive!.Month.Should().Be(1); } [Fact] public async Task GetArchivesByYearAsync_按年获取_Test() { await _repository.AddAsync(new BudgetArchive { Year = 2023, Month = 1 }); await _repository.AddAsync(new BudgetArchive { Year = 2023, Month = 2 }); await _repository.AddAsync(new BudgetArchive { Year = 2022, Month = 12 }); var list = await _repository.GetArchivesByYearAsync(2023); list.Should().HaveCount(2); } }