public async void DeleteOrganisation_GivenOrganisationWithOrganisationUsers_OrganisationAndOrganisationUsersShouldBeRemoved() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); databaseWrapper.WeeeContext.Organisations.Add(organisation); await databaseWrapper.WeeeContext.SaveChangesAsync(); databaseWrapper.WeeeContext.OrganisationUsers.Add( new Domain.Organisation.OrganisationUser(Guid.Parse(databaseWrapper.Model.AspNetUsers.First().Id), organisation.Id, UserStatus.Active)); await databaseWrapper.WeeeContext.SaveChangesAsync(); databaseWrapper.WeeeContext.Organisations.Where(o => o.Id == organisation.Id).Should().NotBeEmpty(); databaseWrapper.WeeeContext.OrganisationUsers.Where(o => o.OrganisationId == organisation.Id).Should().NotBeEmpty(); await organisationDataAccess.Delete(organisation.Id); databaseWrapper.WeeeContext.Organisations.Where(o => o.Id == organisation.Id).Should().BeEmpty(); databaseWrapper.WeeeContext.OrganisationUsers.Where(o => o.Id == organisation.Id).Should().BeEmpty(); } }
public AdminService() { this.adminDataAccess = new AdminDataAccess(); this.organisationDataAccess = new OrganisationDataAccess(); this.loginDataAcces = new LoginDataAcces(); this.userDataAccess = new UserDataAccess(); }
public async void DeleteOrganisation_GivenInvalidOrganisation_ArgumentExceptionExpected() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var action = await Xunit.Record.ExceptionAsync(() => organisationDataAccess.Delete(Guid.Empty)); action.Should().BeOfType <ArgumentException>(); } }
public async void HasScheme_GivenOrganisationDoesNotHaveScheme_FalseShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); databaseWrapper.WeeeContext.Organisations.Add(organisation); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.HasScheme(organisation.Id); result.Should().BeFalse(); } }
public async void HasMultipleFacility_GivenOrganisationDoesFacilityTypeDoesNotMatch_FalseShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); databaseWrapper.WeeeContext.Organisations.Add(organisation); databaseWrapper.WeeeContext.Aatfs.Add(ObligatedWeeeIntegrationCommon.CreateAe(databaseWrapper, @organisation)); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.HasMultipleOfEntityFacility(organisation.Id, FacilityType.Aatf); result.Should().BeFalse(); } }
public async Task GetReturnsByComplianceYear_GivenNonMatchingParameters_EmptyShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); var @return = ObligatedWeeeIntegrationCommon.CreateReturn(organisation, databaseWrapper.Model.AspNetUsers.First().Id); databaseWrapper.WeeeContext.Returns.Add(@return); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.GetReturnsByComplianceYear(Guid.NewGuid(), 2020, FacilityType.Ae); result.Should().BeEmpty(); } }
public async void HasReturns_GivenOrganisationDoesNotHaveReturnsForComplianceYear_FalseShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); var @return = ObligatedWeeeIntegrationCommon.CreateReturn(organisation, databaseWrapper.Model.AspNetUsers.First().Id, FacilityType.Aatf, 2020, QuarterType.Q1); databaseWrapper.WeeeContext.Returns.Add(@return); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.HasReturns(organisation.Id, 2019); result.Should().BeFalse(); } }
public async void HasFacility_GivenOrganisationHasAe_TrueShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); var ae = ObligatedWeeeIntegrationCommon.CreateAe(databaseWrapper, organisation); databaseWrapper.WeeeContext.Aatfs.Add(ae); databaseWrapper.WeeeContext.Organisations.Add(organisation); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.HasFacility(organisation.Id, FacilityType.Ae); result.Should().BeTrue(); } }
public async Task GetReturnsByComplianceYear_GivenNonMatchingFacilityType_CorrectReturnsShouldBeReturned() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); var @return1 = ObligatedWeeeIntegrationCommon.CreateReturn(organisation, databaseWrapper.Model.AspNetUsers.First().Id); var @return2 = ObligatedWeeeIntegrationCommon.CreateReturn(organisation, databaseWrapper.Model.AspNetUsers.First().Id, FacilityType.Ae, 2019, QuarterType.Q1); databaseWrapper.WeeeContext.Returns.Add(@return1); databaseWrapper.WeeeContext.Returns.Add(@return2); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.GetReturnsByComplianceYear(organisation.Id, 2019, FacilityType.Aatf); result.Should().Contain(@return1); result.Should().NotContain(@return2); } }
public async void HasActiveUsers_GivenOrganisationWithInactiveUser_FalseShouldBeReturned(UserStatus status) { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); databaseWrapper.WeeeContext.Organisations.Add(organisation); await databaseWrapper.WeeeContext.SaveChangesAsync(); var organisationUser = new Domain.Organisation.OrganisationUser(Guid.Parse(databaseWrapper.Model.AspNetUsers.First().Id), organisation.Id, status); databaseWrapper.WeeeContext.OrganisationUsers.Add(organisationUser); await databaseWrapper.WeeeContext.SaveChangesAsync(); var result = await organisationDataAccess.HasActiveUsers(organisation.Id); result.Should().BeFalse(); } }
public async void DeleteOrganisation_GivenOrganisation_OrganisationShouldBeRemoved() { using (var databaseWrapper = new DatabaseWrapper()) { var organisationDataAccess = new OrganisationDataAccess(databaseWrapper.WeeeContext); var organisation = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); var organisationDontRemove = Domain.Organisation.Organisation.CreateSoleTrader(fixture.Create <string>()); databaseWrapper.WeeeContext.Organisations.Add(organisation); databaseWrapper.WeeeContext.Organisations.Add(organisationDontRemove); await databaseWrapper.WeeeContext.SaveChangesAsync(); databaseWrapper.WeeeContext.Organisations.Where(o => o.Id == organisation.Id).Should().NotBeEmpty(); await organisationDataAccess.Delete(organisation.Id); databaseWrapper.WeeeContext.Organisations.Where(o => o.Id == organisation.Id).Should().BeEmpty(); databaseWrapper.WeeeContext.Organisations.Where(o => o.Id == organisationDontRemove.Id).Should().NotBeEmpty(); } }
//UserDataAccess userDataAccess; public OrganisationService() { this.organisationDataAccess = new OrganisationDataAccess(); //this.userDataAccess = new UserDataAccess(); }