public void ShouldNotDeleteExistingOrganisationStandardAssociation() { List <string> errors = new List <string>(); var prodresults = prodsut.GetAssessmentOrganisationsData(); var prodAssesmentOrgs = prodresults.StandardOrganisationsData.Select(x => new List <string> { x.EpaOrganisationIdentifier, x.StandardCode }).ToList(); var localAssesmentOrgs = results.StandardOrganisationsData.Select(x => new List <string> { x.EpaOrganisationIdentifier, x.StandardCode }).ToList(); var removedOrganisationsAssociationWithStandards = prodAssesmentOrgs.Select(x => $"{x[0]}-{x[1]}").ToList() .Except(localAssesmentOrgs.Select(y => $"{y[0]}-{y[1]}").ToList()) .Select(x => new List <string> { x.Split('-')[0], x.Split('-')[1] }) .ToList(); foreach (var removed in removedOrganisationsAssociationWithStandards) { var effectiveFrom = prodresults.StandardOrganisationsData.Single(x => x.EpaOrganisationIdentifier == removed[0] && x.StandardCode == removed[1]).EffectiveFrom; var epaorganisation = results.Organisations.SingleOrDefault(x => x.EpaOrganisationIdentifier == removed[0]); if (epaorganisation != null && effectiveFrom <= DateTime.Now) { errors.Add($"'{epaorganisation.EpaOrganisation}({removed[0]})' - Standard Code {removed[1]} since {effectiveFrom.ToString("dd/MM/yyyy")}"); } } Assert.AreEqual(0, errors.Count, $"Following details are removed from 'Register - Standards' worksheet {Environment.NewLine}{string.Join(Environment.NewLine, errors)}"); }
public AssessmentOrganisationsDTO GetAssessmentOrganisationsData() { _log.Debug("Starting to get Assessment Organisations data"); var timing = ExecutionTimer.GetTiming(() => _assessmentOrgsData.GetAssessmentOrganisationsData()); _log.Debug("MetaDataHelper.GetAssessmentOrganisationsData", new TimingLogEntry { ElaspedMilliseconds = timing.ElaspedMilliseconds }); return(timing.Result); }