public async Task GetAsync_TestAsync() { //Arrange var inMemPdsDbContext = HelperExtensions.GetInMemoryPdsDbContext(); var repo = new Repository <DataModels.Contract>(inMemPdsDbContext); var work = new SingleUnitOfWorkForRepositories(inMemPdsDbContext); var contractRepo = new ContractRepository(repo, work, _logger); var expected = new DataModels.Contract { Id = 1, ContractNumber = "Test", ContractVersion = 1, Year = "2021" }; //Act await repo.AddAsync(expected); await work.CommitAsync(); var actual = await contractRepo.GetAsync(expected.Id); //Assert actual.Should().Be(expected); }
public async Task ExampleCreateContractAsync_TestAsync() { //Arrange var inMemPdsDbContext = HelperExtensions.GetInMemoryPdsDbContext(); var repo = new Repository <DataModels.Contract>(inMemPdsDbContext); var work = new SingleUnitOfWorkForRepositories(inMemPdsDbContext); var contractRepo = new ContractRepository(repo, work, _logger); var contract = new DataModels.Contract { Id = 1, ContractNumber = "Test", ContractVersion = 1, Year = "2021" }; //Act var before = await repo.GetByIdAsync(1); await contractRepo.CreateAsync(contract); var after = await repo.GetByIdAsync(1); //Assert before.Should().BeNull(); after.Should().BeEquivalentTo(contract); }
public async Task GetByContractNumberAndVersionAsync_TestAsync() { //Arrange var inMemPdsDbContext = HelperExtensions.GetInMemoryPdsDbContext(); var repo = new Repository <DataModels.Contract>(inMemPdsDbContext); var work = new SingleUnitOfWorkForRepositories(inMemPdsDbContext); var contractRepo = new ContractRepository(repo, work, _logger); const string ContractNumber = "Test"; var expected = new DataModels.Contract { Id = 1, ContractNumber = ContractNumber, ContractVersion = 1, Year = "2021" }; var initialLoad = new List <DataModels.Contract> { new DataModels.Contract { Id = 2, ContractNumber = ContractNumber, ContractVersion = 2 }, expected, new DataModels.Contract { Id = 3, ContractNumber = ContractNumber, ContractVersion = 3 }, }; foreach (var item in initialLoad) { await repo.AddAsync(item); } await work.CommitAsync(); //Act var actual = await contractRepo.GetByContractNumberAndVersionAsync(expected.ContractNumber, expected.ContractVersion); //Assert actual.Should().Be(expected); }