public async Task FetchAatfByReturnId_GivenReturnId_ReturnedListShouldOnlyContainReturnRelatedAatfs() { using (var database = new DatabaseWrapper()) { var helper = new ModelHelper(database.Model); var domainHelper = new DomainHelper(database.WeeeContext); var dataAccess = new FetchAatfDataAccess(database.WeeeContext, quarterWindowFactory); var genericDataAccess = new GenericDataAccess(database.WeeeContext); var aatf = await CreateAatf(database, FacilityType.Aatf, DateTime.Now, 2019); var @return = new EA.Weee.Domain.AatfReturn.Return(aatf.Organisation, new Quarter(2019, QuarterType.Q1), database.WeeeContext.Users.First().Id, FacilityType.Aatf); await genericDataAccess.Add(new ReturnAatf(aatf, @return)); var @return2 = new EA.Weee.Domain.AatfReturn.Return(aatf.Organisation, new Quarter(2019, QuarterType.Q1), database.WeeeContext.Users.First().Id, FacilityType.Aatf); var aatf2 = await CreateAatf(database, FacilityType.Aatf, DateTime.Now, 2019); await genericDataAccess.Add(new ReturnAatf(aatf2, @return2)); var aatfList = await dataAccess.FetchAatfByReturnId(@return.Id); aatfList.Count.Should().Be(1); aatfList.Should().Contain(aatf); aatfList.Should().NotContain(aatf2); } }
public async Task FetchById_GivenAatfId_CorrectAatfShouldBeReturned() { using (var database = new DatabaseWrapper()) { var helper = new ModelHelper(database.Model); var domainHelper = new DomainHelper(database.WeeeContext); var dataAccess = new FetchAatfDataAccess(database.WeeeContext, quarterWindowFactory); var genericDataAccess = new GenericDataAccess(database.WeeeContext); var aatf = await CreateAatf(database, FacilityType.Aatf, DateTime.Now, 2019); var @return = new EA.Weee.Domain.AatfReturn.Return(aatf.Organisation, new Quarter(2019, QuarterType.Q1), database.WeeeContext.Users.First().Id, FacilityType.Aatf); await genericDataAccess.Add(new ReturnAatf(aatf, @return)); var aatf2 = await CreateAatf(database, FacilityType.Aatf, DateTime.Now, 2019); var @return2 = new EA.Weee.Domain.AatfReturn.Return(aatf2.Organisation, new Quarter(2019, QuarterType.Q1), database.WeeeContext.Users.First().Id, FacilityType.Aatf); await genericDataAccess.Add(new ReturnAatf(aatf2, @return2)); var returnedAatf = await dataAccess.FetchById(aatf.Id); returnedAatf.Should().BeEquivalentTo(aatf); } }
public async Task GetFilteredAatfsDataAccess_ByName_ReturnsFilteredAatfsList() { using (var database = new DatabaseWrapper()) { var helper = new ModelHelper(database.Model); var dataAccess = new GetAatfsDataAccess(database.WeeeContext); var genericDataAccess = new GenericDataAccess(database.WeeeContext); var competentAuthorityDataAccess = new CommonDataAccess(database.WeeeContext); var competentAuthority = await competentAuthorityDataAccess.FetchCompetentAuthority(CompetentAuthority.England); var country = await database.WeeeContext.Countries.SingleAsync(c => c.Name == "UK - England"); var aatfContact = new AatfContact("first", "last", "position", "address1", "address2", "town", "county", "postcode", country, "telephone", "email"); var organisation = Organisation.CreatePartnership("Koalas"); var aatfAddress = AddressHelper.GetAatfAddress(database); var aatfSize = AatfSize.Large; var aatf = new Aatf("KoalaBears", competentAuthority, "WEE/AB1289YZ/ATF", AatfStatus.Approved, organisation, aatfAddress, aatfSize, DateTime.Now, aatfContact, FacilityType.Aatf, 2019, database.WeeeContext.LocalAreas.First(), database.WeeeContext.PanAreas.First()); await genericDataAccess.Add <Aatf>(aatf); var filteredListWithAatf = await dataAccess.GetFilteredAatfs(new Core.AatfReturn.AatfFilter { Name = "k" }); var filteredListWithoutAatf = await dataAccess.GetFilteredAatfs(new Core.AatfReturn.AatfFilter { Name = "z" }); filteredListWithAatf.Should().Contain(aatf); filteredListWithoutAatf.Should().NotContain(aatf); } }
public async Task GetAatfsDataAccess_ReturnsAatfsList() { using (var database = new DatabaseWrapper()) { var helper = new ModelHelper(database.Model); var dataAccess = new GetAatfsDataAccess(database.WeeeContext); var genericDataAccess = new GenericDataAccess(database.WeeeContext); var competentAuthorityDataAccess = new CommonDataAccess(database.WeeeContext); var competentAuthority = await competentAuthorityDataAccess.FetchCompetentAuthority(CompetentAuthority.England); var country = await database.WeeeContext.Countries.SingleAsync(c => c.Name == "UK - England"); var aatfContact = new AatfContact("first", "last", "position", "address1", "address2", "town", "county", "postcode", country, "telephone", "email"); var organisation = Organisation.CreatePartnership("Koalas"); var aatfAddress = AddressHelper.GetAatfAddress(database); var aatfSize = AatfSize.Large; var aatf = ObligatedWeeeIntegrationCommon.CreateAatf(database, organisation); await genericDataAccess.Add <Aatf>(aatf); var aatfList = await dataAccess.GetAatfs(); aatfList.Should().Contain(aatf); } }
public async Task FetchAatfByApprovalNumber_GivenApprovalNumber_ReturnedShouldBeAatf(Core.AatfReturn.FacilityType type) { FacilityType facilityType; if (type == Core.AatfReturn.FacilityType.Aatf) { facilityType = FacilityType.Aatf; } else { facilityType = FacilityType.Ae; } using (var database = new DatabaseWrapper()) { ModelHelper helper = new ModelHelper(database.Model); DomainHelper domainHelper = new DomainHelper(database.WeeeContext); FetchAatfDataAccess dataAccess = new FetchAatfDataAccess(database.WeeeContext, quarterWindowFactory); GenericDataAccess genericDataAccess = new GenericDataAccess(database.WeeeContext); string approvalNumber = "test"; Aatf aatf = await CreateAatf(database, facilityType, DateTime.Now, 2019, approvalNumber); await genericDataAccess.Add(aatf); Aatf result = await dataAccess.FetchByApprovalNumber(approvalNumber); Assert.NotNull(result); Assert.Equal(approvalNumber, result.ApprovalNumber); Assert.Equal(facilityType, result.FacilityType); } }
public async Task Add_EntityShouldBeAdded() { using (var database = new DatabaseWrapper()) { var dataAccess = new GenericDataAccess(database.WeeeContext); var organisation = ObligatedWeeeIntegrationCommon.CreateOrganisation(); var aatf = ObligatedWeeeIntegrationCommon.CreateAatf(database, organisation); var result = await dataAccess.Add <Aatf>(aatf); result.Should().NotBeEmpty(); } }
public async Task FetchAatfByApprovalNumber_GivenApprovalNumberThatExistForCY_ReturnedShouldNotBeNull() { using (var database = new DatabaseWrapper()) { ModelHelper helper = new ModelHelper(database.Model); DomainHelper domainHelper = new DomainHelper(database.WeeeContext); FetchAatfDataAccess dataAccess = new FetchAatfDataAccess(database.WeeeContext, quarterWindowFactory); GenericDataAccess genericDataAccess = new GenericDataAccess(database.WeeeContext); string approvalNumber = "test"; Aatf aatf = await CreateAatf(database, FacilityType.Aatf, DateTime.Now, 2019, approvalNumber); await genericDataAccess.Add(aatf); Aatf result = await dataAccess.FetchByApprovalNumber(approvalNumber, 2019); Assert.NotNull(result); } }