public async void HasMemberSubmissions_ForOganisationWithNoAssociatedScheme_ReturnsFalse() { using (DatabaseWrapper database = new DatabaseWrapper()) { ModelHelper helper = new ModelHelper(database.Model); // Arrange var scheme1 = helper.CreateScheme(); var upload1 = helper.CreateMemberUpload(scheme1); upload1.IsSubmitted = true; upload1.ComplianceYear = 2016; var upload2 = helper.CreateMemberUpload(scheme1); upload2.IsSubmitted = true; upload2.ComplianceYear = 2016; var organisation = helper.CreateOrganisation(); database.Model.SaveChanges(); var dataAccess = new GetOrganisationOverviewDataAccess(database.WeeeContext); // Act var result = await dataAccess.HasMemberSubmissions(organisation.Id); // Assert Assert.False(result); } }
public async Task FetchSchemeByOrganisationIdAsync_GetsSchemeForMatchingOrganisationId() { using (DatabaseWrapper database = new DatabaseWrapper()) { // Arrange ModelHelper helper = new ModelHelper(database.Model); var organisation1 = helper.CreateOrganisation(); helper.CreateScheme(organisation1); var organisation2 = helper.CreateOrganisation(); var scheme2 = helper.CreateScheme(organisation2); database.Model.SaveChanges(); var dataAccess = new FetchDataReturnComplianceYearsForSchemeDataAccess(database.WeeeContext); // Act var result = await dataAccess.FetchSchemeByOrganisationIdAsync(organisation2.Id); // Assert Assert.Equal(scheme2.Id, result.Id); } }
public async void Fetch_TwoUploadsForTheSameComplianceYear_OnlyReturnsTheYearOnce() { using (var database = new DatabaseWrapper()) { const int complianceYear = 2005; // Arrange var modelHelper = new ModelHelper(database.Model); var organisation = modelHelper.CreateOrganisation(); await database.Model.SaveChangesAsync(); var scheme = modelHelper.CreateScheme(organisation); await database.Model.SaveChangesAsync(); var firstDataReturn = modelHelper.CreateDataReturn(scheme, complianceYear, (int)QuarterType.Q1); await database.Model.SaveChangesAsync(); var firstDataReturnVersion = modelHelper.CreateDataReturnVersion(scheme, complianceYear, (int)QuarterType.Q1, true, firstDataReturn); modelHelper.CreateDataReturnUpload(scheme, firstDataReturnVersion); await database.Model.SaveChangesAsync(); var secondDataReturn = modelHelper.CreateDataReturn(scheme, complianceYear, (int)QuarterType.Q2); await database.Model.SaveChangesAsync(); var secondDataReturnVersion = modelHelper.CreateDataReturnVersion(scheme, complianceYear, (int)QuarterType.Q2, true, secondDataReturn); modelHelper.CreateDataReturnUpload(scheme, secondDataReturnVersion); await database.Model.SaveChangesAsync(); // Act var dataAccess = new FetchDataReturnComplianceYearsForSchemeDataAccess(database.WeeeContext); var result = await dataAccess.GetDataReturnComplianceYearsForScheme(scheme.Id); // Assert Assert.Single(result.Where(y => y == complianceYear)); } }
public async Task FetchSchemeAsync_ReturnsSchemeWithSpecifiedOrganisationId() { using (DatabaseWrapper database = new DatabaseWrapper()) { // Arrange var modelHelper = new ModelHelper(database.Model); var organisationId = new Guid("C826DCE8-78EB-4BE4-B419-4DE73D1AD181"); var organisation = modelHelper.CreateOrganisation(); organisation.Id = organisationId; modelHelper.CreateScheme(organisation); database.Model.SaveChanges(); OrganisationDetailsDataAccess dataAccess = new OrganisationDetailsDataAccess(database.WeeeContext); // Act Domain.Scheme.Scheme result = await dataAccess.FetchSchemeAsync(organisationId); // Assert Assert.NotNull(result); Assert.Equal(organisationId, result.OrganisationId); } }
public async Task HasDataReturnSubmissions_ForOganisationWithNoAssociatedScheme_ReturnsFalse() { using (DatabaseWrapper database = new DatabaseWrapper()) { ModelHelper helper = new ModelHelper(database.Model); // Arrange var organisation = helper.CreateOrganisation(); database.Model.SaveChanges(); var dataAccess = new GetOrganisationOverviewDataAccess(database.WeeeContext); // Act var result = await dataAccess.HasDataReturnSubmissions(organisation.Id); // Assert Assert.False(result); } }
public async void HasMultipleManageableOrganisationUsers_ForOrganisationWithMoreThanOneUser_AllRejectedStatuses_ReturnsFalse() { using (DatabaseWrapper database = new DatabaseWrapper()) { ModelHelper helper = new ModelHelper(database.Model); // Arrange var organisation = helper.CreateOrganisation(); // Rejected users helper.CreateOrganisationUser(organisation, "Test user1", 3); helper.CreateOrganisationUser(organisation, "Test user2", 3); database.Model.SaveChanges(); var dataAccess = new GetOrganisationOverviewDataAccess(database.WeeeContext); // Act var result = await dataAccess.HasMultipleManageableOrganisationUsers(organisation.Id); // Assert Assert.False(result); } }